Let me demonstrate the correct way versus the wrong way. Let’s say I’ve got specific rules which might be a bit technical but doable. One thing we do in technical trading is moving averages which is you take the price today, yesterday and the day before, you add them up, and take the average. If the price today is above that average, then it’s probably trending up. If the price is below the average, it’s probably trending down, it’s the simplest example of a technical indicator. You can have lots of different indicators in your system.
Let’s say I develop a set of rules and keep adding many different indicators until I eliminate all the bad trades in the past and the backtest looks excellent. And in order to do that, I’ve added 20 different rules, and then I’ve varied the numbers in all of the various rules to find the one combination that worked amazingly well in the past. Do you think that would work in the future? No, because I’ve added so much complexity and I fine-tuned it so much to those exact conditions in the past to force the backtest to look good, that complexity won’t be able to predict the future. It won’t be able to extract profit in the future predictably.
Another example let’s say I have two or three rules, and those rules work. Whether I use a 200, 150 or a 300-day average, it doesn’t matter. It’s all profitable in the past. And, if I use a 50, 100 or a 40-day breakout, they’re all profitable. Those rules are stable. I haven’t fine-tuned them to make the past look good. If I have a much broader, more general set of rules, it will work no matter what parameter values I use. That is, then, more likely to make money in the future.
The difference is that we need elegant simplicity that works in a very broad sense rather than ultra-complex specifics that work only under precise conditions. Then we can make money in real-time trading.