Skip to content

Live vs Backtest Performance: The Gap You Should Plan For

Live performance is always worse than backtest performance. The gap depends on strategy, market regime, and execution, and it should be estimated before deployment.

2 of 8 ~12 min

Plan for live Sharpe to be 30-50% of backtest Sharpe. Plan for slippage to be 2x your backtest estimate. If you can live with that, deploy. If you cannot live with that, do not deploy. There is no version of this where live performance matches backtest performance. Anyone who tells you otherwise is selling you something.

Four components create the backtest-to-live gap. Each can be estimated before deployment, and each costs more than most backtests assume.

The Four Components

The gap between backtest and live performance comes from four distinct sources. Each one is estimable before deployment. Each one bites harder than you think.

1. Execution slippage. Your backtest assumes you get the closing price. In reality, you get the closing price minus half the bid-ask spread, minus market impact, minus the delay between signal and fill. For liquid US equities, this is 1-3 basis points per trade. For less liquid names, 5-20 bps. For futures, 0.5-2 ticks. For FX, 0.5-1.5 pips.

2. Capacity constraints. Your backtest assumes you can trade any size. In reality, you run out of liquidity at some point. If your strategy needs to trade $10M per day in a stock that trades $5M per day, you are moving the market against yourself. Live performance collapses.

3. Regime change. Your backtest fits a historical window. Live trading happens in the future. The future does not match the past. Sometimes the future is better. Sometimes it is much worse.

4. Overfitting (CV failure). Even with proper purged walk-forward, your backtest Sharpe is optimistic. The CPCV article showed 5-15% optimism for honest methods. K-fold shows 30-60%. If you used a weak CV method, this gap is larger than the other three combined.

The relative magnitudes depend on strategy and asset class. For a low-frequency strategy on liquid US equities, slippage is small and regime change dominates. For a high-frequency strategy on a single name, capacity dominates. For a momentum strategy tested with k-fold CV, overfitting dominates.

The Empirical Shrinkage Rules

McLean and Pontiff (2016) studied 97 anomaly strategies from the academic literature. They found that post-publication, the strategies’ returns dropped by about 32% on average. The post-publication period is a useful proxy for live performance because it removes the publication-effect bias from backtests.

For Sharpe ratios specifically, Bailey and López de Prado (2014) showed how to evaluate the observed Sharpe against an expected-maximum benchmark using the Deflated Sharpe Ratio. DSR is a probability, not a percentage reduction or an adjusted Sharpe magnitude; the live-performance shrinkage below is a separate empirical-prior question.

These are empirical priors, not rules from AFML. As a practical heuristic, strategies that pass purged walk-forward CV with reasonable hyperparameters may realize 50-70% of backtest Sharpe live; strategies that only pass k-fold CV may realize 30-50%; strategies hand-tuned on the backtest with no CV may realize 20-40%. AFML Ch. 13 is the relevant cited chapter for its synthetic-data methodology.

These are not laws. They are empirical priors. Your strategy might be in the 80% bucket if you did everything right. It might be in the 10% bucket if you overfit.

How to Estimate Slippage Realistically

Your backtest slippage model is almost certainly too optimistic. Make it more realistic in four steps.

Step 1: Replace zero slippage with half-spread. Most backtests use closing prices and assume you get the close. You do not. Assume you get the midpoint of the bid-ask spread minus half the spread. For a $100 stock with a 2-cent spread, that is $99.99 instead of $100.00: 1 basis point per side, not half a basis point.

Step 2: Add market impact. Market impact scales with the square root of your participation rate. If you trade VV dollars in a name that trades ADVADV dollars per day, use an explicitly unit-labeled model such as:

Impact (bps)≈η⋅σ⋅VADV⋅10,000\text{Impact (bps)} \approx \eta \cdot \sigma \cdot \sqrt{\frac{V}{ADV}} \cdot 10{,}000

where σ\sigma is daily volatility as a decimal and η\eta is a dimensionless impact coefficient. With η=0.1\eta=0.1, a 2% volatile name, V = \1M$, and $ADV = $50M$, the impact is $0.1 \cdot 0.02 \cdot \sqrt{0.02} \cdot 10{,}000 \approx 2.8$ bps. If the coefficient is instead set to 10 without the bps conversion, the decimal result is 0.028, or 283 bps, not 2.8 bps.

Step 3: Add a delay penalty. Your signal fires at the close. Your order reaches the exchange at the close plus 50-500 milliseconds. By the time you fill, the price has moved. Assume 0.5 bps per trade for liquid names, more for illiquid names.

Step 4: Multiply by 2x for safety. Empirical studies show backtested slippage underestimates live slippage by about 2x. So if your model says 5 bps per trade, plan for 10 bps.

For a strategy with monthly rebalancing and 100 bps annual gross return, 10 bps per trade is 240 bps per year if you trade 24 names per year. That eats 24% of your gross return. Live Sharpe will be lower accordingly.

Capacity Modeling

Every strategy has a capacity. Beyond that capacity, the strategy stops working.

Capacity is determined by the position fraction, daily volume, annualization convention, and maximum participation rate. Define ff as the position fraction, ADVADV as dollar volume per day, pp as maximum participation, and τ\tau as the annual turnover convention. Under that convention:

Amax=f⋅ADV⋅252⋅pτA_{max} = \frac{f \cdot ADV \cdot 252 \cdot p}{\tau}

The units are dollars when ADVADV is dollars per day and τ\tau is dimensionless annual turnover. State whether τ\tau is turnover of the position or of total AUM before applying the formula; changing that convention changes the result.

For a 5% position in a $100M portfolio, the position's annual notional turnover at $\tau=1isis0.05 \cdot $100M = $5M.Ata. At a 50 share price, that is:

$5M252⋅$50≈397 shares/day\frac{\$5M}{252 \cdot \$50} \approx 397 \text{ shares/day}

not 40 shares/day. If ADV = \50M / $50 = 1M$shares/day, the participation rate is approximately$397/1{,}000{,}000 = 0.0397%$, below the 5% limit. Using the stated capacity convention, $f=0.05,, ADV=$50M,, p=0.05$, and $\tau=1givesgivesA_{max}=$31.5M$; a different turnover definition must be substituted explicitly rather than mixed into this calculation.

The honest rule: capacity shrinks as you scale. A strategy with Sharpe 2.0 at $10M AUM might have Sharpe 1.0 at $100M and 0.3 at $1B. Plan for capacity before you raise money.

The Regime Change Problem

Your backtest fits the historical regime. Live trading happens in a new regime.

Regimes are characterized by:

  • Volatility level (VIX at 12 vs VIX at 35)
  • Correlation structure (correlations rise in crises)
  • Trend vs mean-reversion (momentum works in trends, fails in chop)
  • Liquidity (credit spreads, bid-ask spreads, market depth)

You cannot predict regime change. You can stress test for it. That is the next article. For now, assume that the next 12 months will be different from the last 12 months in at least one important way.

If your strategy is regime-dependent (most are), live performance will deviate from backtest performance in the direction the regime moves. If you tested in a low-vol regime and we enter a high-vol regime, your mean-reversion strategy loses. If you tested in a high-vol regime and we enter a low-vol regime, your momentum strategy loses.

The shrinkage rule covers this implicitly. Live Sharpe = 50% of backtest Sharpe means “on average across regimes.” In a regime that favors your strategy, live Sharpe might be 80% of backtest. In a regime that hurts your strategy, live Sharpe might be 20% or negative.

The Deployment Checklist

Before deploying real money, run through this list. If any answer is “I do not know,” do not deploy.

1. CV method used. Walk-forward purged or better. If k-fold, your backtest Sharpe is optimistic by 30-60%. Apply a 0.5x shrinkage factor.

2. PBO score. Below 25% for the selection method. Above that, your best strategy is probably the luckiest loser.

3. Out-of-sample test. Hold out 20% of data. Run the final strategy on it. Sharpe should be within 30% of the in-sample Sharpe.

4. Realistic slippage. Backtest includes half-spread, market impact, and delay. Total slippage estimate is 2x the model estimate for safety.

5. Capacity check. At target AUM, participation rate per name is below 5%. Lower is better. Above 10%, expect serious impact.

6. Regime stress test. Strategy was tested across at least 2 regimes (e.g., 2008-2009 and 2017-2019). Sharpe is positive in both.

7. Deflated Sharpe Ratio. Reported Sharpe clears DSR > 0.95 after multiple-testing correction for the number of strategies tried.

8. Max drawdown estimate. Live drawdown will be 1.5-2x backtest drawdown. Can the investor tolerate it?

9. Liquidity stress. What happens if bid-ask spreads double? Your backtest Sharpe with 2x slippage is still positive?

10. Failure mode defined. What is the specific signal that the strategy has stopped working? Higher than usual drawdown? Regime change in volatility? Specific event?

If you can answer all 10 with real numbers, deploy a small amount first. 5% of target AUM. Run for 3 months. Compare live Sharpe to expected live Sharpe. If live Sharpe is within the expected range, scale up to 25% of target AUM. After another 3 months, scale to 100%.

The scaling ramp is not optional. Every quant shop that skipped the ramp has had to unwind a strategy that looked fine in the backtest and broke at full size.

The Honest Takeaway

Live performance is worse than backtest performance. The amount depends on how honest your backtest was, how much slippage you modeled, what regime you deploy into, and how big your AUM is relative to capacity.

Use the 50% rule as a starting point: expect live Sharpe to be half of backtest Sharpe. If your strategy still makes sense at half Sharpe, deploy. If it does not, find a different strategy.

The shrinkage is not a bug. It is the cost of being honest about what you do not know. The backtest tells you what worked in the past. Live trading tells you what works in the future. They are not the same number.

Plan accordingly.

Where the 50% Number Comes From

The “live Sharpe is 50% of backtest Sharpe” rule is not a law of nature. It is an empirical average from a small set of studies.

McLean and Pontiff (2016) studied 97 anomaly variables from the academic literature. Post-publication returns dropped by about 32% on average, and the drop was about 58% in the 5 years after publication versus the in-sample period. Translating returns to Sharpe (assuming similar volatility), that means live Sharpe is about 42% of in-sample Sharpe for these anomalies.

Bailey and López de Prado (2014) provide the Deflated Sharpe Ratio framework for selection bias and non-normal returns. It reports a probability after comparing the observed Sharpe with the expected maximum; it does not imply that the Sharpe itself should be reduced by a fixed 30-50%.

The 50-70% and 30-60% ranges above are heuristics and empirical priors, not a rule from AFML. AFML Ch. 13 is the chapter relevant to López de Prado’s synthetic-data methodology; any live/backtest shrinkage figures should be labeled as application-specific estimates.

Different studies, different numbers, similar conclusion: expect live Sharpe to be roughly half of backtest Sharpe. The exact number depends on your strategy class, asset class, and execution quality.

Capacity at Different AUM Levels

Capacity modeling tells you how strategy performance scales with AUM. The math:

Live Sharpe(A)≈Backtest Sharpe⋅(1−min⁡(1,AAcap)2)\text{Live Sharpe}(A) \approx \text{Backtest Sharpe} \cdot \left(1 - \min\left(1, \frac{A}{A_{\text{cap}}}\right)^2\right)

where AA is AUM and AcapA_{\text{cap}} is the strategy’s capacity. At AUM much smaller than capacity, live Sharpe matches backtest Sharpe. At AUM equal to capacity, live Sharpe drops to near zero. The quadratic decline is rough but matches empirical observations.

For a $1B capacity strategy:

  • $100M AUM (10% of capacity): live Sharpe ~ 99% of backtest Sharpe.
  • $300M AUM (30% of capacity): live Sharpe ~ 91% of backtest Sharpe.
  • $500M AUM (50% of capacity): live Sharpe ~ 75% of backtest Sharpe.
  • $700M AUM (70% of capacity): live Sharpe ~ 51% of backtest Sharpe.
  • $1B AUM (100% of capacity): live Sharpe ~ 0% of backtest Sharpe.

This is the capacity decay curve. Strategies that work at $100M may not work at $1B. Strategies that work at $10M definitely do not work at $100M if capacity is below $100M.

The capacity formula assumes market impact scales with the square root of participation rate (the standard assumption for liquid markets). For less liquid markets or larger orders, the scaling is closer to linear, and capacity decays faster.

Empirical Slippage Numbers by Asset Class

Different asset classes have different transaction cost structures. Some empirical priors:

US large-cap equities: 1-3 bps half-spread, 1-5 bps market impact for normal participation rates. Total cost per round-trip trade: 2-8 bps.

US small-cap equities: 5-15 bps half-spread, 5-20 bps market impact. Total: 10-35 bps.

US futures (ES, NQ): 0.5-1 tick half-spread, 1-3 ticks market impact. For ES at $5,000, that's $12.50-$37.50 per contract per side.

FX majors: 0.3-1 pip half-spread, negligible market impact at normal size. Total: 0.6-2 pips.

Crypto (BTC, ETH on major exchanges): 2-10 bps half-spread, 5-20 bps market impact. Total: 7-30 bps.

Crypto (alt-coins on smaller exchanges): 50-200 bps half-spread. Total: 100-400 bps.

For a daily strategy with monthly rebalancing and 100 bps gross return, the cost of trading matters enormously. At 5 bps per trade and 12 trades per year, cost is 60 bps (60% of gross). At 20 bps per trade, cost is 240 bps (240% of gross, so the strategy is unprofitable).

Your backtest cost estimate is probably wrong by 2x. If your model says 5 bps per trade, your live cost is closer to 10 bps per trade. Plan accordingly.

Real Failure Cases (Names Removed)

A quant shop ran a momentum strategy on US equities with $50M AUM. Backtest Sharpe: 1.8. Live Sharpe after 18 months: 0.4. Gap: 78%.

Causes:

  • Slippage was 2.5x the backtest estimate (model assumed 4 bps, live was 10 bps).
  • Capacity was lower than modeled (the strategy concentrated in mid-cap names with $20M ADV; at $50M AUM, participation rate was 8% per name).
  • Regime change: 2022 rate shock hurt momentum badly.

Lessons: use realistic slippage, model capacity conservatively, and do not assume the future regime matches the backtest regime.

A different shop ran a stat-arb strategy on US equities with $200M AUM. Backtest Sharpe: 2.1. Live Sharpe after 12 months: 0.9. Gap: 57%.

Causes:

  • Selection overfitting (PBO was 45%, the strategy was likely overfit).
  • Slippage close to model estimate (the strategy traded liquid large-caps).
  • Capacity adequate at $200M AUM.

Lessons: even with realistic slippage and capacity, selection overfitting can drive a 50% gap. Run PBO before you deploy.

The Takeaway

Live performance is worse than backtest performance. The amount depends on how honest your backtest was, how much slippage you modeled, what regime you deploy into, and how big your AUM is relative to capacity.

References: McLean and Pontiff (2016), “Does Academic Research Destroy Stock Return Predictability?” Journal of Finance, 71(1). López de Prado, Advances in Financial Machine Learning, Ch. 13 (Backtesting on Synthetic Data), ISBN 978-1-119-48208-6. Bailey and López de Prado (2014), “The Deflated Sharpe Ratio: Correcting for Selection Bias, Non-Normal Returns, and Correlation.” Harris, Trading and Exchanges, Ch. 21 (Market Impact and Transaction Costs), ISBN 978-0-19-514470-3.