Skip to content

Denoising High-Dimensional Covariance Matrices

When the number of assets is large relative to the number of dates, sample covariance estimates become unstable. The notebooks inspect the eigenvalue spectrum, clean the noisy part, and test the effect on portfolio weights and risk.

The central relation

For centered return matrix XcX_c, the sample covariance is

S=1T−1XcTXc,rank⁡(S)≤min⁡{N,T−1}.S=\frac{1}{T-1}X_c^{\mathsf T}X_c,\qquad \operatorname{rank}(S)\leq\min\{N,T-1\}.

XcX_c contains TT dates and NN assets, SS is the NN by NN sample covariance matrix, and the rank limit records how many independent directions the sample can identify.

Separating covariance signal from estimation noise

The spectrum plot compares sample eigenvalues with the estimated noise region. The rolling experiment shows how cleaning changes portfolio-weight stability.

Sample covariance eigenvalues and the estimated Marchenko-Pastur noise region.

Eigenvalues inside the estimated noise region are not interpreted one by one. The cleaning rule treats their shared level separately from stronger directions.

Rolling portfolio-weight changes with sample and denoised covariance estimates.

The rolling comparison measures how strongly portfolio weights change when the estimation window moves through public observations.

Denoising reduces one source of estimation variation. It cannot recover a covariance structure that is absent from the sample or stable only under an incorrect model.

Notebooks

1. Sample Covariance When Variables Are Many
2. Separating signal eigenvalues from noise
3. Testing portfolio sensitivity to covariance cleaning