Quant Memo
Advanced

The Marchenko-Pastur Law

The known distribution of eigenvalues you'd see from a covariance matrix built entirely from noise, used as a baseline to tell which eigenvalues of a real sample covariance matrix reflect genuine structure versus statistical noise.

Prerequisites: Eigenvalues & Eigenvectors, The Sample Covariance Matrix and Eigenvalue Bias

Estimate the covariance matrix of, say, 500 stocks from 1000 days of returns, and its eigenvalues will span a wide range even if the true underlying correlations were exactly zero for every pair — pure noise still produces a spread-out eigenvalue spectrum just from sampling randomness, purely because you have a finite amount of data relative to the number of assets. If you don't know what that noise-only spectrum looks like, you can't tell which eigenvalues in your real, estimated covariance matrix represent genuine risk factors and which are indistinguishable from what randomness alone would produce. The Marchenko-Pastur law gives you exactly that noise-only baseline, in closed form.

An analogy: knowing the shuffle before you spot a rigged deck

If you want to tell whether a deck of cards has been rigged, you first need to know precisely what a fairly shuffled deck's statistics look like — otherwise any pattern might look suspicious even when it's pure chance. The Marchenko-Pastur law is the "fair shuffle" baseline for covariance matrix eigenvalues: it tells you exactly what range of eigenvalues to expect from a covariance matrix estimated from purely random, uncorrelated data, given only how many assets and how many time periods you used. Any real eigenvalue that falls outside that predicted range is the signal that something non-random — a genuine factor — is present.

The math, one symbol at a time

For a sample covariance matrix built from NN assets and TT time periods of independent, identically distributed, uncorrelated returns (each with variance σ2\sigma^2), as both NN and TT grow with ratio q=N/Tq = N/T fixed, the eigenvalues fill out a known density supported on the interval

[σ2(1q)2,  σ2(1+q)2].\left[\sigma^2(1-\sqrt{q})^2, \; \sigma^2(1+\sqrt{q})^2\right].

In words: even with zero true correlation anywhere, the estimated eigenvalues won't all cluster at σ2\sigma^2 — they spread out over this whole band, and the band gets wider the closer NN is to TT (more assets relative to history means noisier eigenvalues). Any eigenvalue of a real covariance matrix that pokes out above the upper edge σ2(1+q)2\sigma^2(1+\sqrt{q})^2 is a candidate for a genuine factor; eigenvalues sitting inside the band are statistically indistinguishable from pure noise.

Worked example 1: computing the noise band

Suppose N=250N = 250 stocks, T=1000T = 1000 days, and each stock has variance σ2=1\sigma^2 = 1 (standardized returns). Then q=250/1000=0.25q = 250/1000 = 0.25, q=0.5\sqrt{q} = 0.5. The noise band is [(10.5)2,(1+0.5)2]=[0.25,2.25][(1-0.5)^2, (1+0.5)^2] = [0.25, 2.25]. Even if every true pairwise correlation were exactly zero, eigenvalues of the estimated 250×250250\times250 correlation matrix would still spread from about 0.25 up to 2.25 purely from finite-sample noise — a nearly tenfold range, entirely spurious.

Worked example 2: separating signal from noise in a real matrix

A real 250-stock correlation matrix estimated over 1000 days has its largest eigenvalue at 45 (far outside the [0.25, 2.25] noise band — clearly a genuine market factor), a second-largest at 3.1 (also outside, likely a genuine sector or style factor), and the remaining 248 eigenvalues scattered between about 0.2 and 2.3 — consistent with the Marchenko-Pastur noise band. The standard cleaning procedure keeps the top 2 eigenvalues (and their eigenvectors) as genuine signal, replaces the remaining 248 with values consistent with pure noise (often their average), and reconstructs a "denoised" correlation matrix that's far more stable for portfolio optimization than the raw estimate.

Distribution · normal
0.401.001.60μvalue →
Within ±1σ 68.3%mean μ 1.00std σ 0.30

The Marchenko-Pastur density has a similar "expected spread from pure randomness" flavor to this normal curve — adjust the parameters to see how a purely statistical baseline still produces a spread of values with no genuine signal behind any one of them.

MP noise band [0.25, 2.25]: 248 eigenvalues λ=45 (signal) λ=3.1 (signal)
Most eigenvalues fall inside the range pure randomness predicts; only eigenvalues clearly outside that band — here 45 and 3.1 — are treated as genuine factor structure.

What this means in practice

The Marchenko-Pastur law is the theoretical basis for eigenvalue cleaning of large covariance matrices before they're used in portfolio optimization — without it, an optimizer will happily assign large weights based on eigenvalues (and their associated "diversification" directions) that are pure sampling noise, producing portfolios that look great in-sample and fail out-of-sample. It's the diagnostic tool behind Eigenvalue Clipping and Rotationally Invariant Estimators, one of the standard covariance-cleaning techniques used in production risk systems.

Even a covariance matrix built from purely uncorrelated random data has eigenvalues spread across a known band, σ2[(1q)2,(1+q)2]\sigma^2[(1-\sqrt q)^2, (1+\sqrt q)^2] where q=N/Tq=N/T — only real eigenvalues that fall outside this band should be trusted as genuine structure rather than sampling noise.

The Marchenko-Pastur band assumes the true underlying correlations are exactly zero and returns are independent across time — it's a null-hypothesis baseline, not a universal cleaning recipe. If returns have fat tails, volatility clustering, or genuine (if small) correlation structure spread across many small eigenvalues, the simple band comparison can be too aggressive, discarding real (if weak) signal along with noise. Treat the band as a starting diagnostic, not a mechanical cutoff to apply without judgment, especially when NN is close to TT and the band itself is wide.

Related concepts

Practice in interviews

Further reading

  • Marchenko & Pastur (1967), Mat. Sb.
  • Bouchaud & Potters, Theory of Financial Risk and Derivative Pricing, ch. 15
ShareTwitterLinkedIn