Geometrische Brown Bewegungs Forex Charts
Monte Carlo Simulation mit GBM Eine der häufigsten Möglichkeiten zur Risikoabschätzung ist der Einsatz einer Monte-Carlo-Simulation (MCS). Um beispielsweise den Value at Risk (VaR) eines Portfolios zu berechnen, können wir eine Monte-Carlo-Simulation durchführen, die versucht, den wahrscheinlichsten Verlust eines Portfolios mit einem Konfidenzintervall über einen bestimmten Zeithorizont vorauszusagen Bedingungen für VaR: Vertrauen und Horizont. (VAR) - Teil 1 und Teil 2.) In diesem Artikel werden wir eine grundlegende MCS auf einen Aktienkurs angewendet zu überprüfen. (Lesen Sie weiter, die Verwendung und Grenzen der Volatilität und Einführung in Value at Risk (VAR) Wir brauchen ein Modell, um das Verhalten des Aktienkurses festzulegen, und verwenden Sie eines der gebräuchlichsten Modelle in der Finanzierung: geometrische Brownsche Bewegung (GBM). Während die Monte-Carlo-Simulation auf ein Universum verschiedener Ansätze zur Simulation verweisen kann, werden wir hier mit den einfachsten beginnen. Wo soll ich anfangen? Eine Monte-Carlo-Simulation ist ein Versuch, die Zukunft um ein Vielfaches vorauszusagen. Am Ende der Simulation produzieren Tausende oder Millionen von Zufallsversuchen eine Verteilung der Ergebnisse, die analysiert werden können. Die grundlegenden Schritte sind: 1. Geben Sie ein Modell an (zB geometrische Brownsche Bewegung) 2. Erzeugen Sie zufällige Versuche 3. Verarbeiten Sie die Ausgabe 1. Geben Sie ein Modell an (zB GBM) In diesem Artikel verwenden wir die geometrische Brownsche Bewegung (GBM) Was technisch ein Markov-Prozess ist. Dies bedeutet, dass der Aktienkurs einer zufälligen Wanderung folgt und mit (zumindest) der schwachen Form der effizienten Markthypothese (EMH) übereinstimmt: Vergangene Kursinformationen sind bereits enthalten und die nächste Kursbewegung ist bedingt unabhängig von vergangenen Kursbewegungen . (Für mehr über EMH, lesen Sie durch die effiziente Markt-Hypothese und was ist Markt-Effizienz) Die Formel für GBM ist unten, wo S ist der Aktienkurs, m (die griechische mu) ist die erwartete Rendite. S (griechisches Sigma) ist die Standardabweichung der Rückkehr, t ist Zeit und e (griech. Epsilon) ist die Zufallsvariable. Wenn wir die Formel neu anordnen, um nur für die Änderung des Aktienkurses zu lösen, sehen wir, dass GMB sagt, dass die Änderung des Aktienkurses der Aktienkurs S multipliziert mit den beiden Begriffen innerhalb der Klammer unten ist: Der erste Begriff ist eine Drift und die zweite Begriff ist ein Schock. Für jeden Zeitraum geht unser Modell davon aus, dass der Preis durch die erwartete Rendite driftet. Aber die Drift wird schockiert (addiert oder subtrahiert) durch einen zufälligen Schock. Der Zufallsschock ist die Standardabweichung s, multipliziert mit einer Zufallszahl e. Dies ist einfach eine Möglichkeit, die Standardabweichung zu skalieren. Das ist das Wesen von GBM, wie in Abbildung 1 dargestellt. Der Aktienkurs folgt einer Reihe von Schritten, wobei jeder Schritt ein Drift plusminus ein zufälliger Schock ist (selbst eine Funktion der Bestände Standardabweichung): Handel basiert auf Autoregressive Model Autoregressive ( AR) Modell ist eine stochastische Prozessdarstellung für Zeitreihen. In diesem Modell wird die nächste interessierende Variable (zB nächster Preis) mit einer linearen Kombination von vorherigen Werten in einer stochastischen Weise modelliert, wobei c eine Konstante ist, yt die Variable von Interesse zum Zeitpunkt t und et ein weißes Rauschen ist . Dieser stochastische Prozess wird üblicherweise als AR (p) - Modell bezeichnet. Weitere Informationen zu diesem stochastischen Prozess finden Sie hier. Der Handelsalgorithmus ist im Folgenden zusammengefasst: 0. Zu Beginn der alltäglichen Kerze (dh des offenen Tagespreises) führt der Algorithmus folgende Schritte durch: 1. Berechnen Sie den Trend (zB den Durchschnitt) des vergangenen N-Tages-Schlusskurses, der Wird P-Array genannt. 2. Entfernen Sie den Trend von P. Speichern Sie das Ergebnis in D-Array. 3. Schätzen Sie die Parameter eines AR (1) - Modells. 4. Mit D und dem geschätzten Modell Dickey-Fuller-Test durchführen. Wenn D stationär ist, gehen Sie zu (5) andernfalls zu (0) 5. Stellen Sie den nächsten Wert von D (der DN1 ist) mit dem geschätzten AR (1) Modell vor. 6. Entscheidung lt - leer 6. Wenn DN1gtDN. Dann Entscheidung lt - Buy, Close Sell else, wenn DN1ltDN. Dann Entscheidung lt - Sell, Close Buy 7. Führen Sie die Entscheidung. 8. Gehe zu (0) Ich entwickelte eine EA für die Prüfung dieser Trading-Idee auf AR (1) - Modell. Hier ist ein Backtest Ergebnis von 2000 bis 2015 auf EURUSD: Attached Image (zum Vergrößern anklicken) Dieser Trading-Idee entsteht eine Reihe von Abfragen wie: Ist dieser stochastische Prozess (dh autoregressive Modell) ein vielversprechender Ansatz für den statistischen Handel Wie können wir die (P, q), ARIMA (p, d, q) und ARFIMA (p, d.), Wenn es sich um ein Modell handelt, , Q) Modelle Was ist mit nicht-linearen autoregressiven Modellen. Ich bin an der EA hier. Hoffentlich würde jede weitere Verbesserung der Strategie in einer neueren Version der EA zu testen, und wer weiß, handeln live Diskussion Diese Trading-Idee entsteht eine Reihe von Abfragen wie: Ist dieser stochastische Prozess (dh autoregressive Modell) ein vielversprechender Ansatz für Statistischer Handel Wie können wir die Handelslogik verbessern? Werden SLTP-Einstellungen für Trades die Ergebnisse verbessern? Was ist, wenn wir p im AR (p) - Modell erhöhen. Ich bin an der EA hier. Hoffentlich würde jede weitere Verbesserung in der Strategie in einer neueren Version der EA zu testen, und wer weiß, Handel live Hi MathTrader7 führen. Interessanter Ansatz und das ist ein schönes Backtest-Ergebnis :-) Ich stelle fest, dass dies ein spezieller Fall linearer Ansatz für die stochastische Modellierung und als Folge wird fliegen während langfristigen Trendperioden als historische Preis-Bias weiterhin eine Rolle bei der Vorhersage der nächsten Bars spielen Preis-Aktion für einige Zeit, trotz der Tatsache, dass Geschichte progressiv im Laufe der Zeit verdünnt. Ich könnte mir aber vorstellen, dass, wenn Tendenzänderungen auftreten oder während choppy Märkten, es einige Zeit dauern würde, damit die Änderung in den Resultaten reflektiert wird. Haben Sie alle auf dieses Modell angewandten Recency-Gewichtungen geprüft oder getestet, um die Ergebnisse auf eine jüngere Preisaktion oder vielleicht sogar auf einen Reset zurückzusetzen (und erneut mit ausreichend neuen Preisdaten zu beginnen), wenn die historische Richtungsvorspannung eine kritische Verschlechterungsschwelle erreicht Quidquid latine dictum, altum Videtur Hallo MathTrader7. Interessanter Ansatz und das ist ein schönes Backtest-Ergebnis :-) Ich stelle fest, dass dies ein spezieller Fall linearer Ansatz für die stochastische Modellierung und als Folge wird fliegen während langfristigen Trendperioden als historische Preis-Bias weiterhin eine Rolle bei der Vorhersage der nächsten Bars spielen Preis-Aktion für einige Zeit, trotz der Tatsache, dass Geschichte progressiv im Laufe der Zeit verdünnt. Ich könnte mir aber vorstellen, dass, wenn Tendenzänderungen auftreten oder während choppy Märkten, es einige Zeit dauern würde, damit die Änderung in den Resultaten reflektiert wird. Haben. Nicht sicher, ich kann mit Ihrem Denken zustimmen. Wenn langfristige Trends sind, wo dieser Ansatz übertreffen sollte, warum ist das Aktiendiagramm so flach über die letzten 150 ungerade Trades durch die meisten Maßnahmen der EURUSD hat sich in einem Abwärtstrend seit Mitte 2014, noch die EA nicht in der Lage, auf diesem zu profitieren Trend. DieWerke sind die Scharniere des Schicksals. - Pythagoras (570 v. Chr. - 495 v. Chr.) Hi MathTrader7. Interessanter Ansatz und das ist ein schönes Backtest-Ergebnis :-) Ich stelle fest, dass dies ein spezieller Fall linearer Ansatz für die stochastische Modellierung und als Folge wird fliegen während langfristigen Trendperioden als historische Preis-Bias weiterhin eine Rolle bei der Vorhersage der nächsten Bars spielen Preis-Aktion für einige Zeit, trotz der Tatsache, dass Geschichte progressiv im Laufe der Zeit verdünnt. Ich könnte mir aber vorstellen, dass, wenn Tendenzänderungen auftreten oder während choppy Märkten, es einige Zeit dauern würde, damit die Änderung in den Resultaten reflektiert wird. Haben. Hallo Copernicus, freut mich dich in diesem Thread zu sehen. -) Ich hätte erwähnen sollen, dass ich zuerst den Trend in der Zeitreihe (Subtraktion des Mittelwertes von den letzten N-Preisen) entferne, dann schätze ich ein AR (1) - Modell und teste, ob ein Einheitswurzel in der geschätzten AR - (Mit Dickey-Fuller-Test) und schließlich den nächsten Wert unter Verwendung des AR (1) - Modells vorherzusagen, auf dem ein LognShort-Handel entschieden wird. Mathtrader, da das EURUSD-Paar aus zwei Währungen besteht, warum erstellen Sie nicht einen EUR-Index und einen USD-Index (oder verwenden Sie einen von einem Broker wie LiteForex), dann führen Sie Ihr AR-Modell Auf diesen beiden Angaben. Wenn EUR-Modell am nächsten Tag und USD-Modell am nächsten Tag nach unten zeigt, dann kaufen EURUSD. Oder sogar einen weiteren Filter, füge EURUSD in die Entscheidungsmatrix ein, und wenn alle 3 zustimmen, dann lange oder kurze EURUSD (oder ausbleiben, wenn überhaupt nicht zustimmen). Grüße, EZ Hallo ezcurrency, mag ich Ihre Idee sehr viel, und Kranke geben ihm einen Versuch. Sie können nicht wissen, aber ich habe bereits eine EA, die XXXLFX-Charts erstellt mit jedem Broker entwickelt. Allerdings ist Backtesting Ihre Idee mit MT4 Strategie-Tester nicht trivial, da es nur lädt ein Asset (z. B. Währungspaar) Daten während des Back-Tests. Ich muss USDLFX und EURLFX in Textdateien (im CSV-Format oder so) speichern, um sie beim Backtesting Ihrer Idee zu lesen. Dies wäre der nächste Punkt in meiner Liste zu tun. Mal sehen, wie es funktionieren würde. Beste, Mathe Lassen Sie Ihre Gewinner laufen und schneiden Sie Ihre Verlierer kurz Mitglied seit: Aug 2011 Status: Mitglied 1,132 Beiträge Die Ergebnisse in der ersten Stelle sind für ein solches Modell erstaunlich. Können Sie diesem Backtest vertrauen Es ist in fett und rot geschrieben quotthe Ergebnisse dürfen nicht berücksichtigt werden. Id wie zu versuchen und zu reproduzieren. Können Sie mehr Details (ich habe nicht MT4 und die Datei kompiliert ich kann nicht Reverse Engineering aus der Quelle). Ich sehe InpMaxNumPrices9, ist es die Größe des Rückblickfensters an den AR Prozess anzupassen oder die Reihenfolge der AR (p9) Ich frage, weil es sehr klein für das Fenster und sehr groß für den Auftrag aussieht. Passen Sie die Preise oder die Retouren oder die Log-Rückkehr oder etwas anderes Welchen Algorithmus verwenden Sie, um die AR passen Sie sagen, dass Sie die Daten zu trennen, aber Sie sagen auch, dass Sie dies tun, indem Sie den Durchschnitt. Das ist nicht wirklich enttäuschend. Können Sie sich entwickeln Bitte entfernen Sie den gleichen Mittelwert für alle Proben in Ihrem Fenster oder entfernen Sie den aktuellen Mittelwert aus der aktuellen Probe und legen Sie es in das Fenster (nicht sicher, Im klar hier.) Sie sagen, Sie testen für die Existenz Eines Einheitswurzels. Was tun Sie, wenn der DF-Test lehnt die Null-Hypothese, während Sie bereits in einer Position Keine Gier. Keine Angst. Nur Mathe. Die Ergebnisse, die in der ersten Post gezeigt werden, sind für solch ein einfaches Modell erstaunlich. Können Sie diesem Backtest vertrauen Es ist in fett und rot geschrieben quotthe Ergebnisse dürfen nicht berücksichtigt werden. Id wie zu versuchen und zu reproduzieren. Können Sie mehr Details (ich habe nicht MT4 und die Datei kompiliert ich kann nicht Reverse Engineering aus der Quelle). Ich sehe InpMaxNumPrices9, ist es die Größe des Rückblickfensters an den AR Prozess anzupassen oder die Reihenfolge der AR (p9) Ich frage, weil es sehr klein für das Fenster und sehr groß für den Auftrag aussieht. Passen Sie die Preise oder die Retouren. Ich aktualisiert Trading-Algorithmus mit mehr Details in Post 1. Hoffe, es beantwortet Ihre Fragen und hilft Ihnen, die Ergebnisse zu duplizieren. Nicht, dass ich jemals in der Lage, es selbst gehen, aber Sie sollten versuchen, Encog mit Metatrader, wenn Sie sich für HMMs interessiert sind (plus die meisten anderen Hauptformen von NNs). Ich würde lieben, über Ihre Resultate mit dem zu hören. Heatonresearchencog PS, betrachten Sie MT5, wenn Sie schnellere Strategie-Tests wünschen (mt5 kann alle Kerne parallel verwenden, wenn das Optimieren). Danke für den Link zum Paket. -) Ich werde sehen, ob es einfach ist, Encog mit MT4 zu verwenden. Um ehrlich zu sein, vertraue ich nicht MT5-Plattform. Als ich anfing, es zu verwenden, um meine Strategien zu entwickeln, fand ich eine Menge Bugs. Es kann jetzt stabiler sein als diese Zeit, aber ich bevorzuge es, MT4 -) P. S. Ich würde meine Ergebnisse hier zu teilen. Lassen Sie Ihre Gewinner laufen und schneiden Sie Ihre Verlierer kurz Hi Innate Danke für den Link zum Paket. -) Ich werde sehen, ob es einfach ist, Encog mit MT4 zu verwenden. Um ehrlich zu sein, vertraue ich nicht MT5-Plattform. Als ich anfing, es zu verwenden, um meine Strategien zu entwickeln, fand ich eine Menge Bugs. Es kann jetzt stabiler sein als diese Zeit, aber ich ziehe es vor, MT4 -) P. S. Ich würde meine Ergebnisse hier zu teilen. Beste, Mathe Das wäre großartig, da es ein Bereich, den ich schon immer wollte, aber meine Coding-Fähigkeiten nur arent dort schon. Vielen Dank Ich lese auf Encog erheblich und es ist das beste Produkt, das ich herausfinden kann, um zu tun, was Sie nach. MT5 Fehler Hmmm. Nun, ich sprang auf mt5 rein für die Fähigkeit, rigoros und schnell zu testen. Es hat meine Entwicklungszeit erheblich beschleunigt. (Ich habe eine Maschinendaten-Mining-Strategien praktisch 247 laufen 28 parallele Threads auf einmal) MT4 und 5 sind sehr ähnlich in der Sprache jetzt. Nur seine eine Schmerz wechselnde Reihenfolge senden und so Zeug (mt4 ist viel einfacher in diesem Sinne zu verwenden). Sowieso. Zurück zu Ihrem Auto Regressivmodell. Gibt es eine Rückkopplungsschleife für die Prognosegenauigkeit (z. B. mittlere quadratische Vorhersagefehler oder ähnliches) habe ich mich oft gefragt, wie so etwas auf einem Multi Time Frame-Ansatz laufen würde. Jeder Zeitrahmen würde ein Vertrauensniveau in der Vorhersage zu etablieren, dann durch eine Form der Scoring der Vertrauensniveaus der ea würde die Richtung und Ziel wählen. Was ist das alles über seine alles über Geld. Hallo ezcurrency, mag ich Ihre Idee sehr viel, und Kranke geben ihm einen Versuch. Sie können nicht wissen, aber ich habe bereits eine EA, die XXXLFX-Charts erstellt mit jedem Broker entwickelt. Allerdings ist Backtesting Ihre Idee mit MT4 Strategie-Tester nicht trivial, da es nur lädt ein Asset (z. B. Währungspaar) Daten während des Back-Tests. Ich muss USDLFX und EURLFX in Textdateien (im CSV-Format oder so) speichern, um sie beim Backtesting Ihrer Idee zu lesen. Das wäre nächste. Sind Sie vertraut mit R Es kann wahrscheinlich alle Tests (AR-Modelle enthalten), bei viel schnelleren Geschwindigkeiten als MT4. Ich benutze R, um Analyse die ganze Zeit zu tun und testen Sie einige allgemeine Ideen, bevor ich meine Modelle in MT4 Code.
Comments
Post a Comment