Skip to content

What to look out for when assessing trading algorithms

These days most trades are executed by computers being directed by complex trading algorithms. But how do hedge funds use these algorithms and more importantly, how can their efficiency be assessed? Here we discuss the methods by which algorithms are tested to ensure they’re fit for purpose.

High-rise offices in business district Source: Bloomsberg

What is a trading algorithm?

At its most basic, an algorithm is nothing more than a set of instructions on how to solve a problem. However, algorithms can be utilised to enhance the capabilities of an investment firm by executing pre-programmed trading instructions that will take into account variable factors such as price, timing and volume.

Since they debuted in the 1970s, the popularity of trading algorithms has boomed. In fact, CNN reported that computers make between 50%–60% of all trades on an average day but when the markets are particularly volatile, they can account for up to 90%.

How do trading algorithms work?

Trading algorithms use complex formulas, combined with mathematical models and human oversight, to make decisions in regards to buying and selling securities. Some algo traders will further leverage the power of computerised trading techniques by executing significantly large trade orders in mere seconds, which is referred to as high-frequency trading.

However, there are other trading situations that algorithms can be used for, such as arbitrage and trend trading strategies. While there are certainly some key advantages to using trading algorithms, including fast execution times and reduced costs, there are risks that investors should be aware of, such as their ability to intensify negative market tendencies.

Why trading algorithms need to be tested

Since trading algorithms are such an integral part of many investment strategies, it’s imperative that an algorithm works exactly as it’s supposed to. If something goes wrong, it could cost investors a lot of money. But what exactly should an algorithm be tested for?

Firstly, the general reliability of the algorithm itself needs to be checked before it starts executing live trades. Trading firms also need to know that they can count on the infrastructure propping the algorithm up, such as the computer software that’s running in the background. Furthermore, the finer details of the algorithm will need to be fine-tuned to ensure maximum efficiency and speed of execution.

How to test a trading algorithm

One of the most frequently used methods for assessing an algorithm is backtesting. This essentially tests how well an algorithm would have performed based on historical data. Backtesting requires a continuous flow of data such as last traded price (LTP), last traded quantity (LTQ) and market depth. This can, however, be replicated by a simulator.

By replicating continuous data, backtesting can be used to identify how several strategies would work under different conditions. Algorithmic strategies can be classified by the complexity of the business functionality, but the more complex an algorithm is, the greater the risk on performance and profitability.

Because the very point of a trading algorithm is to react to a number of variable factors based on market movements, testing an algorithm is no easy feat. In order to run these tests effectively, the algorithm will need to be put through several different scenarios.

What to look out for when testing

While backtesting an algorithm should be a high priority for algo traders, backtesting a strategy isn’t always straightforward. For example, as a strategy’s frequency increases, it becomes more difficult to accurately model the microstructural effects of the markets.

This makes the backtesting less reliable over time, making it harder to evaluate the overall strategy. This can be particularly problematic where system execution is key to the performance of a strategy, such as high-frequency algorithms.

So while trading algorithms should always be backtested, it’s worth knowing how certain biases may appear as a result of the tests – and how these may affect the performance of an algorithm on a live market.

Optimisation bias

Optimisation bias usually occurs when trading parameters are either added or adjusted until the backtest data is particularly attractive. The issue here is that once it goes live, the performance of the algorithm might be very different. To avoid this one should minimise the parameters and increase the number of data points

Look-ahead bias

When future data is included in error at a point in the simulated data where it shouldn’t be, you end up with look-ahead bias. Such biases can be hard to spot and may be the result of bugs or parameter errors. However, it’s important to avoid its introduction as it may result in an algorithm underperforming its backtest data when it's live

Survivorship bias

Similar to look-ahead bias, survivorship bias usually occurs as a result of backtesting an algorithm against data sets that don’t account for the entire ‘universe’ of assets that may have been chosen at a particular time, but rather the assets that ‘survived’ to the current time.

For example, if a strategy was tested on a random pool of equities before and after the 2008 financial crisis. Many companies went bankrupt while others ‘survived’, but if the data set was restricted to stocks that survived the crisis, a survivorship bias would be introduced as the stocks have already demonstrated their success

There is then, a lot to consider before letting an algorithm trade on a live market. However, if an algorithmic trading strategy is to succeed, running efficient tests is imperative.

Publication date: 2022-04-14T16:40:59+0100

The information and opinions on this report are provided for general information purposes only. IG Bank S.A. do not guarantee, explicitly or implicitly, that the information and opinions are accurate, reliable, up-to-date or exhaustive. Furthermore, this report may contain IG Bank S.A. external analyst’s judgment, future expectations, views or opinions, but actual developments and results may differ materially from such expectations, in particular due to a number of risks, uncertainties and other factors. Such statement may subject to alteration without notice.

The information contained in this report should in no event be construed as a solicitation or offer, as advice or as a recommendation to implement or liquidate an investment or to carry out any other financial transaction, and it does not constitute any legal or tax advice. It should not be used as a basis for any investment decision or other decision. IG Bank S.A. accept no liability for any loss or damage of any nature whatsoever, whether direct, indirect or consecutive, arising from accessing, using, consulting its report or navigating its website, or from links to other report and/or websites. No representation or warranty is given as to the accuracy or completeness of this information. Consequently any person acting on it does so entirely at their own risk. Any research provided does not have regard to the specific investment objectives, financial situation and needs of any specific person who may receive it and as such is considered to be a marketing communication.

Contact us

Let us create a solution tailored for your needs. Get in touch with our team by phone or email to discuss your objectives, or request a brochure.

Please include the country code if outside Switzerland

For more info on how we might use your data, see our privacy notice and access policy and privacy webpage.