Can someone (properly) explain the 'Forward Testing' feature in the Strategy Tester?

 

Hi,

I have read https://www.metatrader5.com/en/automated-trading/strategy-tester and https://www.metatrader5.com/en/terminal/help/algotrading/testing#forward

But I still don't understand what is actually going on here... nor can I find a proper answer anywhere else thus far!

What is actually going on in a "Forward Test" - is it based on "made up" data of what could possibly happen, based on historical data? Or is it running the test on some random period of time from the past incorporated in (eg something from 2 years ago when testing last month), or something else altogether??

The descriptions are very vague, eg taken from the first link:

This option divides the database of currency and stock quotes for optimization into two separate parts. The optimization is performed for the first part, while the second part is used to confirm the obtained results.


Huh? Confirm how? Based on what?

And here, taken from the second link:

Forward testing is the repeated run of the Expert Advisor on a different time period. This feature allows you to avoid parameters fitting in certain areas of historical data.

Ok... what does this mean, specifically? What different time period(s) are we talking about here?

Is this feature meant to be a 'black box' or is someone able explain what Forward Testing actually is in an understandable way? Right or wrong, people (at least partly) base financial decisions on these kind of tests, and understanding what they are and how they work seems rather important.

Thanks much!! Really appreciate it. 😁

MetaTrader 5 Built-in Trading Strategy Tester
MetaTrader 5 Built-in Trading Strategy Tester
  • www.metatrader5.com
The built-in MetaTrader 5 Strategy Tester facilitates the testing of automated robot performance in trading. This powerful tool not only allows testing the efficiency of an Expert Advisor, but also allows detecting the best input parameters before you run the EA on your real account. The entire operation of the Strategy Tester is based on...
 
ddcmql:

Hi,

I have read https://www.metatrader5.com/en/automated-trading/strategy-tester and https://www.metatrader5.com/en/terminal/help/algotrading/testing#forward

But I still don't understand what is actually going on here... nor can I find a proper answer anywhere else thus far!

What is actually going on in a "Forward Test" - is it based on "made up" data of what could possibly happen, based on historical data? Or is it running the test on some random period of time from the past incorporated in (eg something from 2 years ago when testing last month), or something else altogether??

The descriptions are very vague, eg taken from the first link:

This option divides the database of currency and stock quotes for optimization into two separate parts. The optimization is performed for the first part, while the second part is used to confirm the obtained results.


Huh? Confirm how? Based on what?

And here, taken from the second link:

Forward testing is the repeated run of the Expert Advisor on a different time period. This feature allows you to avoid parameters fitting in certain areas of historical data.

Ok... what does this mean, specifically? What different time period(s) are we talking about here?

Is this feature meant to be a 'black box' or is someone able explain what Forward Testing actually is in an understandable way? Right or wrong, people (at least partly) base financial decisions on these kind of tests, and understanding what they are and how they work seems rather important.

Thanks much!! Really appreciate it. 😁

Hi, my 2 cents: "forward testing" is about testing your EA with data you didn't use to design, implement, optimize it at first place.  Naturally, "forward testing" is testing today, an EA that you created a few days / weeks / month ago, with data after the latest date you used for testing while creating it in the past.  Artificially, if you are creating an EA today, and optimizing it based on historical, you may chose to do so testing until a certain date, i.e. December 31st, 2019.  Once it's yet optimized based on data from 2019 and backwards .... you may "forward test" it with exiting data starting January, 2020.

Hope that helped

Reason: