Electronic trading in the last decade has laid the foundation for increased use of technology in the financial markets. If a trader’s mind can be coded into an algorithm (step by step procedure used for calculations and decision making), we can automate a lot of what the trader does. And using an algorithm , the trading can be more disciplined, faster and can process lots of complex data. Algorithmic trading means an algorithm decides when to buy or sell a financial security at which price, and how will the order be executed and risk managed. This helps replace mundane tasks a trader was doing, and even leading to some complex data processing that an algorithm (with the use of computing power) can do much better than a human trader. There may still be a trader and / or risk manager looking after the net positions, orders in the market, profit and loss resulting from the algorithm in the fast moving financial markets.
Algorithmic trading is also termed as black box trading (in case the logic of the algorithm is not transparent to the user), or high frequency trading (in which the trading is done typically in smaller quantities but very frequently, leading to 1000s of orders per minute being generated by the algorithm and smaller profits per trade being accumulated to larger profits over a period of time), or low latency trading (in which the access to the market prices, and orders / executions with the exchange is minimal (in the order of nano seconds or micro seconds), etc.
Algorithmic trading may be divided into various different categories:
Quant based algorithms
These algorithms use quantitative models to generate profits. Example a pair trading algorithm may buy and / or sell 2 financial security when the quantitative model signals the potential for a profit generation in the trade. This maybe induced by the correlation (how the 2 financial securities’ price moves relative to each other)
These algorithms are used to execute larger orders in a certain fashion so as to minimize the market impact and achieve some benchmark. Example, a user may want to slice a large order into smaller child orders at regular intervals to minimize the market impact (so the market price does not move against the larger order due to movement in demand and supply. example, if you are trying to buy 1000 Microsoft shares, you will get them at the prevailing market price; but if you are trying to buy 100,000 Microsoft shares and you send that order as it is into the market, the price of Microsoft share will go up dramatically as the demand you create by sending this large buy order will skew the sell price of others, so to minimize the impact you may chose to send 1000 share orders every 5 mins into the market ). This is called Time Weighted Average Price (TWAP)
Smart Order Routing
If you can trade the same financial security in more than 1 exchange, then you may chose to split your order into multiple orders routed on the multiple exchanges achieving the most optimal execution, this concept is called smart order routing.
These algorithms try to buy 1 or more financial security at possibly different exchanges and / or different prices and / or different times to ensure they make profit. These algorithms typically need to access the exchanges in a very low latency manner to ensure the arbitrage opportunities are grabbed.
This is the process of sending both buy and sell orders in financial securities at same time into an exchange (also termed as providing liquidity). The market maker will need to move its buy and sell prices according to changes in the various market factors, depending upon whether and how he is able to hedge its position (i.e. if a client buys from the market maker, then the market maker may have to sell to someone else in the same or different market to hedge it’s position), etc. In some cases the exchanges incentivize the market makers by paying to create liquidity in certain or all financial securities. This helps exchange gets more orders from other clients and can lead to a growth in exchange trading volumes.