Algorithmic trading systems utilizes highly complex statistical models and mathematical calculations in setting and placing orders in the financial market. Institutional investors use algorithmic trading due to the large development and research costs. Institutional investors are known to place very large orders in the market.
Everyone in the market knows that when there is a large order, it can move the markets. So other traders and systems keep an eye on the order book, so they can front-run. Front running is simply running ahead of the large bulk order. This will ensure that you are able to ride the large movement in the market.
Fulfilling the large volume of orders can be a logistical nightmare, and it is not uncommon to see that very large orders may not all be fulfilled at the same price.
Example of how algo trading works
For instance, if an institutional market player wants to acquire 300,000,000 units of a particular stock at $5 per share, there may not be enough sellers to handle the large volume all at once.
So you may see a situation where the broker will handle 5,000,000 units at $2 per share, then 100,000,000 units at $5.29 per share, another 50,000,000 units at $5.50, and the rest at between $5.70 and $7 per share.
Obviously flooding the market with such a large acquisition request will drive prices up. This leads to the market moving further away from the expected purchase price. The bigger the order volume sent to the market, the greater is the cost of acquisition.
This leads to an overall increase in the cost of acquisition of the stock. And given the large volume of the trade, the extra cost maybe equivalent to the salaries of 4 staff in the institutional firm acquiring the stock. It is prudent business sense to cut costs from wherever they can be chucked off from.
And so the situation painted above is not a desirable one for the institutional market player.
Avoiding bulk orders
Different alternatives are used to avoid such a situation and to raise the odds of the order being filled.
This is to ensure that prices are as close to the market price, as much as possible. The firm decides to use an algorithmic trading technique in which the large order is split into smaller components. These small orders are then and spread out over several brokerages.
The computer program that will execute the entry algorithm can then survey the market. It will then choose the best time to execute the entry for all the component parts of the purchase volume. Finally the algorithm will synchronize the order without leading to a demand/volume-related increase in the price of the stock in question.
The final result is that the acquisition costs are lower for the firm. Such forms of algorithmic trading is the “buy side” trade. Institutional players such banks, pension fund operators and hedge fund managers are on the buy-side.
“Sell side” traders such as market makers use algorithmic trading to set prices.
They also use this to manage order executions for the large volume of order requests that pass through their system.
Algorithmic Trading Systems and HFT
Another form of algorithmic trading is the so-called “high-frequency trade” (read more on high frequency trading). Algo trading or robo trading are other similar terms that mean the same thing.
An example of where this form of trading is used is in the fast-paced currency markets. This is where trading market events such as news releases involves being able to get the news and interpret the numbers earlier than other market participants. This is done so that entries can be made in order to benefit from the news spikes.
The only way to do this successfully is by the use of ultra-low latency news feeds. The algorithmic systems use code that reads news feeds in an electronic format. After this, the algo bots can act on them before other market participants can do same.
Algorithmic Trading Systems and their Development
The first step in the development of algorithmic trading systems is to come up with the “algorithm” itself.
Statisticians or mathematicians, or quants are responsible for devising the algorithm. Such strategies may be based on arbitrage, mean reversion, or maybe just a simple trend following or scalping strategy.
An example of a trading strategy is the development of the Gartley patterns. H.M. Gartley identified these patterns quite early on by observing past price behavior. Gartley used repetitive price levels similar to the Fibonacci ratios/numbers. Finally, he came up with a pattern of trading the stock markets.
The next stage is to deliver the strategy to a computer programmer. A developer starts coding using C# or other programming languages such as Lua or MQL. These days, Python is also quite popular and it is a software among others which gives life to the algorithm.
After thorough testing, the program is ready for use in the market. The program runs in simulation mode, under different market conditions.
Institutional traders usually trade in an ECN environment. Therefore individual traders wanting to use algorithmic trading should only use programming languages supported by non-dealing desk forex brokers.
When giving life to your strategy, only use programmers who are familiar with ECN algorithmic programming languages. When you combine this with ultra-low latency software that can feed you with market data way ahead of the pack, you can then start to profit from financial trading the way Goldman Sachs was able to pull in billions of dollars in 2008 when the markets began to collapse.