Offline Backtesting with 1M data

 

I have turned MT4 off line and delete all period

history files from its history directory and then

imported the 1M data from

http://www.alpari-idc.com/en/dc/databank.php. I then

use the period convert script to generate the 5min,

15min, 30min, 1hr, 4hrs and daily periods and then import them into the history center.

These period files are what I assumed to be correct. I

then export them onto multiple other computers with internet off to test

the same EA. I find that I would still get different

results with a same EA on different computer. What am

I doing wrong as my EA is trading off the 1hour open?

Does anyone have a correct procedure for 1M backtesting? BTW, i have read about FXTheader, how would I implement it to help me out with the offline backtesting?

Trong

 
trohoang:
I have turned MT4 off line and delete all period

history files from its history directory and then

imported the 1M data from

http://www.alpari-idc.com/en/dc/databank.php. I then

use the period convert script to generate the 5min,

15min, 30min, 1hr, 4hrs and daily periods and then import them into the history center.

These period files are what I assumed to be correct. I

then export them onto multiple other computers with internet off to test

the same EA. I find that I would still get different

results with a same EA on different computer. What am

I doing wrong as my EA is trading off the 1hour open?

Does anyone have a correct procedure for 1M backtesting? BTW, i have read about FXTheader, how would I implement it to help me out with the offline backtesting?

Trong

Never trust backtests.

Here is the article why you can't have reliable results with TF M1.

https://www.mql5.com/en/articles/1513

Good luck!

 

Backtesting

Hi Jozo,

I respectfulling disagree with your view on backtesting. Those who don't learn from history will bound to repeat the same mistakes again.

First of all I am not a programmer but I am a novice trader. I see several price patterns that tend to repeat itself frequently. I want to write a program that would take these trades each time. The purpose of my EA and back testing is to tell me whether my observation in correct i.e. percentage of win, profit to risk and frequency.

 
trohoang:
Hi Jozo,

I respectfulling disagree with your view on backtesting. Those who don't learn from history will bound to repeat the same mistakes again.

First of all I am not a programmer but I am a novice trader. I see several price patterns that tend to repeat itself frequently. I want to write a program that would take these trades each time. The purpose of my EA and back testing is to tell me whether my observation in correct i.e. percentage of win, profit to risk and frequency.

YES, BACKTESTING IS IMPORTANT, the problem is, the strategy tester that METATRADER4 created has a multiple number of limitations, they were noted all over the place over the past month. just look for them, mostly in the metatrader4 and expert advisers metrader 4 forums, just know that you are not alone, you're doing nothing wrong, it's just a crappy automated tester. which i why i manually backtest, even though it takes time and patience, it is well worth the effort to get accurate results, (but that's just my oppion ).

 

Eaglehawk,

Thank you for your reply. I feel that everyone is focusing on creating a profitable EA and yet they are not spending enough time developing a reliable back testing method. Without a reliable back testing method, a creation of a profitable EA is not possible.

The King is without clothes!!! Am I the only one seeing this?

 
trohoang:
Eaglehawk,

Thank you for your reply. I feel that everyone is focusing on creating a profitable EA and yet they are not spending enough time developing a reliable back testing method. Without a reliable back testing method, a creation of a profitable EA is not possible.

The King is without clothes!!! Am I the only one seeing this?

Yes, agreed, Even though MT4 back testing not reliable, but for me its still important as I can learn price action movement and effect to the EA. For Example whether the EA we were testing will blow our account with certain amount of capital and how to overcome this problem with approriate min capital for the EA we were testing.

Also in long term back testing (for 2 year ++) we can estimate average which month price action tend to make big movement for precaution as history will repeat itself in FX world.

I will say MT4 not reliable because when we do backtesting , our spread for the currency pair is fixed, while in real time or forward test , they will be a change in spread during news time. Unless ur EA doesnt trade on news time that maybe backtesting much more accurate.

Also there is few factors will influence backtesting otehr than spread. think about it and see the truth for ur self.

Backtesting result is not a promise for real test / forward test, but merely a guidance.

regard

CF

 
trohoang:
Eaglehawk,

Thank you for your reply. I feel that everyone is focusing on creating a profitable EA and yet they are not spending enough time developing a reliable back testing method. Without a reliable back testing method, a creation of a profitable EA is not possible.

The King is without clothes!!! Am I the only one seeing this?

one method i have used that is fairly simple is to create an excell file, and simply go through the screen and recognize when my trading signals occur, once they happen, i mark the open price in an excell file, whether it's a buy or a sell, and then find a closing signal, and exit. i then have the excell file simply subtract the results to tell if i lost or won, and how much. then i have one last column take an average of all my profits, and that is what i call, my profit expectancy. (one more thing, i do this for several pairs, not just one)

 
crazy_forex:
Backtesting result is not a promise for real test / forward test, but merely a guidance.

regard

CF

For any valid EA, I believe that it should be 70% backtesting and 30% forward testing. IMHO, i think that forward testing should be 2 months but it also should have amble of backtesting to support it.

 

New version of MetaTrader - Build 199 automates history download, time period conversion, etc.

https://www.mql5.com/en/forum/175511

Reason: