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?

3 Ways to Use Black Box Automated Trading Systems in Forex

Black box trading, algorithmic trading, automated trading, or whatever you’d like to call it, is on the rise. Technology is better, cheaper, and faster than ever before allowing retail traders to take part in an area of trading that was historically reserved only for the big boys. Speaking with Forex traders on a daily basis … Continue reading 3 Ways to Use Black Box Automated Trading Systems in Forex

Exchange Colocation – worth it or not?

Automated trading requires a server, and it often makes sense to collocate it. Even discretionary traders these days can rely on certain automation that may be better off on a server. Tools like NinjaTrader allow “customer assisted trading” where a position automatically gets a profit target and stop loss, even with automatic adjustments. While not … Continue reading Exchange Colocation – worth it or not?