J'ai tendance à entendre que généralement les 3 valeurs propres les plus importantes sont les plus importantes, tandis que celles proches de zéro sont le bruit
Vous pouvez tester cela. Voir l'article lié dans cet article pour plus de détails. Encore une fois, si vous traitez avec des séries chronologiques financières, vous voudrez peut-être d'abord corriger la leptokurticité (c.-à-d. Considérer la série de rendements ajustés en fonction du marché, pas les rendements bruts).
J'ai vu quelques articles de recherche enquêter sur la façon dont les distributions de valeurs propres d'origine naturelle diffèrent de celles calculées à partir de matrices de corrélation aléatoires (encore une fois, en distinguant le bruit du signal).
Edward:> Habituellement, on le ferait dans l'autre sens: regardez la distribution multivariée des valeurs propres (des matrices de corrélation) provenant de l'application que vous voulez. Une fois que vous avez identifié un candidat crédible pour la distribution des valeurs propres, il devrait être assez facile de générer à partir d'eux.
La meilleure procédure pour identifier la distribution multivariée de vos valeurs propres dépend du nombre d'actifs que vous souhaitez considérer simultanément (c'est-à-dire quelles sont les dimensions de votre matrice de corrélation). Il y a une astuce intéressante si ( étant le nombre d'actifs).pp≤10p
Modifier (commentaires de Shabbychef)
procédure en quatre étapes:
- Supposons que vous ayez sous-échantillons de données multivariées. Vous avez besoin d'un estimateur de la matrice variance-covariance pour chaque sous-échantillon (vous pouvez utiliser l'estimateur classique ou une alternative robuste comme le MCD rapide , qui est bien implémenté dans matlab, SAS, S, R, ...). Comme d'habitude, si vous traitez avec des séries chronologiques financières, vous voudrez peut-être considérer la série de rendements ajustés en garch, et non les rendements bruts.˜ C j jj=1,...,JC~jj
- Pour chaque sous-échantillon , calculez , ..., , les valeurs propres de .˜ Λ j = log ( ˜ λ j 1 ) log ( ˜ λ j p ) ˜ C jjΛ~j= log(λ~j1)log(λ~jp)C~j
- Calculez , la coque convexe de la matrice dont la j-ième entrée est (encore une fois, cela est bien implémenté dans Matlab, R, ...) .J × p ˜ Λ jCV(Λ~)J×pΛ~j
- Dessinez des points au hasard depuis l'intérieur du (cela se fait en donnant du poids à chacun des bords du où , où est un tirage d'une distribution exponentielle unitaire (plus de détails ici ).CV(Λ~)wiCV(Λ~)wi=γi∑pi=1γiγi
Une limitation est que le calcul rapide de la coque convexe d'une série de points devient extrêmement lent lorsque le nombre de dimensions est supérieur à 10.J≥2