Basic Prerequisites: 04 · The Deflated Sharpe Ratio and 02 · Why Backtests Lie.
1. Intuition & Practical Objective
Pages 01–04 named the diseases; this page is the clinic. The objective: a concrete, ordered protocol that a researcher runs before a backtest is allowed to influence a capital decision - and a numbered catalogue of the ways otherwise-good analyses fail. The discipline is not cynicism; it is knowing exactly where the number is soft so the residual can be measured and gated.
The theme of every failure mode: a forgiving assumption applied at a place where the analyst benefits from the forgiveness. Costs are assumed zero where they bite; is undercounted where it inflates; the sample is chosen after the outcome. Each is a first-principles violation of an exchangeability or an accounting identity, not a matter of taste.
2. Mathematical Ground Truth & Derivations
2.1 The Sharpe cost drag (why a few basis points flip a verdict)
If the strategy turns over fraction of its book per year and faces round-trip cost (proportional spread + fees), the annual cost drag is , so the net Sharpe is
The drag scales as : high-frequency, low-vol strategies are crushed by costs that are irrelevant to slow, high-vol ones. This is not a modelling nicety - it is the single most common reason a Sharpe-2.0 backtest becomes a Sharpe-0.7 live strategy. Market impact adds a square-root term that makes the drag size-dependent (Almgren–Chriss); a flat “5 bps” assumption is itself a failure mode.
2.2 Effective and the non-independence trap
Trials produced by tweaking one base signal are correlated; the selection threshold uses (page 03). Reporting the raw sweep without is uninterpretable in both directions. Guideline: report the full sweep , an estimated average correlation , and the implied .
2.3 The decision gate
A defensible gate combines three independent corrections, all of which must pass:
Note the recursion: computing DSR needs , which needs the search to have been logged - so the protocol must be enforced during research, not audited after.
2.4 The order of operations (hygiene checklist)
- Pre-register the hypothesis and the plan for the search; log every configuration (this fixes ).
- Point-in-time everything - universe, fundamentals, prices, index membership.
- Split by time (never randomly) into IS/tuning and a vaulted OOS, used once.
- Model costs fully: spread, fees, borrow, and size-dependent impact, calibrated to your turnover.
- Compute , skew, kurtosis, , .
- Gate on DSR, MinTRL, and PBO; report all three.
- Freeze the chosen configuration; any post-hoc change resets the OOS - the vault is spent.
3. Computational Implementation - when costs kill the strategy
A 5-year, high-turnover strategy with a true gross annual Sharpe of 2.0, found among trials. We apply proportional costs and recompute both the net Sharpe and the DSR (trial-SR dispersion 0.5 annualized). Stdlib only.
A gate that passes at zero cost fails at 2 bps - a cost level no high-turnover strategy can honestly assume away. The lesson is not “costs bad”; it is that selection-bias correction and cost accounting are not independent filters - a corrected Sharpe and an uncorrected one live on opposite sides of the threshold, and both must be computed at the same point in the protocol.
4. Failure Modes & First-Principles Breakdowns (numbered)
- The missing (selection bias). A backtest without the trial count is uninterpretable (Bailey & López de Prado). First principle: the reported statistic is a maximum, which has no meaning without the number of draws.
- Transaction-cost amnesia. Assuming zero or fixed-dollar costs rather than proportional spread + quadratic impact. Symptom: live Sharpe collapses and is negative at the assumed turnover; the drag scales as .
- Repeated holdout. Using the “out-of-sample” set for many rounds of selection turns 5% false positives into expected ones (~20 applications). Fix: one vaulted use.
- Survivorship / point-in-time failure. Backtesting today’s constituents; using restated data. First principle: membership required past success - a selection filter baked into the sample.
- Look-ahead via vintages. Fundamentals, index adds/drops, or vendor-adjusted prices known only later. Symptom: unnaturally smooth equity curves.
- Effective- blindness. Treating 1,000 correlated variants as 1,000 independent bets (or as one). Report , , and .
- Non-normality ignored. Quoting Sharpe for a negatively-skewed, fat-tailed stream (carry, option-selling) whose true standard error is far larger - DSR’s denominator exists precisely for this.
- Capacity & alpha-decay blindness. A strategy can be statistically real yet too small to matter or decayed by the time it is deployed; neither DSR nor PBO knows about capacity.
- Metric gaming. Sharpe on illiquid mark-to-model returns, or on smoothed series, understates variance and inflates the ratio - a data-quality door, not a statistics door.
- Publishing bias in the literature itself. The documented “anomalies” you mine for ideas are the survivors of other people’s searches; their prior inflation is inherited, not reset (White 2000; Harvey, Liu & Zhu’s “most claimed findings are likely false”).
5. References
- Bailey, D. H. & López de Prado, M.: The Deflated Sharpe Ratio (2014)
- Harvey, C. R. & Liu, Y.: Backtesting, JPM (2015)
- Harvey, C. R., Liu, Y. & Zhu, H.: … and the Cross-Section of Expected Returns, RFS 29(1) (2016)
- Almgren, R. & Chriss, N.: Optimal Execution of Portfolio Transactions, Journal of Risk (2001)
- Hastie, Tibshirani & Friedman: The Elements of Statistical Learning (2nd ed.)
6. Connected Graph Bridges
- Back: 04 · Deflated Sharpe · Index Hub
- Forward: 06 · Purged CV, PBO & Reality Check
- Siblings: Feature Engineering & Labeling (triple-barrier labels determine the purge width) · Stat-Arb & Pairs Trading (turnover-heavy, cost-sensitive)
- Cross-pillar: Financial ML Pitfalls & Low SNR