Frage

Ich möchte ein bestimmtes Aktienmuster (definiert als eine Reihe von X- und Y-Koordinaten) mit historischen Aktienkursen vergleichen.Wenn ich in den historischen Preisen etwas finde, das dem von mir definierten Muster ähnelt, möchte ich es als Übereinstimmung zurückgeben.

Ich bin nicht sicher, wie ich feststellen kann, wie ähnlich zwei gekrümmte Linien sind.Ich habe einige Nachforschungen angestellt und Sie können die Ähnlichkeit zweier gerader Linien finden (mit linearer Regression), aber ich habe noch keine gute Möglichkeit gefunden, zwei gekrümmte Linien zu vergleichen.

Mein derzeit bester Ansatz besteht darin, mehrere Hoch- und Tiefpunkte aus dem historischen Datenbereich, den ich betrachte, zu ermitteln, die Steigungen der Linien zu ermitteln und diese mit den Steigungen des Musters zu vergleichen, das ich abzugleichen versuche, um festzustellen, ob sie vorhanden sind. sind ungefähr gleich.

Irgendwelche besseren Ideen?Ich würde sie gerne hören!

Bearbeiten: Danke für die Eingabe!Ich habe zuvor über den Ansatz der kleinsten Quadrate nachgedacht, war mir aber nicht sicher, wohin ich damit gehen sollte.Nach den Eingaben, die ich erhalten habe, denke ich jedoch, dass ich zuerst die kleinsten Quadrate jeder Linie berechnen sollte, um die Daten ein wenig zu glätten, und dann das Muster wie von James vorgeschlagen skalieren und strecken sollte, was ich suche.

Ich habe vor, dies zu nutzen, um bestimmte technische Flags in der Aktie zu identifizieren und Kauf- und Verkaufssignale zu ermitteln.Es gibt bereits Websites, die dies bis zu einem gewissen Grad tun (z. B. stockfetcher), aber natürlich würde ich es gerne selbst ausprobieren und sehen, ob ich es noch besser machen kann.

War es hilfreich?

Lösung

Eines der Probleme ist, dass die Kurve mit nicht-linearen Funktionen passend ist nicht immer gehen für einige Ihrer Muster zu arbeiten, je nachdem wie komplex sie sind. Sie könnten quadratische oder kubische oder eine andere Ordnung der Polynome verwenden, um ein genaueres Ergebnis zu erhalten, aber es ist nicht in allen Situationen zur Arbeit zu gehen, vor allem mit scharfen Änderungen der Daten im Laufe der Zeit.

Ehrlich gesagt denke ich, eine vernünftige und relativ einfache Lösung für ‚Skala‘ und ‚Stretch‘ Ihr Muster, so dass es über den gleichen Bereich wie die historischen Daten auftritt. Sie können Interpolation für die x-Achse verwenden und Multiplikation plus eine für die y-Achse versetzt. Danach schauen nur auf den Mittelwert der quadrierten Differenzen an jedem Punkt und wenn diese niedriger als ein Schwellenwert ist, dann können Sie es ein Spiel betrachten. Es wird ein bisschen zwicken erfordern vorhersagbare Ergebnisse zu erzielen, aber ich denke, es ist ein schöner Ansatz, dass Sie jede Art von Muster, das eine schön eingerichtete Kurve definieren sollte es ermöglichen, ohne sie auf Regression zu erzeugen. Im Wesentlichen ist es nur eine Anwendung von Statistiken. Sie können auch bei Standardabweichungen oder Varianz für einen umfassenderen Ansatz suchen.

Andere Tipps

Berechne die Gesamt kleinsten Quadrate der Residuen (y Differenzen) an jedem Punkt. Dies sollte Sie geben ein Maß für die geometrische Anpassung (wie ähnlich sie aussehen). Sie sollten dann in der Lage sein, eine gewisse Toleranz setzen für ‚ähnlich genug‘.

Siehe http://en.wikipedia.org/wiki/Curve_fitting

Mathe ist nicht meine Stärke, aber vielleicht können Sie Korrelation .

Berechnen Sie den Korrelationswert zwischen den beiden Daten-Sets und und wenn die Korrelation größer ist als ein Wert (0,8?), Dann betrachten die Sätze ähnlich genug .

Oder schauen Sie sich vielleicht die Derivate an?

Aktienkursbewegungen werden theoretisch normalerweise als Brownsche Bewegung mit einem Driftfaktor modelliert.(Ich weiß sehr wenig, aber schauen Sie mal Hier)

Wenn es Ihnen nichts ausmacht, wenn ich frage, welchen Zweck könnte das haben?

Ein Gedanke könnte sein, zu nehmen mittelt unterschiedliche Zeitbereiche zu bewegen (täglich für Wochen, Monate, Jahre, wöchentlich für Monate, Jahre, etc). Und vergleicht sich mittelt nun zu bewegen

Die einzelnen Mittelwerte würden Sie auch ein einfacher Vergleich geben .. wenn aufeinander folgende Elemente in den Mittelwerten in einigen normierter Form sind (sagen wir von 0..1 für Splits zu berücksichtigen, usw.), können Sie aufeinander folgende Elemente in dem Vektor vergleichen sie innerhalb eines gewissen Bereich epsilon, und ein Potential von einem Spiel bekommen.

Nur so ein Gedanke.

Mathworld ( http://mathworld.wolfram.com/ ) sollten auch einige nehmen auf der Kurve haben Vergleiche.

kleinsten Quadrate wäre nicht die beste sein, das Sie auf es tun könnte. Verwenden Sie den RANSAC-Algorithmus. Es wird diese Art von Daten handhaben, weil diese Art von Daten sind sehr unberechenbar und oft laut.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top