L'analyse des composantes principales peut-elle être utilisée sur les cours des actions / données non stationnaires?

10

Je lis un exemple donné dans le livre, Machine Learning for Hackers . Je vais d'abord développer l'exemple, puis parler de ma question.

Exemple :

Prend un ensemble de données pour 10 ans de 25 actions. Exécute PCA sur les 25 cours de bourse. Compare la composante principale avec l'indice Dow Jones. Observe une très forte similitude entre PC et DJI!

D'après ce que je comprends, l'exemple ressemble plus à un jouet pour aider les débutants comme moi à comprendre l'efficacité d'un outil PCA!

Cependant, en lisant une autre source , je constate que les cours des actions ne sont pas stationnaires et l'exécution de l'ACP sur les cours des actions est absurde. Les sources d'où j'ai lu totalement ridiculisent l'idée de calculer la covariance et l'APC pour le cours des actions.

Questions :

  1. Comment l'exemple a-t-il si bien fonctionné? Le PCA du cours des actions et le DJI étaient très proches l'un de l'autre. Et les données sont des données réelles des cours des actions 2002-2011.

  2. Quelqu'un peut-il m'indiquer une ressource intéressante pour lire des données stationnaires / non stationnaires? Je suis un programmeur. J'ai une bonne formation en mathématiques. Mais je n'ai pas fait de maths sérieuses depuis 3 ans. J'ai recommencé à lire sur des choses comme des promenades aléatoires, etc.

claudius
la source

Réponses:

10

Cette pièce sert à répondre en partie à la question d'origine et à certaines des questions soulevées dans les commentaires de la réponse de @ JonEgil.

Les rendements financiers (logarithmiques) * sont approximativement (bien qu'il existe souvent une certaine hétéroscédasticité conditionnelle) - alors que les prix sont approximativement des marches aléatoires. Sous l'hypothèse de i . i . d . observations, l'analyse des composantes principales généraliserait directement de l'échantillon à la population (c.-à-d. que les composantes principales de l'échantillon estimeraient les composantes principales de la population), mais cela pourrait ne pas être valable sous non i . i . d . observations - voir ce filje.je..je.je..je.je... C'est pourquoi il est logique d'exécuter PCA sur des retours (logarithmiques) plutôt que sur des prix.

Ruey S. Tsay a plaidé pour l'exécution de l'ACP sur les résidus à partir de modèles économétriques de séries chronologiques financières, car les résidus sont normalement supposés être Je pense que cette idée pourrait être incluse quelque part dans son manuel "Multivariate Time Series Analysis with R and Financial Applications" (il m'a expliqué l'idée en personne, donc je ne sais pas où elle est écrite).je.je..

* Le rendement logarithmique du prix est défini comme r : = log ( P t ) - log ( P t - 1 ) = log P tPtr: =Journal(Pt)-Journal(Pt-1)=JournalPtPt-1r: =Pt-Pt-1Pt-1hh

Richard Hardy
la source
1
F(tje)JournalF(tje+1)F(tje)
1
@amoeba, j'ai ajouté une explication rapide et je dois partir maintenant. J'espère que je n'ai pas fait trop d'erreurs là-bas. Je serai de retour demain s'il y a d'autres problèmes.
Richard Hardy
1
Merci. Je vois maintenant que les retours (retours logarithmiques) sont essentiellement une dérivée (première différence) du logarithme des prix. Donc, si l'affirmation est que les retours sont iid et que les prix des journaux sont des marches aléatoires, alors cela a du sens. Cependant, je suis toujours surpris par l'exemple du Dow Jones et j'apprécierais tout éclaircissement supplémentaire.
amoeba
6

J'exécute ces types d'analyses de manière professionnelle et je peux confirmer qu'elles sont effectivement utiles. Mais assurez-vous d'analyser les retours et non les prix. Ceci est également mis en évidence par la critique dans Slender Means:

To perform PCA, your data have to have a meaningful covariance matrix 
(or correlation matrix, but the conditions are equivalent). They analyze 
stock prices, which are non-stationary time series variables.

Un cas d'utilisation typique dans notre analyse est de quantifier le risque systémique sur le marché. Plus il y a de co-mouvement sur le marché, moins vous avez vraiment de diversification dans votre portefeuille. Cela peut, par exemple, être quantifié par la quantité de variance décrite par la première composante principale. Qui est identique à la valeur de la première valeur propre.

Pour les données financières, on examine généralement une fenêtre mobile au fil du temps. Une certaine forme de facteur de désintégration qui pondère les observations plus anciennes est utile. Pour les données quotidiennes, entre 20 et 60 jours, pour les données hebdomadaires, peut-être 1-2 ans, tout cela en fonction de vos besoins.

Notez que pour les marchés financiers mondiaux, avec des dizaines ou des centaines de milliers de prix d'actifs changeant continuellement, un typicall ne peut pas exécuter une matrice de covariance 100K vs 100K. Au lieu de cela, le cas d'utilisation typique consiste à exécuter l'analyse par pays, par secteur ou d'autres groupes plus significatifs. Alternativement décomposer le rendement par un ensemble de facteurs sous-jacents (valeur, taille, qualité, crédit ...) et faire l'analyse PCA / Covariance sur ceux-ci.

Quelques articles intéressants incluent la discussion d'Attilio Meucci sur le nombre effectif de paris: http://papers.ssrn.com/sol3/papers.cfm?abstract_id=1358533

, et aussi Ledoit et Wolf's Honey I ont réduit l'échantillon de matrice de covariance http://www.math.umn.edu/~bemis/MFM/2014/spring/References/lw_shrinkage.pdf

Pour une introduction financière à la stationnarité, pourquoi ne pas commencer par Investopedia. Ce n'est pas rigoureux, mais transmet les idées principales.

Bonne chance!

EDIT: Voici un exemple de 3 actions montrant Apple, Google et Dow Jones avec des rendements quotidiens jusqu'en 2015. Le triangle supérieur montre une corrélation de rendement, le triangle inférieur montre une corrélation de prix.

Corrélation de rendement du triangle supérieur, corrélation des prix du triangle inférieur

Comme on peut le voir, Apple a une corrélation de prix plus élevée avec Dow (en bas à gauche 0,76) que la corrélation de retour (en haut à droite 0,66). Que pouvons-nous en tirer? Pas tant. Google a une corrélation de prix négative avec Apple (-0,28) et Dow (-0,27). Encore une fois, pas grand-chose à apprendre de cela. Cependant, les corrélations de retour nous indiquent qu'Apple et Google ont tous deux une corrélation assez élevée avec le Dow (0,66 et 0,53 respectivement). Cela nous dit quelque chose sur la co-circulation (changement de prix) des actifs dans un portefeuille. Ce sont des informations utiles.

L'essentiel est que, bien que la corrélation des prix puisse être tout aussi facilement calculée, elle n'est pas intéressante. Pourquoi? Parce que le prix d'un stock n'est pas intéressant en soi. Le changement de prix est cependant très intéressant.

Jon Egil
la source
Pouvez-vous développer davantage la partie principale de la question qui concerne la différence entre l'utilisation des prix et les retours? Je comprends que lors de l'utilisation des prix, la matrice de corrélation sera influencée par les non-stationnaires; Par exemple, si tous les prix augmentent linéairement, toutes les corrélations seront fortement positives. D'abord, pourquoi est-ce mauvais? En particulier, étant donné que Dow Jones est essentiellement un prix moyen et qu'il augmentera également (comme le fera PC1). Deuxièmement, comment l'utilisation des retours est-elle censée aider? Les «retours» AFAIK sont des rapports enregistrés des points voisins; pourquoi est-il significatif et comment est-il lié à Dow Jones?
amoeba
merci pour votre réponse informative. Mais cela ne répond pas à ma question. Je veux comprendre pourquoi l'analyse des prix fonctionne très bien pour l'ensemble de données dans le livre? Et l'amibe a soulevé beaucoup de questions valables.
claudius
1
@claudius: Le fait que PCA sur les prix donne quelque chose de similaire à Dow Jones qui est le prix moyen n'est pas surprenant du tout. Je me demande plutôt pourquoi PCA sur les retours produit un meilleur ajustement. Peut-être que Jon pourra clarifier.
amoeba
1
Je n'ai pas regardé le code réel exécuté en ML pour les pirates, mais chaque fois que quelqu'un dit analyser les prix, 99 fois sur 100, ce qu'il analyse en fait, ce sont les retours de journaux. Par exemple, aujourd'hui, le Dow Jones a perdu 162 points, tandis qu'Apple a perdu 0,88 dollar. Non seulement les chiffres sont très différents, mais ils sont même à une échelle différente, les points d'indexation par rapport à l'argent. Mais en termes de PCT, 0,91% et 0,75% sont comparables et les chiffres avec lesquels vous voulez travailler. Pour certaines analyses, on peut dé-tendance les données en soustrayant la moyenne. Dans les séries financières à court terme, cela est souvent ignoré, en supposant qu'il n'y ait pas de tendance.
Jon Egil
1
@amoeba, pour (partiellement) répondre aux questions posées dans les commentaires, les retours sont approximativement iid alors que les prix sont approximativement des promenades aléatoires. Les composants principaux ont leurs belles propriétés sous l'hypothèse d'observations iid. C'est pourquoi il est logique d'exécuter l'APC sur les retours plutôt que sur les prix. Ruey S. Tsay a plaidé pour l'exécution de l'ACP sur les résidus à partir de modèles économétriques de séries chronologiques financières, car les résidus sont normalement supposés être iid, je pense que cela pourrait être inclus quelque part dans son manuel "Multivariate Time Series Analysis with R and Financial Applications".
Richard Hardy