Guide to Forex Backtesting – Gain confidence in your trading strategy

There are countless ways of making money in Forex. But how can you be certain that your strategy will work in the long run? The truth is that you can never know 100% as markets are ever-changing organisms. The good news is that you can get very close to profitability thanks to backtesting. In this article, we will take a look at backtesting basics and show you how you can make most of it to gain confidence in your trading.

Guide to Forex Backtesting – Gain confidence in your trading strategy

 

There is one thing that connects all professional traders – they have 100% trust in their trading strategy.

If you want to join this elite club of traders, you need to know what to expect from your trading strategy.

This is quite a complicated task since none of us can see the future, but thanks to the historical data, we can easily see how we would have performed in the past.

If we can find out that our trading strategy performed well in the last couple of years, there is a very small chance it won’t work in the future.

So what is backtesting?

While we backtest, we put our strategy to test on historical data.

This can be done over the last couple of months but you can also go 10 or 20 years back.

It all depends on your appetite and how robust you want your backtest to be.

Although backtesting can be very time consuming, it is relatively easy.

All you need is a trading platform with enough historical data and a simple excel sheet where you will document all trades.

Types of backtesting

There are two types of backtesting, manual and automated.

Manual backtesting is as straight as it gets.

You just need to open the platform and look, day by day, for valid trading setups you would trade in real-time.

After every trade, you log it into your spreadsheet and carry on.

This can be quite a long process and most importantly you need to be 100% true with yourself.

One of the mistakes traders do with backtesting is they try to “curve-fit” strategy so it would bring a positive expectancy.

An example of this can be when the trading setup would present itself in the middle of the night where you won’t be able to execute it, or your stop loss would get hit by spread and you completely ignore this fact and register the trade anyway.

You have to realize that by doing this, you are only hurting yourself as you will lose money in the live market conditions.

The second type of backtesting is fully automated.

For this type of backtesting, you often need knowledge of some programming language.

It is mostly Python, MQL or C++.

A huge pro of automated backtesting is that it completely removes all emotions and time you need to spend on going day by day on historical data.

The downside of it is that you need to invest quite some time in learning the programming language.

Important Backtesting Statistics

 

When you are running a backtest these are the most important statistics you should keep track of.

  • Time and Date of entry
  • Entry and Exit price
  • Position size and % risk on your trading account
  • MAE – Maximal Adverse Excursion
  • MFE – Maximal Favorable Excursion
  • Average R: R ratio
  • Strike rate
  • Maximum drawdown
  • Long/short ratio
  • The success rate on different instruments

If possible, it is good to also add the screenshot to all the trades in your backtest. This way, you can easily come back to it later.

How many traders should be backtested?

 

Some traders might test the first ten trades and if they see their strategy works, they decide it is just enough and give up on further backtesting.

This is definitely not a good approach as you don’t have a robust data sample.

To be really sure your trading system is stable and robust, you need a sample size of at least 100-200 trades.

This way you will gain much more confidence in your trading.

Although trading in the real market is always different from testing your strategy on the demo, you will gain much more confidence knowing that your strategy has a positive expectancy over the long run.