Kann die Hauptkomponentenanalyse für Aktienkurse / instationäre Daten verwendet werden?

10

Ich lese ein Beispiel aus dem Buch Maschinelles Lernen für Hacker . Ich werde zuerst auf das Beispiel eingehen und dann über meine Frage sprechen.

Beispiel :

Nimmt einen Datensatz für 10 Jahre mit 25 Aktienkursen. Läuft PCA auf den 25 Aktienkursen. Vergleicht die Hauptkomponente mit dem Dow Jones Index. Beobachtet eine sehr starke Ähnlichkeit zwischen PC und DJI!

Soweit ich weiß, ähnelt das Beispiel eher einem Spielzeug, um Neulingen wie mir zu helfen, zu verstehen, wie effektiv ein PCA-Tool ist!

Wenn ich jedoch aus einer anderen Quelle lese , sehe ich, dass die Aktienkurse nicht stationär sind und es absurd ist, PCA auf Aktienkursen durchzuführen. Die Quellen, aus denen ich gelesen habe, machen die Idee, Kovarianz und PCA für Aktienkurse zu berechnen, total lächerlich.

Fragen :

  1. Wie hat das Beispiel so gut funktioniert? Der PCA von Aktienkursen und DJI lagen sehr nahe beieinander. Und die Daten sind reale Daten von den Aktienkursen 2002-2011.

  2. Kann mich jemand auf eine nette Ressource zum Nachlesen stationärer / instationärer Daten hinweisen? Ich bin Programmierer. Ich habe einen guten mathematischen Hintergrund. Aber ich habe 3 Jahre lang nicht ernsthaft nachgerechnet. Ich habe wieder angefangen, über Dinge wie zufällige Spaziergänge usw. zu lesen.

claudius
quelle

Antworten:

10

Dieses Stück dient dazu, die ursprüngliche Frage und einige der Fragen, die in Kommentaren zu @ JonEgils Antwort aufgeworfen wurden, teilweise zu beantworten.

Finanzielle (logarithmische) Renditen * sind ungefähr (obwohl es oft eine bedingte Heteroskedastizität gibt) - während die Preise ungefähr zufällige Spaziergänge sind. Unter der Annahme von Beobachtungen würde sich die Hauptkomponentenanalyse direkt von Stichprobe zu Population verallgemeinern (dh die Hauptkomponenten der Stichprobe würden die Populationshauptkomponenten schätzen), dies gilt jedoch möglicherweise nicht für nicht- Beobachtungen - siehe diesen Thread . Aus diesem Grund ist es sinnvoll, PCA auf (logarithmischen) Renditen anstatt auf Preisen auszuführen.i.i.d.i.i.d.i.i.d.

Ruey S. Tsay hat sich dafür ausgesprochen, PCA für Residuen aus ökonometrischen Modellen von Finanzzeitreihen , da Residuen normalerweise als angenommen werden Ich denke, dass diese Idee irgendwann in seine "Multivariate Zeitreihenanalyse mit R- und Finanzanwendungen" aufgenommen werden könnte. Lehrbuch (er erklärte mir die Idee persönlich, daher bin ich mir nicht sicher, wo sie geschrieben steht).i.i.d.

* Die logarithmische Rendite auf den Preis ist definiert als . Logarithmische Rückgaben werden der anstelle von prozentualen Rückgaben verwendet. . Die praktische Funktion logarithmischer Rückgaben besteht darin, dass Sie einzelne logarithmische Rückgaben zusammenfassen können, um die gesamte logarithmische Rückgabe über Zeiträume zu erhalten, während dies nicht für prozentuale Rückgaben gilt. Für relativ kleine prozentuale Renditen (was im Finanzwesen üblich ist) sind logarithmische Renditen ungefähr gleich prozentuale Renditen, da der Logarithmus ungefähr eine Einheitssteigung um eins hat.Ptr:=log(Pt)log(Pt1)=logPtPt1r:=PtPt1Pt1hh

Richard Hardy
quelle
1
+1, das ist interessant. Können Sie etwas näher darauf eingehen, was eigentlich eine "Rückkehr" ist? Mein wirtschaftswissenschaftliches Wissen ist Null; Ich habe gegoogelt und festgestellt, dass, wenn der Preis durch Zeitreihen angegeben wird, die Renditen als . Ist das korrekt? Wenn ja, warum dann der Logarithmus? Ich würde Ihr Argument über die Beziehung zwischen iid-Renditen und zufälligen Walk-Preisen verstehen, wenn Renditen als Unterschiede definiert würden. Abgesehen davon ist DJ der Durchschnittspreis, daher verstehe ich immer noch nicht, warum PC1 der Renditen besser zu PC1 der Preise passen sollte, selbst wenn Sie über iid nachdenken. log f ( t i + 1 )f(ti)logf(ti+1)f(ti)
Amöbe sagt Reinstate Monica
1
@amoeba, ich habe eine kurze Erklärung hinzugefügt und muss jetzt gehen. Ich hoffe, ich habe dort nicht zu viele Fehler gemacht. Ich werde morgen zurück sein, wenn es weitere Probleme gibt.
Richard Hardy
1
Vielen Dank. Ich sehe jetzt, dass Renditen (logarithmische Renditen) im Wesentlichen eine Ableitung (erste Differenz) des Logarithmus der Preise sind. Wenn also die Behauptung lautet, dass die Renditen iid sind und die Protokollpreise zufällige Spaziergänge sind, dann ist dies sinnvoll. Das Beispiel von Dow Jones überrascht mich jedoch immer noch und ich würde mich über weitere Klarstellungen freuen.
Amöbe sagt Reinstate Monica
6

Ich führe diese Arten von Analysen professionell durch und kann bestätigen, dass sie tatsächlich nützlich sind. Stellen Sie jedoch sicher, dass Sie die Renditen und nicht die Preise analysieren . Dies wird auch durch die Kritik in Slender Means hervorgehoben:

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.

Ein typischer Anwendungsfall in unserer Analyse ist die Quantifizierung des Systemrisikos auf dem Markt. Je mehr Co-Bewegung auf dem Markt ist, desto weniger Diversifikation haben Sie wirklich in Ihrem Portfolio. Dies kann zum Beispiel durch den Betrag der Varianz quantifiziert werden, der durch die erste Hauptkomponente beschrieben wird. Welches ist identisch mit dem Wert des ersten Eigenwerts.

Bei Finanzdaten wird normalerweise ein sich im Laufe der Zeit bewegendes Fenster untersucht. Eine Form des Zerfallsfaktors, der ältere Beobachtungen heruntergewichtet, ist nützlich. Für tägliche Daten zwischen 20 und 60 Tagen, für wöchentliche Daten zwischen 1 und 2 Jahren, je nach Ihren Anforderungen.

Beachten Sie, dass für globale Finanzmärkte mit sich ständig ändernden Zehntausenden oder Hunderttausenden von Vermögenspreisen ein typischer Anruf keine Kovarianzmatrix von 100.000 gegenüber 100.000 ausführen kann. Stattdessen besteht ein typischer Anwendungsfall darin, die Analyse pro Land, pro Sektor oder anderen aussagekräftigeren Gruppen durchzuführen. Alternativ können Sie die Rendite nach einer Reihe von zugrunde liegenden Faktoren (Wert, Größe, Qualität, Kredit ...) aufschlüsseln und die PCA / Kovarianz-Analyse für diese durchführen.

Einige nette Artikel enthalten Attilio Meuccis Diskussion über die effektive Anzahl von Wetten: http://papers.ssrn.com/sol3/papers.cfm?abstract_id=1358533

und auch Ledoit und Wolfs Honig Ich habe die Kovarianzmatrix der Probe geschrumpft http://www.math.umn.edu/~bemis/MFM/2014/spring/References/lw_shrinkage.pdf

Beginnen Sie mit Investopedia, um eine finanziell orientierte Einführung in die Stationarität zu erhalten. Es ist nicht streng, sondern vermittelt die Hauptideen.

Viel Glück!

BEARBEITEN: Hier ist ein 3-Aktien-Beispiel, das Apple, Google und Dow Jones mit täglichen Renditen bis 2015 zeigt. Das obere Dreieck zeigt die Korrelation der Rendite, das untere Dreieck zeigt die Korrelation der Preise.

Korrelation der Rendite des oberen Dreiecks, Korrelation des Preises des unteren Dreiecks

Wie zu sehen ist, hat Apple eine höhere Preiskorrelation mit Dow (unten links 0,76) als die Renditekorrelation (oben rechts 0,66). Was können wir daraus lernen? Nicht viel. Google hat eine negative Preiskorrelation mit Apple (-0,28) und Dow (-0,27). Auch hier gibt es nicht viel zu lernen. Die Renditekorrelationen zeigen jedoch, dass Apple und Google beide eine ziemlich hohe Korrelation mit dem Dow aufweisen (0,66 bzw. 0,53). Das sagt etwas über die Ko-Bewegung (Preisänderung) von Vermögenswerten in einem Portfolio aus. Das sind nützliche Informationen.

Der Hauptpunkt ist, dass die Preiskorrelation zwar genauso einfach berechnet werden kann, aber nicht interessant ist. Warum? Weil der Kurs einer Aktie an sich nicht interessant ist. Der Preis Änderung ist jedoch sehr interessant.

Jon Egil
quelle
Können Sie bitte den Hauptteil der Frage näher erläutern, bei dem es um den Unterschied zwischen der Verwendung von Preisen und Renditen geht? Ich verstehe, dass bei der Verwendung von Preisen die Korrelationsmatrix durch die Nichtstationaritäten beeinflusst wird. Wenn beispielsweise alle Preise linear wachsen, sind alle Korrelationen stark positiv. Erstens, warum ist es schlecht? Insbesondere angesichts der Tatsache, dass Dow Jones im Wesentlichen ein Durchschnittspreis ist und auch wachsen wird (wie PC1). Zweitens, wie soll die Verwendung von Retouren helfen? AFAIK "Rückgaben" sind protokollierte Verhältnisse benachbarter Punkte; Warum ist es sinnvoll und in welcher Beziehung steht es zu Dow Jones?
Amöbe sagt Reinstate Monica
Vielen Dank für Ihre informative Antwort. Aber es beantwortet meine Frage nicht. Ich möchte verstehen, warum die Preisanalyse für den Datensatz im Buch sehr gut funktioniert. Und Amöbe hat viele berechtigte Fragen aufgeworfen.
Claudius
1
@claudius: Die Tatsache, dass PCA auf Preise etwas Ähnliches wie Dow Jones gibt, was der Durchschnittspreis ist, ist überhaupt nicht überraschend. Ich frage mich eher, warum PCA bei Retouren besser passt. Vielleicht kann Jon das klären.
Amöbe sagt Reinstate Monica
1
Ich habe mir nicht den tatsächlichen Code angesehen, der in ML für Hacker ausgeführt wird, aber wenn jemand sagt, dass er Preise analysiert, sind 99-mal von 100, was er tatsächlich analysiert, Protokollrückgaben. Zum Beispiel ist der Dow heute um 162 Punkte gefallen, während Apple um 0,88 Dollar gefallen ist. Die Zahlen sind nicht nur sehr unterschiedlich, sie liegen sogar auf einer anderen Skala, Indexpunkte gegen Geld. Aber in Prozent ausgedrückt sind 0,91% und 0,75% vergleichbar und die Zahlen, mit denen Sie arbeiten möchten. Für einige Analysen kann man die Daten durch Subtrahieren des Mittelwerts de-trendieren. In kurzfristigen finanziellen Zeitreihen wird dies häufig ignoriert, sofern kein Trend vorliegt.
Jon Egil
1
@amoeba, Um (teilweise) die in Kommentaren aufgeworfenen Fragen zu beantworten, sind die Renditen ungefähr iid, während die Preise ungefähr zufällige Spaziergänge sind. Hauptkomponenten haben ihre schönen Eigenschaften unter der Annahme von iid-Beobachtungen. Aus diesem Grund ist es sinnvoll, PCA eher für Renditen als für Preise durchzuführen. Ruey S. Tsay hat sich dafür ausgesprochen, PCA für Residuen aus ökonometrischen Modellen finanzieller Zeitreihen durchzuführen, da Residuen normalerweise als iid angenommen werden. Ich denke, dass dies irgendwo in seinem Lehrbuch "Multivariate Zeitreihenanalyse mit R und Finanzanwendungen" enthalten sein könnte.
Richard Hardy