Friday, November 25, 2016

Marktdaten Vorhersage Mit Einem Adaptiven Kalman-Filter Von Rick Martinelli , Haiku Laboratories, Decemb

MARKTDATEN VORHERSAGE mit einem adaptiven Kalman-Filter Einführung Prediction Wissenschaft hat ihre Grundlagen in der mathematischen Statistik, wo bis vor kurzem beteiligt Prognosen eine Vielzahl von Berechnungen auf der Grundlage komplizierter mathematischer Modelle und hatte wenige praktische Anwendungen. In den 1950er Jahren, als große Mengen von Radar und anderen Daten wurden gesammelt, und wie Computer wurden verfügbar werden, die Notwendigkeit für verschiedene Vorhersageverfahren, die mehr auf die neuen Technologien deutlich. Neuen linearen Vorhersage-Algorithmen wurden von Wissenschaftlern und Ingenieuren eingeführt, um diesen Bedarf zu befriedigen. Einer von ihnen hat sich als der Kalman-Filter bekannt, für den Autor, RE benannt Kalman, der es im Jahre 1960 eingeführt (siehe [1]). Marktdaten ist in der Regel als Diagramm oder Zeitreihen, die Preise eines bestimmten Marktes Artikel vor. Ein Kalman-Filter ist ein Gerät, das eine Zeitreihe in zwei Komponenten, eine genannte Signal und das andere genannte Rauschen trennen können. Die Begriffe "Signal" und "Rauschen" verwendet werden, da sonst Tracking-Daten von Raketen, U-Boote usw. besteht aus einer "wahren" Wert für die Lage des Objekts (das Signal), die mit Fremd "Rauschen" aus einer Vielzahl von verunreinigt wurde Quellen. Nur wenn Schätzungen der wahren Werte sind, dass die nächste Stelle kann mit einer beliebigen Genauigkeit vorhergesagt werden. Bei der Anwendung dieser Methoden, um den Märkten sind wir mit dem bestimmte stillschweigenden Annahmen über unsere Zeitreihen. Wir gehen davon gibt es eine glatte Trendlinie innerhalb der Daten, die in einem gewissen Sinne, repräsentiert den "wahren" Werte unserer markt Artikel, bevor sie von "Marktrauschen" gestört. Auf diese Weise werden wir imitiert das Verhalten von, sagen wir, ein U-Boot-Sende laut Sonarsignale, um einen Feind, dessen Aufgabe es ist, nächste Position des U-Boots vorherzusagen. Durch Einpassen der letzten Trend-line-Werte auf ein geeignetes Modell, können wir erweitern das Modell auf die nächste Zeit-Wert, und erzeugen eine Vorhersage. Ein Kalman-Filter verfolgt eine Zeitreihe mit einem zweistufigen Verfahren. 1. An jedem Punkt in der Zeitreihe wird eine Vorhersage des nächsten Wert auf der Grundlage ein paar der jüngsten Schätzungen vorgenommen und auf die in den Kalman-Filter-Gleichungen enthaltenen Daten-Modell. 2. Dann wird die nächste tatsächliche Datenpunkt gelesen wird, und einen Kompromißwert zwischen den vorhergesagten und den tatsächlichen Werten wird auf der Grundlage der Menge an Rauschen in dem zeitseriellen. Dieser Kompromiss Wert dient als die nächste "wahren" Wert für die Vorhersage. Für den heutigen Datenpunkt ist der morgigen Wert nicht verfügbar ist und wir nehmen den vorhergesagten Wert aus der ersten Stufe als unsere Vorhersage der morgigen Preis. Der Algorithmus unterhält auch eine Schätzung der Genauigkeit dieser Prognosen, die sich auf ihre historische Genauigkeit basiert, und wird als die Standardabweichung der Vorhersage angegeben. Für Anwendungen in der Marktdaten Vorhersage wird der Alfa-Anzeige als eine Möglichkeit der Erzeugung von Kauf / Verkauf Signale eingeführt. Dieser Indikator beinhaltet vorhergesagten Preisänderung eines Markt Elements, und die Unsicherheit der Vorhersage, in einer einzigen Zahl. Ein Portfolio von Markt-Gegenstände können durch ihre Alfa Werte zur weiteren Prüfung sortiert werden, oder das Alfa kann in Verbindung mit anderen Marktindikatoren in einem Handelssystem verwendet werden. Eine zweite Anzeige, die so genannte Vermögen wird für den Zugriff auf historische Erfolg des Algorithmus bei der Vorhersage der korrekten Richtung ein Element wird in der nächsten Tick bewegen eingeführt. Das Fortune-Indikator kann auf jedem System, das eine Vorhersage bei jedem Tick macht verwendet werden. Time-Series und Signalverarbeitung Eine Zeitreihe ist jede Menge von Zahlen in chronologischer Reihenfolge angeordnet definiert ist, mit dem gleichen Zeitintervall zwischen jedem benachbarten Paar von Zahlen. Als konkretes Beispiel werden wir ein Jahr täglich schließt (264 Datenpunkte) der IBM Aktie endet 10/23/95 (siehe Abbildung 1). Für unsere Zwecke den Datumsbereich des Diagramms ist unwichtig; wir werden nur mit der Vorhersage der Zukunft Preis von Daten durch heute betroffen. Wie in der Einleitung erwähnt, ein Kalman-Filter trennt eine Zeitreihe in zwei Komponenten, eine namens Trend oder Signal, und der andere genannte Rauschen. Abbildung 1. IBM Tagesschlusskurse für einen 264 Tage Zeit bis 10/23/95 Lassen Sie uns stellen unsere zeitseriellen durch die Folge von Zahlen wobei N = 264 in unserem Fall, treten und sie von einem Modell der Form hergestellt wurde wobei der Index n die Zeitvariable und nimmt Werte von 1 bis N (siehe Referenz [2] für Details). Der Buchstabe X heißt ein Zustandsvektor und in unserem Fall, hält den letzten Trend-line (Signal) Schätzungen. Der Buchstabe A eine Matrix, die das Modell, mit dem Trendwerte aktualisiert werden, enthält. In der Theorie sind diese Updates dann von B n beschädigt. genannte Modell Lärm, um die nächste Zustandsvektor zu erzeugen. Die Geometrie Matrix C wandelt die Zustandsvektor zu einer Reihe und schließlich D n. genannte Beobachtungsrauschen, zugegeben, um die beobachtete Z-Wert zu erzeugen. Das Zustandsmodell-Update-Matrix A, zusammen mit seiner zugeordneten Zustandsvektor X, was macht dieses Kalman-Filter einzigartig unter allen anderen Kalman-Filtern. Eine Ableitung der Matrix A und eine Diskussion ihrer Eigenschaften sind in [3] verwiesen. Grundsätzlich wird das Signal angenommen, eine (andere) Polynoms auf jedes Teilsegment mit fester Länge, wobei der Grad der A bestimmt den Grad des Polynoms sowie die Länge der Teilsegmente. Simulationsergebnisse zu dieser Filter sind in [4] enthalten ist, und die Ergebnisse auf die Verwendung dieses Filters zu verfolgen militärische Ziele ist in [5] enthalten. Für geeignete Startstatus X 0. das Filter kann als eine Blackbox, Z aus der in A und C enthalten feste Datenmodell erzeugt, und die Rauschterme zu denken. Diese Rausch Begriffe haben jeweils eine bestimmte unbekannte Varianz oder Intensität, die letztlich in der Volatilität des Marktes Artikel widerspiegelt. Wenn bekannt ist, könnte die Kalman-Filter eingestellt oder abgestimmt wird, zu dem Daten Flüchtigkeit durch anfängliches Festlegen des Verhältnisses der Rauschvarianzen. Wenn VB repräsentiert die Varianz von B n und VD die Varianz D n. ihr Verhältnis wird als Tracking-Parameter T und wird als T = VB / VD definiert. (Siehe auch [6]). Wie die Filter strömt über die Datenerzeugungs Schätzungen X schätzt auch die Werte von VB und VD. Am Punkt dann jeder Daten, verwendet der Filter diese Schätzungen nach T einstellen Diese Fähigkeit, die Tracking-Parameter einstellen, um die Daten übereinstimmen während Tracking ist das, was den Filter "adaptive" macht. Um das beste T-Wert für jeden Markt Artikel zu finden, wird der Algorithmus erlaubt, durch 100 Werte von T von 0,1 bis 10,0 durchlaufen und finden Sie den besten Wert in dem Sinne, dass die Preise vorhergesagt Nähe zu tatsächlichen, historischen Preise des Einzelteils sind insgesamt. In der Regel werden kleinere T-Werte mit volatileren Markt Artikel gefunden. Die Daten in Figur 1 wurde mit einem dritten Grad Kalman-Filter verfolgt, mit der Tracking-Parameter automatisch ausgewählt, wie oben beschrieben. Abbildung 2 zeigt die letzten 25 Datenpunkte im Detail zusammen mit den Kalman-Vorhersagen an jedem Punkt. Beachten Sie, dass der Filter gut funktioniert, wenn die Daten relativ glatt. aber nicht, wenn die Daten macht eine abrupte Richtungsänderung. Das ist, weil der Filter nicht "sehen" in die Zukunft und erwartet, dass die Daten, die ihrer aktuellen Trend zu halten. Prognose für die Zukunft, wie Preis, extrapoliert, rauschfreien Zustandswerte "von morgen": und so weiter, zusammen mit ihren Standardabweichungen. Drei Zukunftsprognosen sind ebenfalls in Abbildung 2 dargestellt. Abbildung 2. Kalman Prognosen (+) in den letzten 25 IBM Datenpunkte, shownwith die Daten (durchgezogene Linie) und Vorhersagen für 3 Punkte in die Zukunft. Kaufen-Verkaufen-Signale und die ALFA Indicator Das Kalman-Regelung sieht Vorhersagen zu jedem Zeitpunkt im Datenbereich (mit Ausnahme der ersten Anlaufpunkte), und Standardabweichungen für jede Vorhersage. Da das Filter strömt über die Daten, diese Standardabweichungen sind in der Regel auf einen mittleren Wert, der zu den Abweichungen, T definiert in Abschnitt 2 oben verbunden ist. Folglich, wenn ein vorhergesagten Preisänderung übersteigt diesen Durchschnitt um einen signifikanten Betrag, wird es würdig des Händlers Aufmerksamkeit. Die vorhergesagte Preisänderung und die dazugehörige Standardabweichung kann durch eine in eine Statistik eingearbeitet werden, genannt ALFA und bezeichnet, die wir definieren, hier als der vorhergesagten Preisänderung dividiert durch die Standardabweichung der Vorhersage Auf diese Weise definiert ist, ist ein eine normierte Anzeige und können so verwendet werden, um zwischen unterschiedlichen Markt-Gegenstände nur in einem Element der Vergangenheit zu vergleichen, anstatt werden. Ein Portfolio von Markt-Gegenstände können durch ihre aktuellen Werte ein (mit dem Minuszeichen zur Verringerung Positionen entfernt), die größten vorhergesagten Änderungen und / oder kleinste Unsicherheiten aufzudecken sortiert werden. Angebote in der Nähe der Spitze der Liste könnte dann weiter untersucht werden. Immer wenn eine um mehr als ein, zum Beispiel, die vorhergesagte Preisänderung übersteigt eine Standardabweichung, das heißt, die durchschnittliche Standardabweichung, die "durch den Filter auf erlebt haben 'während seiner Scan. Abbildung 3. Historische Alfa Werte für IBM Daten. Abbildung 3 zeigt die historischen eine für die IBM Daten. Wenn die ersten 50 Punkte werden ignoriert aufgrund Start auswählen, sehen wir, dass ein selten über eine, und nur einmal einen Wert von zwei erreicht. In der Praxis ist eine größere als zehn wurden gefunden. Eine solche große Werte in der Regel bedeuten, das Einzelteil in die gleiche Richtung wurde Trending über mehrere Tage Abbildung 3 schlägt folgende kaufen / verkaufen Fahnen: kaufen, wenn a einen vorgegebenen Wert übersteigt; zu verkaufen, wenn sie kleiner als der andere ist. vordefinierten Wert. Im Beispiel unten werden diese Werte bei 1,8 und -1,8, festgesetzt, und die kauft und verkauft aufgezeichnet. Eine Zusammenfassung der Leistung der Filter unter diesen Bedingungen wird von der Fortune-Indikator, definiert nächsten zur Verfügung gestellt. Backtesting und der Fortune-Indicator Ein Handelssystem kann der hier als Eingabe-Ausgabe-Vorrichtung zur Erzeugung von Kauf / Verkauf Signale, wenn sie mit einem Markt Diagramm dargestellt gedacht werden. Backtesting ist ein allgemeines Verfahren für die Prüfung der potenziellen Wirksamkeit eines Handelssystems. Die Idee ist, die Regelung zu den historischen Daten über repräsentative Portfolio Diagramme anzuwenden. Das heißt, einfach erfassen die kauft und verkauft unter die Regelung angegeben ist, ohne tatsächlich zu investieren, und behalten den Gewinnen und Verlusten. Um eine visuelle Aufzeichnung der historischen Performance des Systems zu schaffen, definieren wir einen Indikator genannt Vermögen wie folgt. Wir beginnen mit der Modellierung eines Handelssystems als ein einfaches Glücksspiel-System. Nehmen wir an, jeder Markt Artikel hat seine eigene Roulette-Rad, in dem die Werte auf dem Rad möglich Schlusskurse stellen und das Rad jeden Tag neu gesponnen, um den nächsten Preis zu ermitteln. Bei jeder Drehung der Händler kann einen einzigen Wette von einem Wetteinheit auf Platz entweder schwarz (zur Preiserhöhung) oder rot (für eine Abnahme), je nach den Kauf / Verkauf Signale aus dem System für den Handel. Wenn eine Wette ist Ort, und wenn der Filter in die korrekte Richtung der Kursbewegung ahnen wir unsere Investitionen und was Menge die Zunahme oder Abnahme steht in Bruchteilen einer Wetteinheit zurückgegeben. Wenn nicht, bekommen wir unsere Investitionen zurück minus dass dieselbe Menge. Beachten Sie, dass der Händler einen Gewinn, wenn der Filter richtig geraten, unabhängig von der Richtung der Kursbewegung. Nach jeder Wette, erfassen wir die kumulierte Anzahl der Wetteinheiten wie unser Glück auf dem Laufenden. Eine graphische Darstellung der Fortune-Indikator für die IBM Daten ist in Abbildung 4 für diesen Scan gezeigt, wurde der Wert einer, die einen kaufen (Buy-Flag) auf 1,8 eingestellt, und die Sell-Flag wurde auf -1.8 eingestellt. Auch für den Zweck der Anlage, die ersten 50 Tage des Scans werden ignoriert, während der Filter zu stabilisieren. Abbildung 4. Das Fortune-Indikator für IBM Daten. Alfa kaufen flags = 1,8, verkaufen flag = -1,8. Am Tag 102 a bei 2,01 (siehe Abbildung 3) überschritten das Buy-Flag und eine Einheit investiert wurde. Allerdings schloss der Preis senken Sie den folgenden Tag und dem daraus resultierenden Verlust (wie auf sorgfältiger Prüfung 1 zu sehen ist) wird als ein Rückgang von etwa 0,6% in der Fortune gezeigt. Am Tag 139, eine nur das Buy-Flag übertraf mit 1,86. Dieses Mal die Investitionen führten zu einem Gewinn von 1,7%. Schließlich zwei aufeinanderfolgenden Tagen, 222 und 223, ein "s unter der Sell-Flag bei -1,82 und -1,86 in Folge Gewinne von 0,9% bzw. 1,6%, respectively. Der entsprechende Abwärtstrend in Figur 1 zu sehen ist, und wird wieder in Figur 5 zusammen mit den Kalman Prognosen angezeigt. Abbildung 5. IBM Daten (durchgezogene Linie) und Kalman-Vorhersagen (+) für eine 20-Tage-Frist, die eine profitable Abwärtstrend. Zusammenfassung Conclosions Adaptives Kalman-Filter, die so nützlich bei militärischen Anwendungen erwiesen haben, haben hier gezeigt, dass sie auch wirksam bei der Marktvorhersagen ist, wenn sie in Verbindung mit geeigneten Indikatoren verwendet werden, und wenn sie richtig eingestellt. Um die Filter in einer Investmenteinstellung zu bewerten, wurde das ein Indikator Definition in Abschnitt 3 entwickelt, um einen Kauf - / Verkaufsanzeige in einem Handelssystem, das die Kalman-Vorhersagen verwendet werden. Das Fortune-Indikator in Abschnitt 4 definiert wurde entwickelt, um eine grafische Darstellung der Ergebnisse. Ein willkürlich ausgewählt Markt Produkt wurde getestet und a-Werte gefunden, die profitable Investitionen drei von vier Mal in Folge. Ist nur von begrenztem Wert als praktische Kapitalanlage jedoch dieses Schema. In der Praxis wird ein Händler unter Verwendung einer Vorhersageschema sollte immer eingreifen, wenn ein scheinbar Trending Einzelteil gefunden wird, und suchen Sie nach weiteren News auf den Punkt. Auch die hier beschriebene Schema erfordert einen einzigen Tag Turn-around und keine Provisionen auf die Trades, die beide nicht-realistischen Bedingungen. Schließlich, da die Struktur der Märkte, der Wert dieser oder irgendeiner anderen Vorhersageschema, ist fraglich, wenn es nur eine Handvoll von Markt Elemente angewendet. Allerdings hat der derzeitigen Technologie-Daten für viele Tausende von Markt-Gegenstände zu angemessenen Preisen für die Öffentlichkeit zugänglich gemacht. Die in dieser Mitteilung darauf hin, dass, durch die Suche so große Portfolien und legte ausreichende Beschränkungen des Auswahlprozesses deutlich Trending Markt-Gegenstände kann mit adaptiver Kalman-Filtern finden. Referenzen [1]. Kalman, R. E. Ein neuer Ansatz für lineare Filterung und Vorhersage Probleme, ASME Transaktionen, Serie D, 82, 35-45, (1961). [3]. Martinelli, R. Kurvenanpassung und der Kalman-Filter, Kentron Internationale Abteilungs Korrespondenz, 2. Dezember 1978. [4]. Martinelli, R. Mathematische Beschreibung des 3D-Track-Präprozessor, Honeywell Marine Systems Center Technische Memorandum, H476-90-001, 30. März 1979. [5]. Parker. JD-Tracking-Filter für Precision Electronic Support Systems, Defense Technical Information Center. Cameron Station, Alexandria. Virginia 22304. DTIC # A264 089 1992. [6]. Kalata. PR Die Kriechstromfestigkeit: A generarized Parameter ab und abg Ziel Trackers ", IEEE Transactions on Luftfahrt und elektronische Systeme, Vol AES-20, P174 1984.


No comments:

Post a Comment