Many strategies look very strong when tested on past data. Smooth equity curves, consistent returns, and clear rules can create confidence that the approach is reliable.
However, there are situations where a strategy performs well in historical data but struggles when applied in live markets. One concept often discussed in such cases is curve fitting.
Curve fitting happens when a strategy becomes too closely aligned with past data. While using historical data is a normal part of building any system, excessive tuning can lead to capturing patterns that may not repeat in the future.
This can happen when multiple parameters are adjusted repeatedly:
• Moving average periods
• Indicator levels like RSI
• Stop-loss and target values
• Entry timing or conditions
• Instrument selection
At some point, the results may look very strong, but it becomes difficult to determine whether the outcome is based on a repeatable pattern or just a good fit to past data.
Markets are dynamic and influenced by multiple factors such as volatility, macro events, changing participants, and execution costs. Because of this, patterns observed in the past may not always behave the same way going forward.
Some commonly observed signs include:
• Strategies with too many conditions or parameters
• Small changes in inputs leading to large changes in results
• Performance limited to specific stocks or periods
• Results that appear unusually smooth or consistent
• Ignoring factors like costs, slippage, or real execution
To address this, some participants may use approaches such as:
• Testing on different time periods or unseen data
• Keeping rules simple and interpretable
• Evaluating performance across multiple market conditions
• Considering realistic costs and execution constraints
In many cases, slightly simpler strategies with moderate results may be more stable than highly optimized ones with perfect historical performance.
Different experiences can offer useful insights into how traders evaluate robustness versus optimization.
Have you come across situations where a strong backtest did not perform as expected in live markets?