Backtesting Biases Checklist
A reference table of the biases that inflate backtest performance, showing how each one quietly enters a study and the specific practice that removes it.
Biases Checklist: Backtesting biases are systematic errors that make a strategy look better on history than it can be live. The main ones are look-ahead bias (using information not yet available), survivorship bias (testing only instruments that still exist), selection and sample bias (an unrepresentative universe or period), data-snooping and its statistical face p-hacking (trying many variants until one looks significant), overfitting and curve-fitting (fitting noise with too many parameters), and confirmation bias (accepting good results uncritically). Each is fixed by a specific discipline, not by good intentions: point-in-time data, strict as-of timestamps, reserved out-of-sample data, limits on the number of trials and few parameters.
Treat each bias below as a defect to be actively disproven, not a risk to be vaguely acknowledged. They share a common signature: every one makes the backtest look better than the future can be, and every one is invisible unless you specifically test for it. For depth on any row, follow the links into the biases pillar.
The biases and their fixes
| Bias | How it sneaks in | The fix |
|---|---|---|
| Look-ahead bias | Acting on data not knowable at the decision moment: filling at the signal bar's close, using restated fundamentals, or repainting indicators. | Enforce strict as-of timestamps; fill on the next bar; only use data stamped before the bar you trade. See look-ahead bias. |
| Survivorship bias | Testing only on instruments that still exist today, dropping the delisted, merged and bankrupt names. | Use a point-in-time, survivorship-free universe that includes dead symbols. See survivorship bias. |
| Selection bias | Cherry-picking a favourable index constituent, a calm period, or the instruments that happened to work. | Fix the universe and period by rule before testing; test across many instruments and regimes. See selection bias. |
| Sample bias | Drawing conclusions from a period that is not representative, such as only a bull market. | Test across multiple market regimes and long enough history to include stress. See sample bias. |
| Data-snooping | Reusing the same data to try many hypotheses until one appears significant by chance. | Limit the number of trials, adjust for multiple testing, and keep a genuinely untouched hold-out. See data-snooping. |
| p-hacking | Tweaking filters or parameters until a result crosses a significance threshold, hiding the failed attempts. | Fix the analysis before looking; report the number of variations tried; prefer a deflated Sharpe. See data-snooping. |
| Overfitting | Tuning so closely to history that the model captures noise, producing a great backtest that fails live. | Use few parameters, seek broad plateaus, and confirm out-of-sample and walk-forward. See overfitting. |
| Curve-fitting | Adding rules or adjusting thresholds until the equity curve looks good on the test data. | Prefer simple logic with an economic rationale; test parameter sensitivity for a plateau, not a spike. See curve-fitting. |
| Underfitting | A model too simple or constrained to capture the real structure, performing poorly in and out of sample. | Add justified structure only where it improves out-of-sample results, not in-sample fit. See underfitting. |
| Confirmation bias | Accepting a good backtest uncritically while re-examining a bad one until it improves. | Pre-register the test and its pass criteria; apply the same scrutiny to good and bad results. See confirmation bias. |
The unrealistic-cost trap
Separate from the statistical biases, the most common way a backtest flatters itself is by assuming perfect fills at the signal price with zero cost. On Indian equities and F&O, STT, exchange transaction charges, GST on brokerage, SEBI turnover fees, stamp duty, the bid-ask spread and slippage all apply. An intraday options strategy that ignores STT on the sell side and realistic spreads on illiquid strikes can look profitable and lose money live. Model costs per leg, per trade, and re-run with costs doubled to see how fragile the edge is.
Why biases compound
These errors are not independent. A researcher who selects a favourable universe (selection bias), searches many variants on it (data-snooping), keeps only the good result (confirmation bias) and reports it with optimistic fills (no cost model) can turn pure noise into a compelling equity curve. Because each bias individually is easy to rationalise, the defence is procedural: reserve out-of-sample data first, fix the universe and analysis before looking, count and disclose every trial, and model costs honestly.
Frequently asked questions
What is the difference between overfitting and curve-fitting?
How does look-ahead bias typically enter a backtest?
Why is survivorship bias so easy to miss?
What is data-snooping and how is it controlled?
Can I remove all bias from a backtest?
Is confirmation bias really a backtesting problem?
Last reviewed 11 July 2026. Educational content only — not investment advice.