Backtesting CFD Trading Systems: Any Tips And Tricks When Testing Your CFD Systems?

With CFD trading, you may be a mechanical CFD trader, and therefore are doing backtesting of CFD trading systems to find one that suits you the best.

What you should understand are the strengths and weaknesses of backtesting so you have a realistic perspective on what backtesting offers to the CFDs trader.

Limitations or weaknesses of backtesting contracts for difference (CFD) trading systems includes:

1. Past performance can indicate future performance, but is not a guarantee of future performance.

A system may not work well if the system is not robust.

That is, the system has been optimised without considering if he has chosen "islands of stability". The system designer have chosen specific values for variables that produced great results. But then they change their variables a little bit, there’s a significant difference in the system results such that the system no longer really performs. They key is to design a robust system that performs well with a range of values for variables, near the value you’ve chosen.

Software include Metastock and Tradesim for the purposes of backtesting.

2. Survivor bias.

The stocks that are in, for example, the top 100 of the ASX today is different to the stocks in the ASX 100 last year or several years ago.

Backtesting a system with the most current list of shares in the ASX may therefore not be completely accurate. The ideal is to use a changing list of that market’s stock list, which can be done with eg WealthLab. The alternative is to test with several different lists over the entire time period, and see is there’s a major difference in results.

3. The list of shortable stock CFDs changes over time and is different with each provider.

Unless you’ve been keeping lists of the changing list of shortable CFDs with the provider you want to trade with, then you'll have to make do with the current shortable list. You can choose the current shortable list with the CFD broker you want to trade with, or choose several lists. This introduces some inaccuracy to backtesting, but you can get a good idea by testing with a few different CFD lists.

4. Liquidity and slippage is difficult to simulate.

You can backtest and trade stock CFDs that pass your criteria for high turnover (volume times price). However there may be occasional times when you wouldn’t have gotten into a CFD trade at the price you wanted because of inadequate liquidity at that particular price.

Also look at the transaction costs of the CFD provider or CFD broker you are considering. With your transaction costs that you type into Amibroker, TradeSim, WealthLab, TradeStation or whichever program you use, you may want to factor in slippage as well the providers commission and interest costs. If you factor in these costs, either very accurately (with WealthLab), quite accurately by working out the average commission per trade, or just an estimate, it makes your backtesting results of your CFD trading system more accurate.

So it’s a good idea to look at the CFD broker or brokers that you want to trade with so that you can put in an accurate estimate of commission, interest costs, and even allowing for slippage when backtesting.

When you're at it, see if you can find out their shortable list or get an idea of how many stocks are shortable, if your system trades CFDs both long and short.


All trading involves a high risk of financial loss, and the information on this site is for general information purposes only and is not financial advice in any form. Seek your own financial advice before taking any action.

All forms of trading involves risk of financial loss.

Also note that CFD trading is not legally permitted in some countries.

Note that this site may have paid advertising or commissions generated for referrals to products and services, and CFD providers made from this site.

We cannot guarantee the accuracy of information, or that any information published has not changed since time of publication.

If and where there are claims of results from using products or services, do not guarantee or in any way indicate that these results are typical or guaranteed.

See our disclaimer for further information.