There is a guy, his name is Nick Beluck (nickname is Beluck) he is a coder, and he states that you can get a correct backtest if the expert is coded properly.
But ost of the EA's are coded properly to work live but aren't to backtest properly. You can google his nickname together with word backtesting or metatrader backtesting and search for his posts on this topic, he posts a lot on different forums.
It is easy to check whether your backtests are correct or not. Run a backtest in metatrader, then look at the log and pick out 10 most profitable positions, 10 biggest losers, and 10 random positions. Or if you have less then 30, pick all of them. Then open the charts, apply the rules or indicators you use and handcheck all the positions stated in a backtest.
You can never be too cousios when it concerns you money or income.