Exponentially Weighted Covariance and Half-Life Choice
Weighting recent returns more heavily than old ones when estimating a covariance matrix lets it track changing risk — but the half-life you choose trades off responsiveness against noise, and getting it wrong in either direction has real costs.
Prerequisites: The Sample Covariance Matrix and Eigenvalue Bias
An equal-weighted covariance matrix over the last two years treats a return from 500 days ago exactly like yesterday's. That's strange: markets change regime, volatility clusters, and correlations that held two years ago may have broken down since. Exponentially weighted covariance fixes this by giving recent observations more weight and older ones progressively less, so the estimate adapts as markets change. But this comes at a cost that's easy to underestimate: the faster you make the matrix adapt, the fewer effective observations it's really using at any moment, and the noisier the estimate becomes. Choosing the decay rate — usually expressed as a half-life — is a real trade-off, not a free upgrade.
An analogy: a rolling weather forecast versus a seasonal average
Imagine forecasting tomorrow's temperature. You could average every day from the last five years (stable, but slow to notice a heatwave starting this week) or just the last three days (catches the heatwave instantly, but jumpy — one unusually cool or warm day swings the forecast a lot). Exponentially weighted averaging is a dial between these extremes: a long half-life behaves like the five-year average, a short one like the three-day average. There's no universally correct setting — it depends on how fast the thing you're forecasting actually changes and how much noise you can tolerate.
The mechanics, one symbol at a time
Let be the return vector at time and be the decay factor. The exponentially weighted covariance estimate at time is
where each past observation is weighted by — geometrically shrinking as (the number of periods back) grows. In plain English: today's covariance estimate is a weighted sum of all past outer products of returns, with weights that fall off exponentially, so recent data dominates and old data fades but is never fully discarded. The decay factor is usually reparametrized as a half-life , the number of periods after which a weight has fallen to half its original value:
In plain English: the half-life is a more interpretable dial than directly — "an observation from 60 days ago counts for half as much as yesterday's" is easier to reason about than "." A short half-life (say, 20 days) makes the matrix track recent volatility and correlation shifts quickly; a long half-life (say, 250 days) makes it behave closer to an equal-weighted estimate over roughly a year, smoother but slower to react.
The effective sample size of an exponentially weighted estimate — roughly , or approximately for a half-life of — tells you how much independent information the estimate is really drawing on. A short half-life doesn't just react faster; it is genuinely estimated from fewer effective data points, which is why it's noisier.
Worked example 1: a regime shift
Suppose two assets have a stable correlation of 0.3 for a year, then a market shock pushes their true correlation to 0.8 starting 10 days ago. With a 20-day half-life (), after 10 more days the weight on data from before the shift has fallen to roughly relative weight remaining on old-regime data versus new — the estimate will already have moved meaningfully toward 0.8. With a 120-day half-life (), the same 10 days of new data barely dents the weighted average — — so the estimate is still dominated by the stale 0.3 correlation, badly lagging the true regime shift.
Worked example 2: the noise cost of reacting fast
Now suppose correlation is genuinely stable at 0.3 with no regime shift, just ordinary sampling noise in daily returns. With a 20-day half-life, the effective sample size is roughly observations — small enough that random day-to-day noise causes the estimated correlation to bounce visibly, say between 0.15 and 0.45 over a few weeks, even though nothing structural changed. With a 120-day half-life, the effective sample size is roughly observations, and the estimate stays much closer to 0.3 throughout, because it's averaging over far more effective data. The fast estimator's extra responsiveness in worked example 1 is bought at the price of exactly this extra noise here — there's no setting that gives you both for free.
What this means in practice
Risk models used for daily VaR or portfolio hedging typically favor shorter half-lives (weeks to a couple months) because reacting to a real volatility spike quickly matters more than smoothness. Strategic asset allocation or long-horizon covariance estimates typically favor longer half-lives (many months to a year-plus) because stability and lower noise matter more than catching short-lived fluctuations. Many production risk systems blend two exponentially weighted estimates at different half-lives — one fast, one slow — precisely because no single half-life is right for every use case.
The half-life of an exponentially weighted covariance estimator is a dial between responsiveness and noise: shorter half-lives track regime changes faster but are estimated from fewer effective observations and are noisier; longer half-lives are smoother and more stable but lag real changes in risk.
Don't pick a half-life by only checking how fast it reacts to a known historical regime shift and calling that "better." A short half-life that reacted well to one shift is also constantly reacting to pure noise in calm periods, producing spurious swings in estimated risk and correlation that can trigger unnecessary rebalancing or hedge adjustments. Evaluate a half-life choice on both its responsiveness during real shifts and its stability during calm periods, not one alone.
Related concepts
Practice in interviews
Further reading
- RiskMetrics Technical Document, J.P. Morgan (1996)
- Ledoit and Wolf, 'Nonlinear Shrinkage of the Covariance Matrix for Portfolio Selection', JFEC (2017)