Sunday, 19 April 2015

What is Ultra Low Latency


There is no single answer, and it changes over time. In 1997  a single trade in 1second was normal. 1 trade in 100ms was fast.

Around seven years ago low latency was considered sub millisecond. At that time I was asked if I could design and build a trading system that was the fastest on the street which was 500 microseconds. I said yes. When asked why I would succeed when others had failed, I replied that my background in compilers and real time mixed with IB experience meant I knew what I was doing and thus HotRod was born.

HotRod was a huge success but when asked if I could get it down to 20 micros for FX I said it would require a complete rewrite. You cant take a 10millisecond system and profile / change it to 100 microseconds. And you cant take a 100 microsecond system and profile/improve down to under 10 micros which is what I currently consider ultra low latency. I quit my job and started to write SubMicrotrading framework from scratch. Every line of code has been written with latency in mind.

Low latency timings cannot be considered in isolation, you need to know the scoping of the statistics, what is the use case (eg wire to wire tick to trade) what is the throughput ?  What is the min/max/ave event rate etc.





No comments:

Post a Comment