Why I do not believe in BackTest result ?
There are many EA users believe in Backtesting result. Also many new users replied me that If you do not have a good result in the past so how do you prove EA can be profitable in the future? This is a very funny question and I would like you tell all of you that , Backtesting is only for a programmer to test any error. Not to tell you about the result in the future . Here I will show the proof.
Bug of MT4
Can not test multi-currency strategy
Can not test Multi-TimeFrame
For example , if the strategy is about when EURUSD hit some level and USDCHF should open new order . You are not allow to do , so in most of the developer there would like to use IsTesting() function which means users can normally open orders in tester , but not related to the original strategy . So How can the backtest result be accurate ?
Slippage
Also, some of user refuted me that there are some external software allow you to add slippage setting to simulate the slippage . OK let me tell you a fact , even the broker they also do not know what is your slippage before you open an new order . Because this is a very normal market reaction. So no one know what will the slippage be before any order execution. Because market keep changing each second . What is slippage ? let me explain a bit .
Slippage is a normal market phenomenon.
Every market also exist Bid and Ask price with Market Depth. But MT4 brokers only allow to quote BID and ASK without Market Depth.
1.10 (10k )
1.11 (20k)
1.12 (30K)
1.13 (40k)
If someone is using ECN account ( I do not commend to use Market Maker and STP , most of them are scammer brokers,In 2018 also many Faked ECN broker appeared ,scammer broker would like to make your slippage and spread bigger to make you lose money and they win .but here is talking about normal slippage example ) . In Mt4 you can buy or sell with lotSize. In MT4 quoting like this:
1.09 /1.11 . So user buy 100K volume ,Finally Order Open Price will be 1.12 .Because ECN brokers only know that you want to buy 100K volume and no matter the slippage or spread how big . systems will follow your instruction and execute the order. So How can BackTesting result can prove the past and the future ?
Trading condition
Trading condition between Real Demo and Tester account .
Here is a very horrible example and fact .
I have tried to compare Tester trading condition and Real account trading condition when I tried to add new code to solve one of my user of 4 digits and 5 digits issue. (I don’t know suggest to use this kind of broker with 4 digits ).
In the photo you can see : There are 6 conditions are different from tester and real . MODE_TICKSIZE , MODE_TICKVALUE ,MODE_STEPLEVEL,MODE_DEGITS,MODE_POINT .
Please remember , those are the main factors to lead your account safe or die .
(If you do not understand what those code means , please check in google)
And Please be reminded that , Brokers can change those condition only to your trading account without any notification!
So , how can be the tester result same as your trading account result ? with you have 100% tick data ! it’s useless .
Spread
In MT4 tester , users can only set a Fixed Spread parameter to test the strategy , But in real Market, Spread is dynamic . and In Holiday spread , will be a huge Spread . This factor you can not test in tester also . Please be smart .