Why does strategy tester backtesting fail so much?

 

My own personal views on backtesting in mt4 from strategy tester, historical data and optimization for expert advisors.

When the average joe, who is savy with programming in various languages, comes to meta editor with the assumption that they should be able to use historical data to test their trading strategy comes to believe that there strategy is not going to work, but looks a the historical test again it appears to have logical errors,.

Once they do an optimization it may totally skip this setting that they atleast came out profitable with, and whether they choose to do a genetic algorithm or not!

But what really infuriates me, beside the absence of other variables such as swap fees and commissions, is the true or false basis of whether a take profit is truly reached or not.

If you do a backtest for 5 pips from 2004 to 2014 then every take profit should be 5 pips but im getting some that are closing negative (no stoploss) and some that close with huge gains when the lot is only 0.01 and the profit is like 13.00.

This blows me away. I don't know how many years I've spent with programming and learning the market where I knew I had to expect the brokers to get their money and the banks to get rich, BUT for there to be no fair way to go about getting a fair chance to invest with this market by the use of expert advisors in metatrader 4?

Also, if you think you can get a backtest for 10 years on all currencies your wrong and may only have 3-5 years available on some.

Must we endure such dilemmas in expectation with our trade terminal from metatrader 4?

I'm moving to solutions that sidestep metatrader 4's strategy tester and I know there are alot of them out there.

Thanks.

ps im almost certain that anyone who is considering using metatrader 4 for expert advisors that is serious in investing money must have been at this point in their journey, because you either take a gamble on the software and the market or your just going to be safe and sidestep the inadequacies with your backtests.

 
Sometimes you will get larger gains because of data gaps, weekend gaps etc.
Reason: