If returns were pure noise with no structure, the eigenvalues of their correlation matrix would still be spread over a known interval, the Marchenko-Pastur interval [λ−,λ+] with λ±=(1±q)2 and q=N/T. That interval is a ruler. An eigenvalue of the sample correlation matrix that lies above λ+ is larger than noise can explain, so it reflects a real common factor. Eigenvalues inside the interval are indistinguishable from noise: their eigenvectors are random directions and carry no information about the future.
Eigenvalue clipping acts on this verdict. Keep the eigenvalues above λ+, and replace all the others by their own average λˉnoise, which is the same as flattening the noise part of the spectrum. Averaging rather than setting them to zero keeps the trace, which for a correlation matrix is N, and keeps the matrix positive definite and so invertible, which an optimiser needs. Then rebuild Cclean=QΛ′QT and rescale it so that its diagonal is exactly 1, because the replacement slightly changes the diagonal. Two refinements are common. The market mode soaks up variance, so the noise level is really σ2≈1−λ1/N rather than 1. And the Marchenko-Pastur law assumes independent observations and thin tails, so the edge is a guide, not a precise test; check the cleaned matrix out of sample.
Four assets, sixteen observationsSuppose N=4, T=16, so q=0.25 and λ+=(1+0.5)2=2.25. The sample correlation matrix has eigenvalues 2.60,0.80,0.40,0.20 (they add up to N=4). Only 2.60 exceeds 2.25: one signal eigenvalue, the common market factor. The three others are noise, with average (0.80+0.40+0.20)/3=0.4667. The cleaned spectrum is 2.60,0.4667,0.4667,0.4667, which still adds up to 4 and has a smallest eigenvalue of 0.47 instead of 0.20, so its condition number falls from 13 to about 5.6. For a bigger problem with q=0.4 the upper edge is (1+0.4)2=2.665.
Edge: eigenvalues above (1+q)2 are signal; those inside the interval are noise.
Clipping: replace the noise eigenvalues by their average, keeping the trace and positive definiteness.
Finish: rebuild QΛ′QT and rescale the diagonal to 1; always validate out of sample.
An edge, not a verdictReal returns have fat tails and volatility that changes over time, which spreads the noise eigenvalues past the theoretical edge. Treat λ+ as a sensible starting threshold for how many components to keep, and let a holdout test decide whether cleaning actually helps. That is exactly what the capstone does.
Lab · what's graded
The upper edge15 pts
Counting signal eigenvalues10 pts
The replacement value15 pts
The trace stays10 pts
The clipping algorithm15 pts
Why the average15 pts
What an eigenvalue above the edge means20 pts
0/ 7 answered
1Numeric answer15 ptsNot answered
For N = 200 assets and T = 500 observations (q = 0.4), what is the upper Marchenko-Pastur edge (1+q)2? Give it to three decimals.
lambda+=accepted: ± 0.005
2Numeric answer10 ptsNot answered
A correlation matrix with q = 0.25 (upper edge 2.25) has eigenvalues 2.60, 0.80, 0.40 and 0.20. How many are above the edge?
signal=accepted: ± 0.01
3Numeric answer15 ptsNot answered
For the same matrix, the three noise eigenvalues 0.80, 0.40 and 0.20 are replaced by their average. What is the common value? Give it to four decimals.
average=accepted: ± 0.001
4Fill the blanks10 ptsNot answered
A correlation matrix of N=4 assets has trace 4. After clipping, the eigenvalues still add up to the same number. Fill in the blank.
i∑λi′=
5Order the steps15 ptsNot answered
Put the steps of eigenvalue clipping in order.
Drag to reorder, or focus an item, press Space to lift it, the arrow keys to move it and Space to drop it.
1Rescale so that the diagonal is exactly 1
2Replace eigenvalues at or below the edge by their average
3Compute the sample correlation matrix and its eigendecomposition
4Rebuild the matrix as QΛ′QT
5Find the edge (1+N/T)2
6Choice15 ptsNot answered
Why are the noise eigenvalues replaced by their average rather than by zero?
7Explain in words20 ptsNot answered
In one or two sentences, say what it means when an eigenvalue of the sample correlation matrix lies above the Marchenko-Pastur upper edge, and what it means when it lies inside.
Math modeKeyboard or LaTeX inputTask 1 of 7 · Ctrl ⏎ to check