PCA princomp help please

8 vues (au cours des 30 derniers jours)
bartu gulen
bartu gulen le 26 Déc 2011
Hi friends, I am using princomp to perform a pca algo on N stock returns going back M days.
my aim is to find a residual for the a basic multifactor model.
stockreturn1(t)= (beta1*factor1(t)) + (beta2*factor2(t))+ residual
I perform Princomp for N stocks (each column is time series for equity(n)). ..
I use princomp()'s "scores" matrix for factor1(t), and factor2(t), basicly scores(1:2,1).
I use princomp()'s coefs matrix for beta1, and beta2. coefs(1:2,1)
then I multiply matrices
fairreturn(t)=coefs(1:2,1)*transpose(scores(1:2,1))
finaly stockreturn1(t)- fairreturn(t)=residual
do you see anything wrong by using princomp in this way? this is some part of my code, An I wanna be sure that I dont get sth wrong fundamentally about princomp. thanks very much,Best...

Réponse acceptée

bym
bym le 26 Déc 2011
In my opinion, this is not an appropriate use for PCA as you have described it. Principal components are used to reduce the dimensions of the predictors against the regressed value.
For example, say you wanted to predict the Dow Jones Industrial Average, but didn't want to use all 30 stocks. You could perform a PCA on a n by 30 matrix and see which stocks have the highest influence (taking into account price weighting & scaling)on the index. Then calculate the prediction using the reduced number of stocks and subtracting the actual DJIA to get the residual
  1 commentaire
bartu gulen
bartu gulen le 27 Déc 2011
thanks very much for your answer.

Connectez-vous pour commenter.

Plus de réponses (1)

Richard Willey
Richard Willey le 27 Déc 2011
There are some examples where Principal Component Analysis is used for regression.
Traditional regression analysis assumes that all the variance in the model is associated with the Y variable. So-called orthogonal regression assigns the variance equally across both X and Y.
The following demo provides a good introduction to this technique:
  1 commentaire
bartu gulen
bartu gulen le 27 Déc 2011
great source for validation thanks very much richard.

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by