Skip to content
All library documents

PCA and Cholesky Methods for Monte Carlo Risk-Factor Sampling

Article Quant Q&A · Author: Alexey Kalmykov

Summary

The document compares principal component analysis and Cholesky decomposition for generating correlated normal risk factors in Monte Carlo simulation. When both methods use the same covariance matrix without reducing dimensions or altering components, they produce the same target distribution; the factorization itself does not make simulated dynamics more realistic. Cholesky may require less storage and multiplication effort because its matrix is triangular.

PCA changes the simulation when components are truncated, adjusted, or used with quasi-Monte Carlo and related variance-reduction methods. The discussion separates covariance estimation from sampling: estimation can be unreliable when observations are scarce relative to the number of factors, and a resulting matrix may be only positive semidefinite. Cholesky ordinarily requires positive definiteness, while eigenvalue adjustments can address this issue, though they alter the covariance structure. The answer also cautions that setting negative eigenvalues to zero is not enough to restore a valid correlation matrix; diagonal rescaling is needed, and better matrix-cleaning procedures exist.

Key ideas

  • Full-dimensional PCA and Cholesky sampling generate the same distribution when based on the same covariance matrix.
  • Dimensionality reduction and component-based variance reduction make PCA simulations differ from standard Cholesky sampling.
  • Cholesky uses a triangular factor, which can reduce storage and multiplication requirements.
  • Covariance estimation problems can produce semidefinite matrices that standard Cholesky decomposition cannot handle.
  • After clipping negative eigenvalues, correlation matrices need diagonal rescaling to restore unit variances.

Tags

Full text
# Principle Component Analysis vs. Cholesky Decomposition for MonteCarlo


# Principle Component Analysis vs. Cholesky Decomposition for MonteCarlo












Let's assume we have a portfolio containing large number (~500) of risk factors. We want to simulate the portfolio dynamics. PCA based simulation would be faster as we can reduce the dimensionality. Are there any other advantages of PCA-based approach Monte Carlo over Monte Carlo using Cholesky Decomposition (e.g. stability, more realistic dynamics)? I've seen papers dealing with seasonality effect in commodity forward curves, application to yield curves and an article here. However, I'm looking for some more in depth on the topic. Any references or practical experience is welcome.

## Answer by Quartz (score 8, accepted)

https://quant.stackexchange.com/a/8331

Apart from numerical stability errors, Cholesky and PCA (without dim reduction) shall produce exactly the same distribution, they are two symmetric decomposition of the same covariance matrix and thus are equivalent for transforming a standard normal vector. Of course when doing different things with PCA components, such as in dim reduction or quasi Monte Carlo sampling or related variance reduction methods, the equivalence is lost by definition, but it is there for standard sampling. One advantage of Cholesky might be that storing and multiplying a triangular matrix requires less resources than a full square one. Pivoting is used for Cholesky if the covariance matrix is not PD (see this paper by Higham).

One source of confusion in the links might be the lack of clear separation between estimation and sampling. After estimation you shall have a PSD matrix and the decomposition used for sampling has nothing to do with it. (Methods for estimation can also be better than a naive sample covariance, there is a huge literature on this.)

Note that in the second link posted the procedure to "clean" non PSD matrices to get a correlation matrix forgets one step after zeroing negative eigenvalues: you must also scale rows&columns so as to recover ones on the diagonal. And there are also better methods to do that cleaning, this is not returning the nearest PSD correlation matrix. Also that page is poorly written and confusing imho, if not ripe with errors, look for something else, e.g. Glasserman's Monte Carlo book.

## Answer by John (score 2)

https://quant.stackexchange.com/a/8332

When estimating covariance matrices, you run into problems as the number of assets/risk factors approaches or exceeds the number of observations. Some eigenvalues will go to zero, or be very small. This will mean that the covariance matrix is positive semi-definite instead of positive definite. Since the Cholesky decomposition requires a positive definite matrix, this leads to problems. However, you can adjust the eigenvalues in a PCA approach to change the covariance matrix to become positive definite. You could simulate from the PCA (for lack of a better way to phrase it) or use Cholesky on the adjusted covariance matrix.

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.