It’s the latency stupid! David Cheriton once said that if you have a network link with low bandwidth then it’s an easy matter of putting several in parallel to make a combined link with higher bandwidth, but if you have a network link with bad latency then no amount of money can turn any number of them into a link with good latency.
Let us have a look at an example to break down the technical jargon of latency. Boeing 747 carries 500 passengers whereas Boeing 737 carries 150. Would you say 747 is 3 times faster than 737? The Boeing 747 is 3 times bigger than the 737, not faster since both travel at 500 miles per hour. Latency plays a vital role in algorithmic trading where speed is the key entity in executing a trade. A brief comparison between traditional system architecture and automated system architecture.
A traditional trading system would consist of a system to read data, a storehouse of historical data, a tool to analyze historical data, a system to submit trading inputs and a system to route orders to the exchange. Exchange sends the tick by tick data. The server is mostly used for data storage, a synonym to an individual’s desktop. The market data is retrieved from server to the trader’s tool where actionable intelligence (buy, sell, no trade) takes place. The actions are then passed via order manager to the exchange. These actions are sequential. The trader’s tool can only process and generate orders once it receives market data.
The advent of Direct Market Access known as DMA has brought drastic changes in the architecture of a trading system.
In a traditional system the data flow would occur from the broker to the trader’s tool. This is bettered in the automated trading system via DMA. This significantly reduces the time needed for data flow from the exchange to the trading tool. Even in the automated trading system these actions of data flow and trade generation remain sequential. Latency can be reduced between the trading tool (event occurrence) and order generation can be reduced to achieve better efficiency. This can be done by reducing the latency to the order of milliseconds and lower. Risk management has to be implemented in real-time without human intervention.
Why is low latency that important in the first place? To answer this question, think of trading as a running race. Faster the speed than your competitors, better your chances of winning. The objective in trading is trade execution at a competitive price. It is desirable to improve latency to stop getting picked by competitors. Correct technology has to be implemented to reduce latency as low latency systems cost a lot. Hence a right balance between low latency investment and ROI on low latency has to be achieved.
A snapshot below provides latencies for different strategies.
Latency can be represented in an equation form.
Here P is propagation time sending the bits along the wire, N is network packet processing- routing, switching and protection, S is serialization time- pulling the bits on/off the wire, I interrupt handling time- receiving the packet on the server, API is application Processing Time.
As discussed before, decisive actions have to be taken to balance sophistication levels to reduce latency and optimizing investment decisions for the same.
To summarize low latency is an important factor in algorithmic trading. Low latency leads to competitive prices for trade execution.