I am trying to understand how low-rank approximation techniques such as PCA, factor analysis, total least squares, orthogonal regression, etc could be used in portfolio optimisation. Say I have a portfolio of n assets, I could break these down into 2-3 principal components (using PCA) achieving say 95% of the variance. Why would this be useful though? (Other than reduced time complexity of subsequent calculations). It would tell me that asset A is important in my portfolio since I am able to see the correlation between assets via the covariance/correlation matrix. I could also use it in fundamental analysis to determine which factors drive the price of a stock, by looking at the company's revenue, EBITDA, p/e, rev growth, etc. Despite this, I don't see how PCA or other low-rank approximation fundamentally improve portfolio optimisation beyond what the covariance matrix does. Are there any uses for example in forecasting of the stock price? Also, how do different low-rank approximation techniques differ in their approximation accuracy?

Thanks a lot.


I don't think that PCA works how you think it does. In coming up with orthogonal vectors (i.e. the eigenvectors of the covariance matrix), Principal Component Analysis generally ends up with each component as a linear combination of your original assets. So while you are reducing the dimension, it doesn't necessarily mean that you end up with fewer assets in the pool. My understanding is that the benefit of performing PCA for Asset Management is two-fold:

The first was already mentioned: convenience in working with an otherwise costly covariance matrix.

The second is that the components output by PCA are orthogonal, so you have a diagonal covariance matrix and uncorrelated bundles of assets.

edit: Just saw the second question, "How do different approximation techniques differ in their approximation accuracy"

If the data lives on or near a linear subspace then PCA (or MDS, multi-dimensional scaling) should work perfectly well. If the data lives in a non-linear manifold then you might consider some other dimension reduction technique -- Locally Linear Embedding, Stochastic Neighborhood Embedding, and isoMap come to mind. The primary benefit of PCA (and MDS) is that they are exceptionally fast.

As far as approximation accuracy goes, it depends on what you're looking for. PCA attempts to account for a pre-specified amount of variance using fewer dimensions. MDS (and most of the others) attempt to maintain local structure in the data; i.e. points that are close in high-dimensional space are also close in low-dimensional space. Both have their uses provided you're clear on what you're looking for.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.