Have been lurking for a while and was thinking about backtesting in general.
As I understand it, Quantopian does backtesting against actual historical data. But for many trading strategies that could be quite misleading. Think about the space of all trading strategies for regular stocks (no options or futures etc). The trading strategies that are going to backtest well are the ones that pick the winners from the past. As other's have noted in the community, if a trading strategy simply bought apple it would backtest extremely well. For this simple example the bias is easy to spot, but for complex trading strats there could be hidden bias of this type. The problem is that those trading strats might completely fail on future data if they can't pick the new winners.
I am wondering if it is possible to eliminate this bias by backtesting in a different manner. What if you used the historical data to build a statistical model of the market or part of it. Such a model could include the risk free rate, historic volatilities, and correlations between stocks, etc. You could then run a monte Carlo simulation where you backtest against multiple, statistically generated historical data. You could use this to develop statistics about how the strategy works in a broader sense.
I don't think this back testing approach would work well for all trading strategies. I can can also imagine that this is equivalent to forward testing against statistically generated future data. So this might not be that useful after all. But somehow there has to be a way to backtest is a manner that eliminates these sources of problems. Thoughts?