Ich versuche, eine Methode zu finden, um eine bestimmte Zeitreihe programmgesteuert mit mehr als 10.000 Referenzzeitreihen zu vergleichen und die Referenzzeitreihen in die engere Wahl zu ziehen, die von Interesse sein können.
Die Methode, die ich verwendete, war Pearson Correlation . Für jede der Referenzzeitreihen würde ich ihre Korrelationskoeffizienten berechnen und dann die gesamte Liste der Referenzzeitreihen in absteigender Reihenfolge basierend auf dem Korrelationskoeffizienten sortieren. Ich würde dann visuell die Top-N-Zeitreihen analysieren, die die höchsten Korrelationskoeffizienten aufweisen, was die besten Übereinstimmungen mit der gegebenen Zeitreihe sein sollte.
Das Problem ist, dass ich keine verlässlichen Ergebnisse erhalten habe. Sehr oft ähnelte die Serie im oberen N-Bereich optisch nicht der angegebenen Zeitreihe. Als ich schließlich den vollständigen Artikel unten las, verstand ich warum: Man kann nicht allein die Korrelation verwenden, um festzustellen, ob zwei Zeitreihen ähnlich sind.
Dies ist nun ein Problem bei allen Übereinstimmungsalgorithmen, die eine Art Abstand zwischen zwei Zeitreihen berechnen. Zum Beispiel können die beiden folgenden Gruppen von Zeitreihen zu derselben Entfernung führen, aber eine passt offensichtlich besser zusammen als die andere.
A => [1, 2, 3, 4, 5, 6, 7, 8, 9]
B1 => [1, 2, 3, 4, 5, 6, 7, 8, 12]
distance = sqrt(0+0+0+0+0+0+0+0+9) = 3
B2 => [0, 3, 2, 5, 4, 7, 6, 9, 8]
distance = sqrt(1+1+1+1+1+1+1+1+1) = 3
Meine Frage ist also, gibt es eine mathematische Formel (wie Korrelation), die in solchen Situationen besser zu mir passt? Eine, die nicht unter den hier genannten Problemen leidet?
Bitte fordern Sie weitere Erläuterungen an oder verbessern Sie den Fragentext bei Bedarf. Vielen Dank! =)
BEARBEITEN:

@woodchips, @krystian:
Die obere Reihe zeigt die letzten zehn Balken von USDCHF-Daily, die zum angegebenen Datum enden. Die zweite Zeile enthält die drei wichtigsten Ergebnisse der für die Korrelation verwendeten Methode A (Erläuterung folgt). Die letzte Zeile zeigt die Top 3 Ergebnisse von Methode B.. Ich habe High-Low-Close-Preise für die Korrelation verwendet. Die letzten Bilder in jeder Reihe sind das, was ich für eine "gute Übereinstimmung" halte. Der Grund dafür ist, dass Wendepunkte in der Serie für mich wichtiger sind. Es ist ein Zufall, dass die letzten Zeilen die maximale Korrelation hatten. In der letzten Zeile sehen Sie jedoch, dass das zweite Bild eine sehr schwache Ähnlichkeit aufweist. Trotzdem schleicht es sich in die Top 3. Das stört mich. Aufgrund dieses Verhaltens bin ich gezwungen, visuell auf jede Korrelation zuzugreifen und sie zu akzeptieren / zu verwerfen. Das Anscombe-Quartett betont auch, dass die Korrelation visuell überprüft werden muss. Deshalb wollte ich mich von der Korrelation entfernen und andere mathematische Konzepte untersuchen, die die Ähnlichkeit von Reihen bewerten.
Methode A hängt HLC-Daten in einer langen Reihe an und korreliert sie mit der angegebenen Reihe. Methode B korreliert H-Daten mit Referenz-H-Daten, L mit L, C mit C und multipliziert dann alle drei Werte, um die Nettokorrelation zu berechnen . Natürlich reduziert es die Gesamtkorrelation, aber ich glaube, es neigt dazu , die resultierenden Korrelationen zu verfeinern .
Ich entschuldige mich dafür, dass ich so spät geantwortet habe. Ich habe versucht, Daten- und Codekorrelationen zu sammeln und Grafiken für die Erklärung zu erstellen. Dieses Bild zeigt eines der seltenen Ereignisse, bei denen die Korrelationen genau richtig sind. Ich werde Grafiken erstellen und freigeben, wenn die resultierenden Übereinstimmungen auch sehr irreführend sind, obwohl die Korrelationswerte ziemlich hoch sind.
@adambowen: du bist genau richtig. Eigentlich habe ich zwei verschiedene Algorithmen implementiert: Korrelation und dynamisches Time Warping, um auf Serienähnlichkeit zuzugreifen. Für DTW muss ich MSE verwenden, wie Sie sagten. Für die Korrelation kann ich sowohl die MSE (in diesem Fall entspricht sie den Kosten der diagonalen Route der DTW ohne Verzerrung) als auch die tatsächliche Pearson-Korrelationsformel verwenden. Die folgenden Bilder resultieren aus der Verwendung der Pearson-Korrelationsformel. Ich werde die Begriffe nachschlagen, die Sie in Ihrem Beitrag erwähnt haben, und bald darüber berichten. Tatsächlich habe ich keine zwei separaten Zeitreihen. Es ist nur eine Zeitreihe mit fast 10.000 Punkten. Ich verwende ein Schiebefenster der Breite N, um die Zeitreihen automatisch zu korrelieren und die Ereignisse zu lokalisieren, bei denen sich die Reihen ähnlich wie heute verhalten haben. Wenn ich gute Übereinstimmungen finden kann, Möglicherweise kann ich die Bewegung der aktuellen Zeitreihe anhand der Bewegung nach jedem der identifizierten Spiele vorhersagen. Vielen Dank für Ihren Einblick.