How easy is to make money as HFT startup?

Short story, is not easy at all. Recently I’ve been approached for many startups looking for setup their own HFT shop because they’ve heard how profitable this business is. And they are right! I know for a fact that serious firms are making fortunes (look what Virtu Financial or Citadel are doing). One firm called …

Continue reading How easy is to make money as HFT startup?

Best Practices on HFT low-latency software

After several years developing high-performance trading systems I come up with some rules of thumb. When talking about low latency/high frequency trading, I’m talking about software that must make a buy or sell decision within 20us (microseconds). In order to achieve these things, I’ve learned that I need to forget everything about modern software engineering. …

Continue reading Best Practices on HFT low-latency software

Unlock the secrets of High-Frequency Trading systems

Data structures that are contained within a single cache-line are more efficient. Use appropriate containers (e.g. prefer reserved std::vector than std::list) Organize your data to avoid alignment holes (sorting your struct members by decreasing size is one way) Don’t neglect the cache in data structure and algorithm design Use smaller data types Beware of the …

Continue reading Unlock the secrets of High-Frequency Trading systems

What I’ve learned after coding for HFT and Low Latency Systems

Choose the right language: FORGET about scripting languages, they won’t work. When you are looking to shave those last few microseconds off your processing time you cannot have the overhead of an interpreted language. Additionally, you will want a strong memory model to enable lock free programming so you should be looking at Java, Scala …

Continue reading What I’ve learned after coding for HFT and Low Latency Systems

How do I develop Trading Systems?

Often, trading model developers “spoil” the eventual results of their model by making errors early in the process. These errors could be using poorly-collected data, not accounting for survivorship bias, or testing too many specifications of a similar model. Data snooping such as that can be particularly costly in that it is an error that …

Continue reading How do I develop Trading Systems?

Building a Trading System – General Considerations

One of the biggest lessons I’ve learned is the important of separating the trading models–the mathematical or algorithmic logic that analyzes data and decides how to trade–from the trading system–the general framework which provides interfaces for receiving data and interacting with the market to the trading models.  The nature of high frequency trading is such …

Continue reading Building a Trading System – General Considerations

Why High Frequency Trading is so profitable?

Low latency networks: location, location, location…. Or Colocation! This is key to creating an HFT business… without it, you will be another retail investor. Low Latency systems: usually written in Java or C++. Personally, because of my background, I prefer C++. There have been non-sense discussions on what is better C++ or Java? For me, …

Continue reading Why High Frequency Trading is so profitable?