Algorithmic trading is the use of very complex computer programs to trade financial instruments (e.g., stocks, Bonds, etc.) in electronic markets. This is useful only in markets that offer some sort of electronic access.
Although many tend to think that algorithmic trading came about as a result of Wall Street trying to cut head count (and the associated costs) on their trading floors, this is only partially true. The real reason is more complex, involving a changing market structure combined with a focus on transaction cost analysis.
Beginning in 2000, the US markets changed their minimum tick size from 1/16th of a dollar to a penny. Therefore, instead of having a stock quoted as $5 3/4, you would have it quoted as $5.75. The effects of this were profound and far-reaching. First, this virtually eliminated the minimum spread that a NASDAQ dealer could charge customers in return for committing capital. This drove many dealers out of business, and forced the rest to incorporate an agency model (they referred to it as “fee-based”) on stocks with narrow spreads. The second repercussion of decimalization was that the size of bids and offers shrank considerably. This is because it now only cost 1 penny to step in front of an informed order, whereas before it cost 1/32 of a dollar (about 3.125 cents). This meant that people had to hide their intentions by trading in smaller increments over time. To trade in these smaller increments means that you had to have a computer handle the order for you (since there were now so many small pieces to manage). Thus, algorithmic trading went mainstream.
Algorithmic Trading is also called Mechanical Trading. It tries to avoid emotional decision making. Market Signals from Tradingstocks.net is one example that uses mechanical trading.
As algorithmic trading went mainstream, a variety of automated trading strategies were proposed. The goal of some of these strategies is to exploit micro-trends in the price movements to make profit. Others simply have the goal to optimize execution cost. A typical example problem is optimizing large institutional trades (e.g. how to break up a large volume of shares to sell over time, such that the price obtained will not be greatly affected). Some of these strategies are as follows (please be aware that these descriptions are non-technical and only meant as an introduction):
Trend following strategies
Trend following is a strategy which tries to identify a trend in the price for a certain security, trade with that trend, and exit when the trend appears to be failing. This may be achieved by the use of a range of different tools such as trend lines, regression, and moving averages.
Contrarian (reverse) strategies
Contrarian strategies involve entering a position against the current trend, having determined through indirect means that the trend may be going to reverse, or at least undergo a correction. The evidence for a contrarian trade may include divergence of a range of momentum indicators, which is associated with a weakening trend. Overbought/oversold indications from a range of indicators may also support a contrarian trade.
The most common benchmarks are VWAP and recently, decision price or arrival price (Implementation shortfall). These strategies generally break up the order into smaller pieces, ideally reducing market impact whilst achieving the desired benchmark as they trade. Which benchmark you should use largely depends on how big the order is and what your trading goals are. VWAP is still the global favorite but implementation shortfall is gaining ground rapidly, as it generally provides a better match for the decision-making process.
Order book-based strategies
This is a relatively new class of trading strategies. They began to be developed after full order book information was made available on the NASDAQ market.
As the field progressed, increasingly complex strategies have been proposed (either by combining the above strategies or completely different). Some of these are based on methods developed in fields such as: econometrics, financial mathematics, stochastics and even artificial intelligence and multi-agent systems.