Quant Memo
Core

Warmup and Burn-In Periods

The practice of discarding the earliest stretch of a backtest, where rolling estimators haven't yet seen enough history to be meaningful, so unstable early numbers don't leak into performance statistics.

Prerequisites: Walk-Forward Analysis

A strategy that uses a 252-day rolling volatility estimate or a 60-day rolling regression cannot produce a trustworthy signal on day one of a backtest — there simply isn't enough history yet for the rolling window to be full. If the backtest naively starts trading from day one anyway, its earliest trades are driven by an estimator built on a handful of noisy observations, and those distorted early trades get mixed into the same performance statistics as the properly-estimated later ones.

The fix is a warmup or burn-in period: run the strategy's estimators from the true start of the data, but don't let it place trades — or don't count any trades it places — until every rolling window it depends on has filled up. If the slowest input is a 252-day rolling covariance matrix, the burn-in period should be at least 252 days, and often longer if any downstream calculation (a regime classifier built on that covariance, say) itself needs a stretch of stable input before it stabilizes.

The trap to watch for is silent under-counting: it's easy to set burn-in to match the longest single rolling window used directly, while forgetting that a signal computed from several chained rolling calculations needs the sum of their warmup requirements, not just the largest one, because each stage needs its own predecessor to already be stable before it can start producing sensible output.

A backtest's earliest stretch must be discarded, or excluded from performance stats, until every rolling estimator the strategy depends on has enough history to be reliable — the required burn-in length is driven by the slowest, and by any chained, rolling calculation, not just the most obvious one.

Related concepts

Further reading

  • Chan, Algorithmic Trading, ch. 3
ShareTwitterLinkedIn