Real-Time-Signalextraktion MDFA und algorithmische Trading. Präsentation zum Thema Real-Time-Signalextraktion MDFA und Algorithmic Trading Präsentation Transkript.1 Real-Time-Signalextraktion MDFA und Algorithmic Trading.2 Hintergrund Hybrid-Mathematik econ IDP-ZHAW Projekte mit econ-Partnern Prognose Gesundheit Kosten Aufwendungen Makro Echtzeit-Wirtschaftsindikatoren EURI Eurostat - Projekt Finanzierung MDFA-XT, Großer Hedge-Fonds Engineering Telecom, Lastprognosen Eklektisch disparate Anwendungsbereiche Gemeinsame methodische Herangehensweise Eigene Entwicklungen M DFA R-Paket Signalextraktion auf CRAN.3 Ein Klassiker Algorithmic Trading Approach Timing System SP500 Tägliche Verschlüsse MA 200, gleich gewichtet.4 P 5 Drawdowns, p 7 Timing System, P 10 Leistung.5 Problem Zu lange Perioden mit systematischer Underperformance.6 Warum Trader Häufig Adopt Prefer Filter Crossings Filter Eigenschaften Warum MDFA Intermezzo-Warum-Do-Trader-Oft-Consider-Crossings-von.7 Log-MSCI und MA 45.8 Filter-Eigenschaften Amplitudenfunktion Welches Signal wird extrahiert Zeitverschiebung Wie groß ist die Verzögerung.9 Zeitmesssystem MSCI-Weekly.10 Mehr General Crossings MA 45, schwarz - MA 22, rotes Kreuzung blau.11 Schlussfolgerungen Crossing-Regeln sind eine unnötig umständliche Implementierung Bandpass-Filter Crossing-Regeln Bandpass haben kleine Zeitverzögerungen Warum MDFA Flexible effiziente Echtzeit-Bandpass Design Fast und smooth.12 Fundamental Trading SP500.13 USRI MDFA und SP500.14 Performance in Logs.15 Studentische Thesen p 19 Langfristige Leistungen Fundam Trading. 16 Fazit Feuchtigkeit oder vermeiden alle massiven Rezessionsentwürfe effektiv Ideal für risikoaverse Investoren Pensionskassen Fundamental Trading wirklich aus der Probe Fokus auf Makrodaten Finanzdaten ignoriert NBER Nachteil unzureichend aktiv Texto Schwierig, Gebühren zu rechtfertigen.17 MDFA - XT MSCI BRIC .18 Log-MSCI und MA 45.19 MDFA vs MA 45 wöchentliche Daten MDFA blau Faster.20 Fünf Trading-Filter Verschiedene Trading-Frequenzen.22 Filtern Sie selten bis Mid.25 Fazit Höherer Handel fre Quencies sind mit Bandpass verknüpft, die nach rechts verschoben ist Flexibler als herkömmliche Filterkreuzungen Kleinere Verzögerungen Zeitverschiebungen.27 Einstellung Total degenerative Handelskosten von 0 3 pro Auftrag kleiner Fonds Lange nur keine risikofreien Zinssätze.29 Performance Unabhängig bis Mid.31 Performance Mid to Häufig.33 Schlussfolgerungen Höhere Handelshäufigkeiten sind mit einer leichten Leistungsreduzierung verbunden Größere Abzinsungen USRI würde Abzüge vermeiden und dann würde die Performance steigen Anstieg der Marktaktivitätsgebühren Kombination mit USRI möglich empfohlene Filter werden spätestens online verfügbar sein Juli.34 Real-Time-Signalextraktion Ein SEF-Blog Excel-Tutorial.35 Excel-Tutorial zu SEF-Blog-Archiven 65-Real-Time-Detection-of - Turning-Points-a-Tutorial-Teil-I-Mittelarchiv 65 - Real-Time-Detection-of-Turning-Points-a-Tutorial-Teil-I-Mittel Archive 67-Real-Time-Erkennung-of - Turning-Points-a-Tutorial-Teil-II-Archive 67-Real - Time-Detection-of - Turning-Punkte-a-Tutorial-Teil-II.36 Ziele Yog Eine Übung, um von der Hauptstrom-Maximalwahrscheinlichkeit Welt zu lösen Erste Blog-Eintrag, wie traditionellen ökonometrischen Ansatz funktioniert Intuitiv einfach Gute optimale mittlere quadratische Aufführungen Menschen sind faul-minded Zweite Blog-Entry die Früherkennung von Wendepunkten Ist eine stark kontraintuitive Übung Generiert Scheinbar stark verkürzte Filterdesigns Warning Learning Illumination.37 Excel-Tutorial auf SEF-Blog.38 Real-Time-Signalextraktion 1 Traditionelle Ökonometrie.39 Aufgabe Extrahieren Sie den Cycle.40 Standard Econometric Approach Proceeding Identifizieren Sie ein Zeitreihenmodell ARIMA State Space Erweitern Sie die Serie Durch optimale prognosen Bewerben Sie den symmetrischen Filter auf die erweiterte Zeitreihe X-12-ARIMA, TRAMO, STAMP, RS Claim Einseitiger Filter ist optimal mittlere quadratische Sense Annahme DGP true model.42 Real-Time Model-Based Filter.43 Real - Time-Signalextraktion 2 Excel Beispiel Replikation des modellbasierten Ansatzes.44 Parameter ARMA 2,2 - FILTER ARMA 2,2 - Filter nicht modell.45 A Scheinbar Vir Tuous Design amplitude.46 A scheinbar tugendhaftes Design Zeitverschiebung.47 Ein scheinbar tugendhaftes Design Peak Korrelation Korrelation zwischen Echtzeit-Schätzung und Zyklus als Funktion der Zeitverzögerung k.48 Signal und Schätzung Schätzung Filter Tweaked by Hand.49 Real-Time Signalextraktion 3 Excel Beispiel Wendepunkt Revelation.50 Parameter ARMA 2,2 - FILTER Scheinbar Misspezifiziertes Design ARMA 2,2 - Filter nicht Modell.51 Eine scheinbar fehlgeschlagene Designamplitude.52 Eine scheinbar fehlgeschlagene Design Time Shift.53 Ein scheinbar fehlgeschlagenes Design Peak - Korrelationen.54 Ein scheinbar fehlgeschlagenes Design gefilterte Serie und Signal.55 Vergleich scheinbar tugendhaft vs scheinbar Misspecified.57 Schlussfolgerungen Scheinbar missspezifisches Design ist schneller glatter weniger falsch TP s oder Alarme Nicht Mittel-Quadrat optimal Viel besser in einer TP-Perspektive.58 Von Excel Zu MDFA Tweak Filterparameter von Hand in Excel Tutorial Mängel des Beispiels Unrealistisch einfache künstliche Simulation Übung In der Praxis komplexere Belästigungen Und oder Signale Include Informationen aus mehr als einer Zeitreihe multivariate Framework Wünschen Sie ein formales Optimierungskriterium Willkommen bei DFA und MDFA.59 DFA Direct Filter Approach Mean-Square.60 DFA Direct Filter Approach Idee Schätzung Mittelwert Quadratfilter Fehler effizient.61 Optimierung Kriterium I 0 Minimieren Sie eine einheitlich überkonstante Schätzung einer einheitlich effizienten Schätzung des Filtermittel-Quadratfehler Die kundenspezifische Effizienz tritt explizit in die Gestaltung des Optimierungskriteriums ein.62 Haben Sie Sagen und / oder Periodogramm Periodogramm ist ein typisches Beispiel für statistisch-bashing Inkonsistente Schätzung Der spektralen Dichte Glättung parametrisches oder nicht parametrisches Periodogramm hat wunderbare statistische Eigenschaften Suffizienz Larry Brethorst Man kann schöne formale Effizienz in Echtzeit-Signalextraktion ableiten. Arbeiten an einer Reihe neuer Blog-Einträge zum Thema, um bis zu einem gewissen Grad zu rehabilitieren - das Periodogramm.63 Aufführungen Effizienz der univariate DFA Business Survey Daten KOF, FED, 2004,2005 X-12-ARIMA, Tramo-Sitze MSE-Gewinn.30 US - und Euro-BIP 2008 CF-Wendepunkte von 1-2 Quartalen erwartet ESI 2006 Klausuren TPs entdeckt 2-3 Monate früher.64 Aufführungen Effizienz durch Verlassen des Periodogramms TP-Filter gewannen NN3 2007 und NN5 2008 Prognose Wettbewerbe.60 Teilnehmer IIF und University of Lancaster Monatliche Makro - und Finanzdaten 111 Zeitreihen und tägliche Finanzdaten 111 Zeitreihen Outperformed Sieger und Vizemeister von prestigeträchtigen M3-Konkurrenz, X-12-ARIMA, Tramo, Prognoseprofi, Autobox, Exponentialglättung Einfach, Holt, gedämpft, Neuronale Netze, künstliche Intelligenz.65 DFA-Direktfilteransatz Wendepunkte TP.1 betonen die Zeitverzögerung im Passband 1 Best-Level-Filterklasse imagelink uk-text-large uk-margin-small-left uk-margin-small-right 66 Steuerung der Zeitverzögerung Anpassung 1 betont die Zeitverzögerung im Passband 1 Best Level Filter 1 betont die Zeitverzögerung In der Passband 1 Best Level Filter Titel Controllin G die Zeitverzögerung Anpassung 1 betont die Zeitverzögerung im Passband 1 Best Level Filter.1 Klasse imagelink uk-text-large uk-margin-small-left uk-margin-small-right 67 Anpassung Controlling Zeitverzögerung und Glätte Stärker Dämpfung von Hochfrequenzrauschen im Stoppband Kleine Zeitverzögerungen im Durchlassband W ist monoton zunehmend und 1 1 Titel Anpassung Steuerung Zeitverzögerung und Glätte Stärkere Dämpfung von Hochfrequenzrauschen im Stoppband Kleine Zeitverzögerungen im Durchlassband W Ist monoton zunehmend und 1,68 Amplitude DFA TP-Filter blau vs scheinen tugendhaften Pegelfilter KOF - Barometer.69 Delay TP-Filter blau vs scheinen tugendhaften Pegel Filter KOF-Barometer.70 TP-Erkennung glatter und schneller schlechte Mittel-Quadrat-Performances.72 Real - Time Multivariate Filter Direct Filter Approach.73 Real-Time Filter Cointegration Constraints Rang 1.74 Effizienz Theorem 4 1, Wildi2008, Wildi Sturm2008 Der Fehler Term e T ist kleinstmöglich einheitlich Einheitliche Effizienz Customization.75 Optimal E Kompetenzkriterium unter Kointegration Rang 1 Filterbeschränkungen sind erfüllt.76 Aufführungen MDFA Output-Lücke US - und Euro-GDP 2008 CF und multivariate CF-Wendepunkte von 1-2 Quartalen erwartet USRI Outperformed Markov-Switching Chauvet, Chauvet Piger, Dynamische Faktormodelle CFNAI, Staatsraummodelle ADS, Hodrick-Prescott OECD-CLI, Christiano-Fitzgerald SEF-Blog MDFA-XT EURI.77 WARNUNG DIES IST NICHT EIN PUSH-THE-BUTTON ANFAHRT Formel 1 Renner kann schnell Ferrari und zuverlässiger Mercedes sein Muss es sorgfältig zwicken Ferrades Mercearri Filter-Design ZPC Filter-Einschränkungen betonen Frequenz null Verständnis der Interpretation Intelligenz 2008-Buch Glücklich zu unterstützen Unterstützung gegeben finanzielle Anreize.79 Veranschaulichen methodische Fragen, indem sie sich auf reale Projekte mit Wirtschaftspartnern Real-Time US Rezession Indikator Experimentell Trader für MSCI Emerging Markets Filters on-line Ende Juli Signal Extraktion Forecasting Site Bücher, Artikel, Software. Hochfrequenz Financia L Trading auf FOREX mit MDFA und R Ein Beispiel mit dem japanischen Yen. Dieser letzte Eintrag von Chris ist besonders in dem Sinne, dass er auf meinem Open-Source-MDFA-Paket anstatt auf iMetrica beruht, um Handelssignale zu generieren, siehe 1 Daher sind die Ergebnisse Reproduzierbare Chris machte eine großartige Replikationsanstrengung, siehe unten. Mittwoch 20 Ich habe den R-Code, wie von Chris geändert, um zu replizieren geändert. Was folgt ist Chris E-Mail, schneiden und von meinem Server. So Ich habe gerade die lange erwartete Intro-Tutorial zum Aufbau von Trading-Signalen mit MDFA und R für Hochfrequenz-Daten Es gibt nicht allzu viele Geheimnisse, um hier zu verstecken, wie das, was ich in R mit deinem Code gemacht habe, ist in erster Linie die gleiche Routine, die ich zum Aufbau meiner Trading-Signale in iMetrica nehme Außer dass ich viel viel viel schneller in der letzteren und ok, es gibt nur ein paar kleine geheime Saucen, die ich m verwenden und noch nicht bereit zu lecken, bis ich bin beschäftigt Aber so weit wie dieses Beispiel mit dem Yen geht, Alles sollte reproduzierbar sein Zuhause mit einer leicht modifizierten Version Ihres Codes Hier ist der Artikel 1. Eine Herausforderung, die ich beim Aufbau dieser Beispiele vorgestellt habe, kam aus dem Vergleich mit meinen Ergebnissen, die ich in iMetrica bekomme. Leider waren die Ergebnisse zunächst nicht gleich. Nachdem sie etwas frustriert wurden , Habe ich das sorgfältige Bestreben, herauszufinden, warum meine MDFA-Routinen in C anders sind als Sie in R Mine sind, in einer viel optimierteren und effizienteren Weise kodiert, um die schnellste Geschwindigkeit zu erreichen, dank eines schnellen Apophenie-Optimierungspakets, um Matrizen zusammenzubauen und zu lösen Für Koeffizienten Allerdings sollten die Endergebnisse immer noch gleich sein Nach einem Tag der Navigation durch beide oder unsere MDFA-Implementierungen, fand ich heraus, warum sie nicht gleichwertig sind und ich habe sie in Ihrem Code geändert Hier sind die Unterschiede, die ich von meiner Implementierung erinnern kann und Deines von deinem November, das die DFTs ausgibt, aus irgendeinem Grund, an der Nullfrequenz, du nimm nicht den Mittelwert der Daten, die du gerade auf Null gesetzt hast. Nicht sicher, wenn Du hast das bei Unfall oder absichtlich verlassen, aber ich benutze das Mittel Auch ich teile die DFT-Werte durch die konstante pi n, wobei n die Anzahl der Beobachtungen in der Zeitreihe sind. In der Definition des Zerfalls1-Parameters scheinst du nicht Um die tan-Funktion Zuordnung zu verwenden, die ich getan habe. Der größte Unterschied ist in der Definition der Glättungsfunktion, die durch das Aussehen definiert wird. Zuerst teilen Sie das Explosion von 2, ich teile mit 10 Nicht ein riesiges Geschäft Das große Geschäft ist das meine Definition der verschobenen Macht Funktion ist eine Funktion des Frequenzwertes also von 0 bis zu 3 14 Ihr ist eine Funktion der Position des Frequenzwertindexes zwischen 0 und K Dies macht einen großen Unterschied, dass ich lieber die Leistungsfunktion in Bezug auf den Frequenzwert definiere und Nicht der Index. Nachdem ich diese geändert habe, waren die Ergebnisse ziemlich gleich, aber nicht genau Im Blick auf die endgültige Matrix bei der Lösung von Ax b für die Koeffizienten nach Anwendung von Regularisierung und Anpassung, scheint es, dass die Werte innerhalb der Matrix A aus sind ein Faktor von etwa 10 Meine Intuition ist, dass die komplexen exp-Funktionen in R und C sind etwas anderes besser schlechter Genauigkeit berechnet, ich weiß nicht, also bin ich nicht sicher, ob das ist etwas, was wir jemals in der Lage sein zu lösen Aber ich bin nicht besorgt, Da die Endergebnisse so nah sind In der Tat hat es keinen Einfluss auf die Trades in meinen Beispielen, die ich zeige, sie waren die gleichen in iMetrica Und das ist das wichtigste. Anyway, ich kann Ihnen meine Version Ihres Codes schicken, wenn Sie Wollen, damit die Leute es herunterladen können, um die Beispiele zu probieren Oder Sie können diese Änderungen berücksichtigen und sie in zukünftigen Versionen von MDFA dauerhaft machen Lassen Sie mich wissen, und genießen Sie den Artikel. Sie arbeiten zu hart, alter Junge Ihre Haare wurden R-farbig R-Weben und R-Bürsten kommt auch in den Sinn, Übrigens wird die Konsistenz in umgekehrter Richtung gemessen iMetrica sollte in der Lage sein, I-MDFA zu replizieren, die die Referenz ist. Mein MDFA-Code, wie von Chris geändert, siehe oben Kommentare. DFT r Ich arbeite immer mit zentrierten Serien also die DFT in Frequenz Null ist null es s pr Oportional zu den mittleren Chris scheint nicht mit zentrierten Serien zu arbeiten, seine DFT unterscheidet sich von null in freq zero. I-MDFAnew r Es scheint, dass die expweight Amplitude-Gewichtung geändert wurde und ich denke, der Lambda-Decay-Begriff wurde auch geändert. Hinweis, dass ich meine letzte I-MDFA-Version nicht modifiziere, sind die obigen Modifikationen nützlich, wenn du Chris-Ergebnisse replizieren willst, aber ich bleibe bei meiner Version Um die Replikation durchzuführen, musst du die Daten von ihm verlangen. Leave a Reply Cancel Reply. Figure 1 In-Sample-Beobachtungen 1-250 und Out-of-Probe Leistung des Trading-Signals in diesem Tutorial mit MDFA Top gebaut Der Log-Preis der Yen FXY in 15 Minuten Intervallen und die Trades durch das Trading-Signal generiert hier schwarz Line ist ein Kauf lang, blau ist verkaufen Short-Position Bottom Die Renditen kumulierten Cash generiert durch den Handel, in Prozentsatz gewonnen oder verloren. In meinem früheren Artikel über Hochfrequenz-Handel in iMetrica auf der FOREX GLOBEX führte ich einige robuste Signal-Extraktion Strategien in iMetrica mit dem multidimensionalen direkten Filter Ansatz MDFA zu generieren Hochleistungs-Signale für den Handel auf der Devisen-und Futures-Markt In diesem Artikel Ich nehme eine kurze Abwesenheit von meiner Welt der Entwicklung von finanziellen Handelssignalen in iMetrica und migrieren in Eine uber-populäre Sprache, die in der Finanzierung aufgrund seiner üppigen Reihe von Paketen, schnelle Daten-Management und Grafik-Handling verwendet wird, und natürlich die Tatsache, dass es kostenlos wie in Sprache und Bier auf fast jeder Computer-Plattform in der Welt. Dieser Artikel gibt eine Intro-Tutorial zur Verwendung von R für den Hochfrequenzhandel auf dem FOREX-Markt mit dem R-Paket für MDFA von Herrn Doktor Marc Wildi von Bern und einigen Strategien, die ich für die Erzeugung von finanziell robusten Handelssignalen entwickelt habe. Für dieses Tutorial halte ich das zweite Beispiel Gegeben in meinem vorherigen Artikel, wo ich ein Trading-Signal für 15-Minuten-Log-Returns der japanischen Yen von Eröffnung Glocke zu Markt close EST Dies presen Tat etwas neue Herausforderungen als bisher, da die nahezu offenen Sprungvariationen viel größer sind als die, die durch stündliche oder tägliche Renditen erzeugt werden. Aber wie ich gezeigt habe, stellten diese größeren Variationen auf dem nahezu offenen Preis keine Probleme für die MDFA dar. Es nutzte diese Sprünge und machte große Gewinne durch die Vorhersage der Richtung des Sprungs Abbildung 1 an der Spitze dieses Artikels zeigt die in-Probe Beobachtungen 1-250 und out-of-Probe Beobachtungen 251 Weiter Leistung des Filters werde ich in Der erste Teil dieses Tutorials. In diesem Tutorial versuche ich, diese Ergebnisse zu replizieren, die ich in iMetrica aufgebaut habe und erweitern sie ein bisschen mit der R-Sprache und die Implementierung des MDFA, das hier vorhanden ist. Die Daten, die wir betrachten, sind 15 Minuten Log-Returns des Yen vom 4. Januar bis 17. Januar und ich habe sie als Datei gespeichert von ldfxyinsamp Ich habe eine zusätzliche erklärende Serie eingebettet in die Datei, die ich m verwenden, um den Preis des Yen vorzubereiten Darüber hinaus habe ich als O wird mit pricefxyinsamp verwendet werden, die der logarithmischer Preis von Yen ist, der verwendet wird, um die Performance zu kaufen, verkauft das Trading-Signal. Der ldfxyinsamp wird als In-Sample-Daten verwendet, um den Filter und das Trading-Signal für FXY zu erstellen. Um diese Daten so zu erhalten, Kann diese Beispiele zu Hause ausführen, mailen Sie mir und ich sende Ihnen alle notwendigen Dateien die in-Probe und out-of-sample Daten in einer Datei Mit einem kurzen Blick auf die ldfxyinsamp Daten, sehen wir Log-Returns des Yen an Alle 15 Minuten ab Marktöffnungszeitzone UTC Die Zieldaten Yen befinden sich in der ersten Spalte zusammen mit den beiden Erklärungsreihen Yen und ein weiteres Asset, das mit der Bewegung des Yen-Kopfes integriert ist. Ldfxyinsamp, 1, 2, 3 2013-01-04 13 30 00 0 000000d 00 0 000000d 00 0 0000000000 2013-01-04 13 45 00 4 763412d-03 4 763412d-03 0 0033465833 2013-01-04 14 00 00 -8 966599e-05 -8 966599e-05 0 0040635638 2013- 01-04 14 15 00 2 597055e-03 2 597055e-03 -0 0008322064 2013-01-04 14 30 00 -7 157556e-04 -7 157556e-04 0 0020792190 2013-01-04 1 4 45 00 -4 476075e-04 -4 476075e-04 -0 0014685198. Nach dem Aufbau des ersten Handelssignals für den Yen beginnen wir mit dem Hochladen der Daten in unsere R-Umgebung, definieren einige Anfangsparameter für die MDFA-Funktion Rufen Sie an und berechnen Sie dann die DFTs und das Periodogramm für den Yen. Wie ich in meinen früheren Artikeln erwähnt habe, beginnt meine Schritt-für-Schritt-Strategie für den Aufbau von Handelssignalen immer eine schnelle Analyse des Periodogramms des Assets, das an der Holding gehandelt wird Schlüssel zu geben Einblick in die Eigenschaften, wie die Asset-Trades, ist das Periodogramm ein wesentliches Werkzeug für die Navigation, wie der Extraktor gewählt wird Hier suche ich nach prinzipiellen Spektralspitzen, die im Zeitbereich entsprechen, wie und wo mein Signal auslösen Kauf verkaufen Trades Abbildung 2 zeigt das Periodogramm der 15-minütigen Log-Returns des japanischen Yen während der In-Sample-Periode vom 4. Januar bis 17. Januar 2013 Die Pfeile zeigen auf die wichtigsten Spektralspitzen, die ich suche und gibt einen Leitfaden für wie ich W Krank definieren meine Funktion Die schwarzen gepunkteten Linien zeigen die beiden Frequenzabgrenzungen an, die ich in diesem Beispiel betrachten werde, das erste Wesen und das zweite bei Beachten Sie, dass beide Cutoffs direkt nach einem spektralen Peak gesetzt sind, was ich im High-Frequenz-Handel sehr empfehlen kann Auf der FOREX mit MDFA, wie wir sehen werden, ist der Trick, um die Spektralspitze zu suchen, die für die nahezu offene Variation des Preises der Devisenrechnung Wir wollen diesen spektralen Peak nutzen, wie hier ist Die großen Gewinne im Fremdwährungshandel mit MDFA werden auftreten. Bild 2 Periodogramm von FXY Japanischen Yen zusammen mit spektralen Peaks und zwei verschiedenen Frequenz Cutoffs. In unserem ersten Beispiel betrachten wir die größere Frequenz als Cutoff für, indem Sie es auf die richtige Linie In der Figur des Periodogramms stelle ich dann zunächst die Timeliness - und Glätte-Parameter ein und deckte auf 0 zusammen mit der Einstellung aller Regularisierungsparameter auf 0. Dies gibt mir ein Barometer für Wo und wieviel die Filterparameter einstellen Bei der Auswahl der Filterlänge haben meine empirischen Untersuchungen über zahlreiche Experimente beim Aufbau von Handelssignalen mit iMetrica gezeigt, dass eine gute Wahl zwischen 1 4 und 1 5 der gesamten Samplelänge der Zeitreihendaten Natürlich hängt die Länge von der Häufigkeit der Datenbeobachtungen ab, dh 15 Minuten, stündlich, täglich, etc., aber im Allgemeinen werden Sie höchstwahrscheinlich nie mehr als größer als 1 4 die In-Sample-Größe haben. Ansonsten Regularisierung Kann zu schwerfällig werden, um effektiv zu handhaben In diesem Beispiel ist die Gesamtlänge in der Stichprobe 335 und so setze ich fest, auf welchen ich für den Rest dieses Tutorials stehe. In jedem Fall ist die Länge des Filters nicht der wichtigste Parameter für Betrachten bei der Erstellung von guten Handelssignalen Für eine gute, robuste Auswahl der Filterparameter paaren sich die entsprechenden Erklärungsreihen, die Ergebnisse des Handelssignals im Vergleich zum Beispiel sollten sich kaum unterscheiden Tun, dann ist die Parametrierung nicht robust genug. Nach dem Hochladen sowohl der In-Sample-Log-Return-Daten zusammen mit dem entsprechenden Log-Preis des Yen für die Berechnung der Handelsleistung, gehen wir in R, um die ersten Filtereinstellungen für die MDFA-Routine einzustellen Und dann berechnen Sie den Filter mit der IMDFAcomp-Funktion Dies gibt sowohl die imdfa Objekt Holding-Koeffizienten, Frequenz-Antwort-Funktionen und Statistiken des Filters, zusammen mit dem Signal für jede erläuternde Serie Wir kombinieren diese Signale, um die endgültige Trading-Signal in-Sample All Dies geschieht in R wie folgt: Die daraus resultierenden Frequenzgangfunktionen des Filters und die Koeffizienten sind in der folgenden Abbildung aufgetragen. Abbildung 3 Die Frequenzantwortfunktionen des Filteroberteils und die Filterkoeffizienten unten. Geben Sie die vorhandene Rauschen des Rauschs Bestanden die Cutoff-Frequenz Dies wird durch die Erhöhung der expaling smoothness Parameter Die Koeffizienten für jede erläuternde Serie zeigen einige c Orrelation in ihrer Bewegung, da die Verzögerungen zunehmen. Allerdings lässt die Glätte und der Abfall der Koeffizienten viel zu wünschen übrig. Wir werden dies durch die Einführung von Regularisierungsparametern beheben. Plots des In-Sample-Trading-Signals und die Performance-In-Sample des Signals werden gezeigt Die beiden Zahlen unten Beachten Sie, dass das Trading-Signal verhält sich ganz schön in-Probe Allerdings kann man sich täuschen Diese stellaren Leistung ist zum großen Teil zu einem Filter-Phänomen namens Overfitting Man kann daraus schließen, dass Überfüllung ist der Schuldige hier durch einfaches Betrachten der Nicht-Güte Der Koeffizienten zusammen mit der Anzahl der gefrorenen Freiheitsgrade, die in diesem Beispiel etwa 174 von 174 zu viel zu hoch sind. Wir möchten diese Zahl um etwa die Hälfte der Gesamtheit der Freiheitsgrade der Anzahl der Erklärungsreihen x L erhalten. Figure 4 Das Trading-Signal und die Log-Return-Daten des Yen. Die In-Probe-Performance dieses Filters zeigt die Art der Ergebnisse, die wir gerne sehen würden Ter Regulierung angewendet Aber jetzt kommt für die ernüchternden Effekte der Überfüllung Wir wenden diese Filterkoeffizienten auf 200 15-minütige Beobachtungen des Yen und der Erklärungsreihe vom 18. Januar bis 1. Februar 2013 an und vergleichen mit den Merkmalen in der Stichprobe R, laden wir zuerst die Out-of-Sample-Daten in die R-Umgebung und wenden dann den Filter auf die Out-of-Sample-Daten an, die ich als xout definiert habe. Das Diagramm in Abbildung 5 zeigt das Out-of-Sample-Trading-Signal Beachten Sie, dass das Signal ist nicht annähernd so glatt wie es war in-Probe Überschwingen der Daten in einigen Bereichen ist auch offensichtlich vorhanden Obwohl die Out-of-Probe Überlagerung Eigenschaften des Signals sind nicht schrecklich verdächtig, würde ich nicht vertrauen, diese Filter zu Produzieren stellaren Rückkehr auf lange Sicht. Figur 5 Filter angewendet auf 200 15 Minuten Beobachtungen von Yen out-of-Probe zu produzieren Handelssignal in blau dargestellt. Nach der vorherigen Analyse der Mittel-Quadrat-Lösung keine Anpassung oder Regularisierung, wir Nun das Problem der Überfüllung aufzuräumen, das in den Koeffizienten sichtbar war, und das Geräusch in den Stoppbandfrequenzen nachträglich zu klären. Um die Parameter für Glättung und Regularisierung zu wählen, muss man zuerst den Glätteparameter zuerst anwenden Im Allgemeinen die Koeffizienten glatt, während sie als Vorregulator fungieren und dann zur Auswahl geeigneter Regularisierungskontrollen vorankommen. Bei der Betrachtung der Koeffizienten Abbildung 3 sehen wir, dass eine gerechte Glättung notwendig ist, mit nur einer leichten Berührung des Zerfalls Zwei Parameter in R, eine Option ist es, die Troikaner-Optimierer hier zu finden, um eine geeignete Kombination zu finden Ich habe eine geheime Sauce algorithmischen Ansatz Ich entwickelte für iMetrica für die Auswahl der optimalen Kombinationen von Parametern bei einem Extraktor und eine Performance-Indikator, obwohl es langwierig sogar In GNU C und umständlich zu bedienen, so dass ich in der Regel bevorzugen die Strategie in diesem Tutorial diskutiert In diesem Beispiel, ich bega N durch Setzen der Lambdasmooth auf 5 und der Zerfall auf 1, 1 zusammen mit einem exprehensive Glätte-Parameter auf 8 5 eingestellt Nach dem Betrachten der Koeffizienten, war es immer noch nicht genug Glätte, so fuhr ich fort, um endlich mehr 63 zu erreichen, was der Trick machte Ich wählte dann Lambda, um die Effekte der Glättung auszugleichen Lambda ist immer die letzte Resort Tweaking Parameter. Figure 6 zeigt die resultierende Frequenzantwort Funktion für beide Erklärungsreihen Yen in rot Beachten Sie, dass die größte Spektralspitze direkt vor der Frequenz Cutoff at gefunden wird Hervorgehoben und leicht beeinträchtigt Wert bei 8 anstelle von 1 0 Die anderen spektralen Spitzen unten sind auch vorhanden Für die Koeffizienten wurde gerade genug Glättung und Zerfall angewendet, um die Verzögerung, die zyklische und korrelierte Struktur der Koeffizienten intakt zu halten, aber jetzt sehen sie aus Viel schöner in ihrer geglätteten Form Die Anzahl der gefrorenen Freiheitsgrade wurde auf ca. 102 reduziert. Abb. 6 Die Frequenzgangfunktionen und das Coef Ficients nach der Regularisierung und Glättung wurden aufgetragen top Die geglätteten Koeffizienten mit leichtem Zerfall am unteren Ende Die Anzahl der gefrorenen Freiheitsgrade beträgt etwa 102 von 172. Neben einer verbesserten gefrorenen Freiheitsgrade und keiner offensichtlichen Verwüstung der Überfüllung wenden wir diese an Filter-out-of-Probe auf die 200 Out-of-Sample-Beobachtungen, um die Verbesserung der Struktur der Filterkoeffizienten zu überprüfen, die unten in Abbildung 7 gezeigt sind. Beachten Sie die enorme Verbesserung der Eigenschaften des Handelssignals im Vergleich zu Abbildung 5 Das Überschwingen Der Daten ist beseitigt und die Gesamtglätte des Signals hat sich deutlich verbessert Dies ist aufgrund der Tatsache, dass wir die Anwesenheit von Overfitting ausgelöscht haben. Figure 7 Out-of-Sample-Trading-Signal mit Regularisierung. Mit allen Indikationen eines Filters ausgestattet Mit genau den Merkmalen, die wir für Robustheit brauchen, wenden wir jetzt das Trading-Signal sowohl in-Probe als auch aus der Probe an, um die Buy-Trades zu aktivieren Und sehen Sie die Leistung des Handelskontos im Barwert Wenn das Signal unter Null geht, verkaufen wir die Short-Position und wenn das Signal über Null steigt, kaufen wir die Long-Position. Das Top-Plot von Abbildung 8 ist der Log-Preis des Yen Für die 15-Minuten-Intervalle und die gepunkteten Linien genau dort, wo das Trading-Signal generiert Trades Kreuzung Null Die schwarzen gepunkteten Linien stellen eine Kauf-Long-Position und die blauen Linien zeigen eine Verkaufs - und Short-Position Beachten Sie, dass das Signal alles in der Nähe zu öffnen Springt für den Yen zum Teil dank der erläuternden Serie Dies ist genau das, was wir anstreben werden, wenn wir eine Regularisierung und Anpassung an den Filter hinzufügen. Der Cash-Account der Trades über dem In-Sample-Zeitraum wird unten gezeigt, wo Transaktionskosten gesetzt wurden Bei 05 Prozent In-Probe, das Signal verdiente rund 6 Prozent an 9 Handelstagen und eine 76 Prozent Handels-Erfolgsquote. Figure 8 In-Probe Leistung des neuen Filters und der Trades, die generiert werden. N Ow für den ultimativen Test, um zu sehen, wie gut der Filter bei der Herstellung eines Sieger-Trading-Signals durchführt, haben wir den Filter auf die 200-15-minütige Out-of-Sample-Beobachtung des Yen und die Erklärungsreihe vom 18. Januar bis zum 1. Februar angewendet und machen Trades basiert auf dem Nulldurchgang Die Ergebnisse sind unten in Abbildung 9 dargestellt. Die schwarzen Linien repräsentieren die Käufe und die blauen Linien, die die Shorts verkauft. Beachten Sie, dass der Filter trotzdem die nahezu offenen Sprünge auch außerhalb der Probe vorhersagen kann Regularisierung Der Filter erliegt nur drei winzigen Verlusten bei jeweils weniger als 08 Prozent zwischen den Beobachtungen 160 und 180 und einem kleinen Verlust am Anfang, wobei eine Out-of-Sample-Erfolgsquote 82 Prozent und einen ROI von knapp über 4 Prozent überstieg Das 9-tägige Intervall. Figure 9 Out-of-Probe Leistung des regulierten Filters auf 200 Out-of-Probe 15 Minuten Rückkehr des Yen Der Filter erzielte 4 Prozent ROI über die 200 Beobachtungen und ein 82 Prozent Handelserfolg ratiopare dies mit dem Ergebnisse Erreicht in iMetrica unter Verwendung der gleichen MDFA-Parametereinstellungen In Abbildung 10 werden sowohl die In-Probe - als auch die Out-of-Sample-Performance gezeigt. Die Performance ist nahezu identisch. Abbildung 10 In-Sample - und Out-of-Sample-Performance des Yen-Filters in IMetrica Fast identisch mit der Leistung, die in R. gefunden wird. Wir nehmen einen Stich bei der Herstellung eines anderen Handelsfilters für den Yen, nur dieses Mal wollen wir nur die niedrigsten Frequenzen identifizieren, um ein Trading-Signal zu generieren, das weniger oft handelt und nur die größten Zyklen sucht Mit der Leistung des vorherigen Filters wollen wir noch auf die Frequenzen zielen, die für die großen, nahezu offenen Variationen des Preises von Yen verantwortlich sein könnten. Um dies zu tun, wählen wir unseren Cutoff aus, der die größten drei effektiv halten wird Spektralspitzen intakt in der Tiefpaßband von. Für diesen neuen Filter halten wir die Dinge einfach, indem wir weiterhin die gleichen Regulierungsparameter verwenden, die im vorherigen Filter gewählt wurden, da sie scheinbar gute Ergebnisse aus der Probe T zu produzieren schienen Er und die gewichtigen Anpassungsparameter müssen jedoch angepasst werden, um die neuen Rauschunterdrückungsanforderungen im Stoppband und die Phaseneigenschaften im kleineren Durchlassband zu berücksichtigen. So steigere ich den Glättungsparameter und verringerte den Timelinessparameter, der nur das Passband beeinflusst, um diese Änderung zu berücksichtigen Die neuen Frequenzgangfunktionen und Filterkoeffizienten für dieses kleinere Tiefpassdesign sind unten in Abbildung 11 dargestellt. Beachten Sie, dass der zweite Spektralpeak berücksichtigt und nur wenig unter den neuen Änderungen beruhigt wird. Die Koeffizienten haben immer noch die spürbare Glätte und Zerfall bei den größten Verzögerungen. Abbildung 11 Frequenzantwortfunktionen der beiden Filter und deren entsprechende Koeffizienten. Um die Effektivität dieses neuen, niedrigeren Trading-Frequenzdesigns zu testen, wenden wir die Filterkoeffizienten auf die 200 Out-of-Sample-Beobachtungen der 15-minütigen Yen-Log-Returns an Die Leistung ist unten in Abbildung 12 dargestellt. In diesem Filter sehen wir deutlich, dass der Filter sti Es gelingt es, die großen, nahezu offenen Sprünge im Preis des Yen korrekt vorherzusagen. Nur drei Gesamtverluste werden während der 9-tägigen Periode beobachtet. Die Gesamtleistung ist nicht so ansprechend wie die bisherige Filtergestaltung, da weniger Umfang der Trades gemacht wird, Mit einem knapp 2 Prozent ROI und 76 Prozent Handels-Erfolgsquote Allerdings könnte dieses Design die Prioritäten für einen Händler viel empfindlicher auf Transaktionskosten passen. Figure 12 Out-of-Probe Leistung des Filters mit niedrigeren Cutoff. Verifikation und Cross-Validierung ist Wichtig, so wie der interessanteste Mann in der Welt Ihnen sagen wird. Der Punkt dieses Tutorials war, einige der Hauptkonzepte und Strategien zu zeigen, die ich unterziehe, wenn ich mich dem Problem des Aufbaus eines robusten und hocheffizienten Handelssignals für irgendein gegebenes Vermögen nähere at any frequency I also wanted to see if I could achieve similar results with the R MDFA package as my iMetrica software package The results ended up being nearly parallel except for some minor differences The main points I was attempting to highlight were in first analyzing the periodogram to seek out the important spectral peaks such as ones associate with close-to-open variations and to demonstrate how the choice of the cutoff affects the systematic trading Here s a quick recap on good strategies and hacks to keep in mind. Summary of strategies for building trading signal using MDFA in R. As I mentioned before, the periodogram is your best friend Apply the cutoff directly after any range of spectral peaks that you want to consider These peaks are what generate the trades. Utilize a choice of filter length no greater than 1 4 Anything larger is unnecessary. Begin by computing the filter in the mean-square sense, namely without using any customization or regularization and see exactly what needs to be approved upon by viewing the frequency response functions and coefficients for each explanatory series Good performance of the trading signal in-sample and even out-of-sample in most cases is meaningless unless the coefficients have solid robust characteristics in both the frequency domain and the lag domain. I recommend beginning with tweaking the smoothness customization parameter expweight and the lambdasmooth regularization parameters first Then proceed with only slight adjustments to the lambdadecay parameters Finally, as a last resort, the lambda customization I really never bother to look at lambdacross It has seldom helped in any significant manner Since the data we are using to target and build trading signals are log-returns, no need to ever bother with i1 and i2 Those are for the truly advanced and patient signal extractors, and should only be left for those endowed with iMetrica. If you have any questions, or would like the high-frequency Yen data I used in these examples, feel free to contact me and I ll send them to you Until next time, happy extracting. Taking a quick glance at the ldfxyinsamp data, we see log-returns of the Yen at every 15 minutes starting at m arket open time zone UTC The target data Yen is in the first column along with the two explanatory series Yen and another asset co-integrated with movement of Yen. So in your file in input you use the log close-returns twice col1 and 2 and a another asset. Can you tell me more about this another asset cointegred how you find it. While it s not so obvious to determine a set of explanatory variables that will improve signal and trading performance, I developed a tool called fundamental frequency component analysis that helps me choose series with strong lag s correlations at certain frequencies I m interested in The method seems to work pretty well so far in my experience. Thanks Chris, have you planned other thread in the coming weeks. Yes, I have many new ideas for articles, and will be writing one soon I ve been busy the past couple months improving the methodology even more, making it even more robust for financial trading The problem is I start to give away too many of my secrets and wil l eventually lose my competitive advantage, so I need to remain a bit cryptic. What your favorites time frame 15 mins i think.15 minutes is a good range, the lower the frequency the better and more robust the signal will be However, in practice I m currently using 5 min returns with a proprietary trading firm in Chicago on Index Futures. You filtre the time in your data You trade only of 13 30pm until 20pm. You overnight trade.
No comments:
Post a Comment