Monday, February 13, 2017

Binary Optionen Strategie Tester Forex

Binary Options Strategy Tester für Metatrader 4: Binär-Optionen Strategien für Backtest in Metatrader 4 Strategy-Tester Führen Sie Backtests von Binär-Optionen Strategien für längere Zeiträume in kurzer Zeit Verbessern Binary Options Strategien, um sie stabil zu handeln Führen Sie Tests für Binary Options-Strategien mit Ihrem Broker durch. Führen Sie Tests für ein beliebiges Symbol (zB EURUSD, GBPUSD, EURJPY usw.) oder einen beliebigen Zeitrahmen (zB M1, M5, M15, M30, H1 usw.) durch. Der Strategie-Tester von Metatrader 4 kann nicht verarbeitet werden Binäre Optionen. Daher wird dieses Dienstprogramm virtuelle Bestellungen zu platzieren, ihre Ergebnisse zu zählen und druckt die Informationen auf dem Diagramm, um Ihnen eine Möglichkeit, zu testen und zu verbessern Ihre Binär-Optionen-Strategie. Konzept: Siehe Screenshot 1 für das Konzept des Dienstprogramms Binary-Options-Strategy-Tester. Bitte beachten Sie: Backtesting mit historischen Daten wird nie die wirkliche Zukunft, aber es könnte Ihnen einen angenäherten Wert, um Ihre Strategie stabiler. Die Qualität Ihres Backtests hängt von Ihren historischen Daten ab. Daher wird dringend empfohlen, eine Reihe von hight-Qualität-Daten zu verwenden Installation Download und Kauf der Binary-Optionen-Strategie-Tester-Programm - eine gekaufte Version benötigt wird. Warum eine gekaufte Version des Dienstprogramms Binary-Options-Strategy-Tester benötigt wird Eine Binary-Options-Strategie muss eine Funktion des Binary-Options-Strategy-Testers aufrufen (über die Binary-Options-Strategy-Library), um die virtuellen Trades Siehe Screenshot 1 Konzept). Im Zusammenhang mit dem Lizenzkonzept von MQL4 funktioniert das nur, wenn das Produkt eine Arbeitslizenz hat. Daher müssen Sie das Produkt zu testen Binär-Optionen-Strategien oder die Beispiel-Code im Abschnitt Aufbau einer Strategie zu kaufen. Erstellen Sie eine Strategie: Siehe Erstellen und Testen einer Strategie für Binäre Optionen mit Strategy-Tester von Metatrader 4 für ein Beispiel, wie Sie eine Strategie für Binary-Options-Strategy-Tester und Run-Backtests sowie Forward-Tests erstellen können. 1. Öffnen Sie Metatrader 4 Strategy-Tester, wählen Sie Binary-Options-Strategy-Tester (Ordner Market), stellen Sie Ihre benötigten Eingabeparameter ein und starten Sie Strategy-Tester. 2. Ziehen Sie den Indikator, in dem Ihre Strategie im Chart gespeichert ist, die erforderlichen Eingabeparameter für die Strategie fest und sehen Sie die Ergebnisse im Diagramm. 3. Verbessern Sie Ihre Strategie und oder ändern Sie die Eingabeparameter, um den Backtest erneut auszuführen, bis Ihre Strategie stabil für den Handel ist. 4. Führen Sie vorwärts Tests durch Ziehen der Binary-Options-Strategie-Tester-Dienstprogramm und Ihre Strategie-Indikator auf Demo-oder Live-Diagramm Ihres Brokers. Zusätzlich zu Ihrem Indikator mit Ihrer Binary Options Strategie können Sie die Indikatoren, die von Ihrer Strategie verwendet werden, mit ihren verwendeten Einstellungen auf der Karte platzieren, um sie in Echtzeit während des Testens zu sehen. Darüber hinaus können Sie alle Indikatoren und deren Einstellungen speichern, indem Sie die Schablone des Diagramms speichern und beim nächsten Testlauf laden. Verwenden Sie die Pause-Taste des MetaTrader 4 Strategy-Testers, um alle benötigten Indikatoren mit ihren Einstellungen auf einer Vorlage zu speichern oder zu laden, bevor der Tester läuft. Eingabeparameter Siehe Screenshot 2 für Eingabeparameter. Weitere Eingabeparameter für Ihre Strategie werden in Ihrer Strategieindikatordatei gespeichert. Frage: Keine Pfeile erscheinen auf Diagramm, nachdem ich meine Anzeige mit einer Arbeitsstrategie draged draged draged. Was passiert Answere: Sie müssen auf dem allgemeinen Reiter externe Expertenimporte zulassen aktivieren, während Sie Ihre Strategie in das Diagramm ziehen (die Protokollnachricht zeigt in diesem Fall einen Fehler). Frage: Keine Pfeile erscheinen auf der Karte, nachdem ich meinen Indikator mit einer Arbeitsstrategie darauf drapiert habe, mit Zulassen von externen Expertenimporten aktiviert. Warum Answere: Eine Strategie muss eine Funktion des Binary-Options-Strategy-Testers aufrufen, um virtuelle Trades zu platzieren. Im Zusammenhang mit dem MQL4-Lizenzkonzept funktioniert das nur, wenn das Produkt eine Arbeitslizenz hat. Deshalb müssen Sie das Produkt kaufen. Frage: Keine Pfeile erscheinen auf Diagramm, nachdem ich meinen Indikator mit einer Arbeitsstrategie auf ihm gezogen und ich bekam Fehler wie Kann nicht anrufen. Oder Kann nicht geladen werden. Im Protokoll von MetaTrader 4. Was kann ich tun Answere: Verwenden Sie die neueste Version (größer v1.00) von BinaryOptionsStrategyLibrary. mqh. Überprüfen Sie das Variablen-Tag im Code Ihrer BinaryOptionsStrategyLibrary. mqh und sehen Sie changelog v1.01 von BinaryOptionsStrategyLibrary. Ich habe keine Ergebnisse auf Strategy-Tester tabs Ergebnisse, Grafik, Bericht. Wo kann ich die Ergebnisse sehen Answere: Strategy-Tester von Metatrader 4 kann nicht Binär-Optionen verarbeiten, so dass diese Registerkarten nicht verwendet werden können. Daher berechnet dieses Dienstprogramm alle Gewinne und Verluste und druckt die Ergebnisse auf dem Diagramm. Weitere Informationen finden Sie unter Erstellen und Testen einer Strategie für Binär-Optionen mit Strategy-Tester von Metatrader 4 für ein Beispiel, wie Sie eine Strategie für Binary-Options-Strategy-Tester und Run-Backtests sowie Forward-Tests erstellen können. Sonstiges Wenn Sie Verbesserungsvorschläge haben, wenden Sie sich bitte an meMetaTrader 4 - Beispiele So erstellen und testen Sie eine Binäroptionsstrategie mit dem MetaTrader 4 Strategy Tester Inhaltsverzeichnis 1. Einleitung Dieser Artikel zeigt, wie Sie eine Strategie für Binäroptionen erstellen und testen können Es in Strategie-Tester von Metatrader 4 mit Binary-Optionen-Strategie-Tester-Dienstprogramm. Standardmäßig kann der Strategie-Tester von Metatrader 4 Expert Advisors und Indicators gegen historische Daten testen. Binäre Optionen können jedoch nicht mit Ablaufzeiten abgearbeitet werden. Da ich eine Möglichkeit brauche, Strategien von Binär-Optionen, die in Strategy-Tester von MetaTrader 4 automatisiert sind, zu testen, wurde der Binary-Options-Strategy-Tester als Dienstprogramm für diese Bedürfnisse entwickelt. Das Konzept enthält die folgenden Teile: Dies ist ein schrittweises Beispiel, wie eine Binär-Optionen-Strategie, die in einem Indikator (rot markiert im Bild oben) gespeichert ist, über die Binary-Options-Strategy-Library (grün markiert im Bild oben) ) Mit dem Binary-Options-Strategy-Tester (blau markiert im Bild oben), um virtuelle Aufträge zu platzieren und ihre Ergebnisse mit Backtests und Forward-Tests zu zählen. Bitte beachten Sie: Backtesting mit historischen Daten wird nie die wirkliche Zukunft, aber es könnte Ihnen einen angenäherten Wert, um Ihre Strategie stabiler. Die Qualität Ihres Backtests hängt von Ihren historischen Daten ab. Daher wird dringend empfohlen, eine Reihe von qualitativ hochwertigen Daten zu verwenden. 2. Installation Download und Kauf Binary-Options-Strategie-Tester-Dienstprogramm vom Markt: Test-Framework zum Testen von Strategien für Strategien im Strategy-Tester von MetaTrader 4. Warum eine gekaufte Version Des Binary-Options-Strategie-Tester-Programms benötigt Eine Binary-Options-Strategie muss eine Funktion des Binary-Options-Strategy-Testers aufrufen (über die Binary-Options-Strategy-Library), um die virtuellen Trades zu platzieren. Im Zusammenhang mit dem Lizenzkonzept von MQL4 funktioniert das nur, wenn das Produkt eine Arbeitslizenz hat. Daher müssen Sie das Produkt zum Testen von Binär-Optionen-Strategien oder diesem Beispiel erwerben. Laden Sie kostenlos BinaryOptionsStrategyLibrary. mqh herunter und platzieren Sie es in den Ordner Include (Pfad zu Ihrem MetaTrader 4MQL4Include): Die freie Bibliothek stellt Ihnen mehrere Funktionen zur Verfügung, um Ihre Binary Options-Strategie einfach zu erstellen und mit dem Binary-Options-Strategy-Tester zu kommunizieren. Weitere Informationen zur Bibliothek finden Sie unter Binary-Options-Strategy-Library. Download kostenlos KVO. mq4-Indikator und legen Sie es (und die kompilierte KVO. ex4-Datei) in den Ordner IndicatorsDownloads (Pfad zu Ihrem MetaTrader 4MQL4IndicatorsDownloads): Die KVO-Indikator wird als Beispiel für den Zugriff auf externe Indikatoren und dort Ex4-Dateien im Abschnitt angezeigt 3.2.6 Verwendung von externen Indikatoren (ex4-Dateien). Siehe mql5encode8677 für weitere Details der Anzeige. Jetzt können Sie weiter gehen mit Abschnitt 3. Binäre Optionen Strategie Beispiel und erstellen Sie den Beispiel-Code selbst oder laden Sie einfach den Code für dieses Beispiel unten. Laden Sie BinaryOptionsStrategyExample. mq4 herunter und legen Sie es (und die kompilierte BinaryOptionsStrategyExample. ex4-Datei) in den Ordner Indicators (Pfad zu Ihrem MetaTrader 4MQL4Indicators): Laden Sie den Code dieses Binary Options-Strategiebeispiels herunter, damit es ausgeführt werden kann, ohne es selbst zu erstellen. Um die benötigten. ex4-Dateien zu kompilieren, öffnen Sie im MetaQuotes Language Editor die. mq4-Dateien (KVO. mq4 und BinaryOptionsStrategyExample. mq4 - NOT Binary-Options-Strategy-Library. mqh) und klicken auf die Schaltfläche Kompilieren oder starten den MetaTrader 4 nach diesen Dateien neu Werden in den beschriebenen Ordnern gespeichert und MetaTrader 4 wird dies automatisch für Sie tun. 3. Binär-Optionen-Strategie Beispiel Die folgenden Schritte führen Sie throgh ein Beispiel, wie eine Beispiel-Binär-Optionen-Strategie in einem Indikator für die Kommunikation mit Binary-Optionen-Strategie-Tester gespeichert zu bauen. Sie können es selbst erstellen oder laden Sie einfach den Code der BinaryOptionsStrategyExample. mq4. Bitte beachten Sie: Diese Strategie ist keine rentable Strategie für Binäre Optionen Es ist nur ein Beispiel, wie eine Strategie in einem Indikator für die Kommunikation mit dem Binary-Options-Strategy-Tester-Dienstprogramm erstellt werden kann. Natürlich müssen Sie selbst eine profitable Strategie aufbauen. Aber wie Sie sehen werden, wird dieses Dienstprogramm Ihnen helfen, Ihre Binär-Optionen-Strategie zu testen und zu verbessern. 3.1 Strategie Binäre Optionen definieren Zuerst müssen wir die Strategie und die veränderbaren Werte (Eingabeparameter) definieren. MQL4-Dokumentation zeigt alle technischen Indikatoren, die über die iCustom-Oberfläche adressiert werden können: docs. mql4indicators. Lassen Sie uns sagen, wir möchten eine einfache Moving Average Cross-Strategie mit einem schnellen und einem langsamen Moving Average, um auf der nächsten Kerze Handel, nachdem sie einander gekreuzt haben, zu schaffen. Dokumentation zeigt, wie wir den Wert eines einzigen Moving Average erhalten können: docs. mql4indicatorsima. Lassen Sie uns weiter sagen, wir möchten Werte für MA Mittelung Zeitraum (schnell und langsam), für den angewandten Preis sowie für die Mittelung Methode wählen. Andere Werte (wie Symbol, Zeitrahmen und Verschiebung) hängen vom Testfall ab (z. B. dem Symbol, das der Tester ausführt) und sollte automatisch eingestellt werden. Daher benötigen wir im Wesentlichen die folgenden Variablen für einen Moving Average: int maperiod int mamethod int angewandter Preis Da wir zwei Moving Averages benötigen, um ihre Kreuze zu überprüfen, benötigen wir die folgenden Eingabeparameter für das Strategiebeispiel mit einigen Standardwerten: int periodfast 5 int periodslow 10 Int methodboth 0 int attachedpriceboth 0 3.2 Binär-Optionen-Strategie erstellen Sie müssen einen Indikator erstellen, der Ihre Binär-Optionen-Strategie speichert, um sie auf das Diagramm zu ziehen, auf dem der Binary-Options-Strategy-Tester ausgeführt wird. Öffnen Sie MetaQuotes Language Editor (in MetaTrader 4 klicken Sie auf Tools - gt MetaQuotes Language Editor oder drücken Sie einfach F4) und klicken Sie auf Neu: Der MQL Wizard erscheint. Wählen Sie Custom Indicator, um einen leeren Indikator zu erstellen und klicken Sie auf Next: Geben Sie den Namen, das Copyright und den Link der Strategie sowie die Eingabeparameter mit ihren Typen und Defaultwerten ein, indem Sie auf Add-Button klicken und auf Next: On klicken Event-Handler Auswahl-Checkbox OnCalculate, wie wir dieses Ereignis brauchen, um für unsere Strategie auf jedem Tick zu überprüfen. Klicken Sie auf Weiter: Auf der Registerkarte Zeichnungseigenschaften wählen Sie das Kontrollkästchen Indikator im seperaten Fenster aus, da wir ein separates Fenster benötigen, um die Debug-Werte auszudrucken. Drücken Sie Finish: Der Anfangscode Ihrer Anzeige erscheint: -------------------------------------- ---------------------------- BinaryOptionsStrategyExample. mq4 Copyright 2016, martin mql5enusersmartin -------------- -------------------------------------------------- - Eigenschaft copyright Copyright 2016, martin Eigenschafts-Link mql5enusersmartin Eigenschaft Version 1.00 Eigenschaft strict Eigenschaft indicatorseparatewindow --- Eingabeparameter Eingabe int periodfast 5 Eingang int periodslow 10 Eingang int methodboth 0 Eingang int applypriceboth 0 ----------- -------------------------------------------------- ----- Benutzerdefinierte Initialisierungsfunktion ----------------------------------------- ------------------------- int OnInit () --- Indikatorpufferzuordnung 3.2.1 Eingabeparameter Die initialen Eingabeparameter werden mit dem MQL-Assistenten erstellt (Siehe 3.2 Binary Options-Strategie erstellen), und wir werden sie mit den folgenden Schritten verstärken. Um zu vermeiden, dass int-Werte für den angewandten Preis und die Mittelungsmethode der Moving Averages für Eingabeparameter eingegeben werden müssen, wird der Typ für methodboth und der applizierte Preis von int auf den Typ der Enumeration mit einem Standardwert geändert. Zusätzlich Kommentare für die Eingabeparameter hinzugefügt werden, um die Kommentare als Etiketten zu zeigen, anstelle von Variablennamen: --- Parameter input Eingang int Period 5 Schnelle MA Werteingang int Period 10 Langsame MA Werteingang ENUMMAMETHOD methodboth MODESMA MA Methode Eingang ENUMAPPLIEDPRICE appliedpriceboth PRICECLOSE MA Angewendeter Preis Mit diesen Modifikationen können die Eingabeparameter einen Dropdown mit den zur Auswahl stehenden Werten sowie Beschriftungen für die Eingabeparameter zur Verfügung stellen: 3.2.2 Binär-Optionen-Strategie-Bibliothek einschließen Wenn Sie die Bibliothek heruntergeladen und gespeichert haben (siehe 2. Installation ) In Include-Ordner (Pfad zu Ihrem MetaTrader 4MQL4Include), können Sie die Bibliothek wie folgt einbinden: ---------------------------- -------------------------------------- BinaryOptionsStrategyExample. mq4 Copyright 2016, martin mql5enusersmartin ---- -------------------------------------------------- ------------ Eigenschaft copyright Copyright 2016, martin Eigenschafts-Link mql5enusersmartin Eigenschaft Version 1.00 Eigenschaft strict property indicatorseparatewindow Die Bibliothek ist nur verfügbar, wie im obigen Beispiel beschrieben, wenn Sie sie im Ordner Include Ihres MetaTraders platziert haben 4. Binär-Optionen-Strategie-Bibliothek verbessert die Eingabeparameter mit zwei neuen Parametern: Platzieren Sie nur einen SELL - oder einen BUY-Handel pro Kerze Nur am Anfang einer neuen Kerze für die Strategie überprüfen 3.2.3 Hinzufügen von CallStrategy () Fügen Sie einen Anruf zur CallStrategy () - Funktion in OnCalculate () Ihres Strategieindikators hinzu, um die Strategie bei jedem neuen Tick aufzurufen. CallStrategy () von Binary-Optionen-Strategie-Bibliothek zur Verfügung gestellt Sie oben discribed inlcuded haben wie: CallStrategy () Rufen Sie die Strategie, ist Funktion locatet in BinaryOptionsStrategyLibrary. mqh (oben enthalten) CallStrategy () - Funktion in Binär-Optionen-Strategie - Die Bibliothek ruft eine Funktion namens CheckMyRules () in Ihrem Indikator auf, in der Sie die Bedingungen für Ihre Binär-Optionen-Strategie platzieren können. Daher müssen Sie die Funktion CheckMyRules () in Ihrem Binär-Optionen-Strategie-Indikator implementieren. 3.2.4 Implementieren von CheckMyRules () und Helper-Funktion In der CheckMyRules () - Funktion, die über die Binary-Options-Strategy-Library aufgerufen wird, werden die Bedingungen für die Strategie implementiert und Trades durch die Funktion PlaceTrade () Bibliothek. Werte von beiden Moving-Averages werden temporär in Variablen gespeichert, um sie im if-Zustand zu vergleichen, während die Werte der Moving Averages aus der Helper-Funktion übernommen werden. GetValuesForMA (): --- Eingabeparameter Eingabe int periodfast 5 Schnelle MA-Werteingabe int periodslow 10 Langsame MA-Werteingabe ENUMMAMETHOD-Methodeboth MODESMA MA-Methodeneingabe ENUMAPPLIEDPREIS AngewandtePreisboth PRICECLOSE MA angewandter Preis --------------------------------- --------------------------------- Platzieren Sie Ihre Handelsregeln hier - siehe Beispiel unten. StrategyTester wird diese Funktion aufrufen, um Trades zu platzieren. NICHT: - Funktion umbenennen - Funktionsparameter hinzufügen, z. CheckMyRules (int a) - Funktionsrückgabetyp ändern, z. B. Int CheckMyRules () ---------------------------------------------- -------------------- void CheckMyRules () MA-Werte mit shift0 (aktuelle Kerze) - gt aktuelle Kerze speichern, Helperfunktion GetValueForMA () aufrufen, um den Wert zu erhalten - siehe Helfer-Funktionen unter Doppel emaSlowCurrent GetValueForMA (Period, 0) Doppel emaFastCurrent GetValueForMA (Period, 0) Shop MA-Werte mit Schalt1 (letzten Kerze) - gt letzte Kerze, Call-Helferfunktion GetValueForMA (), um den Wert zu erhalten - siehe Helfer-Funktionen unter Doppel emaSlowPast GetValueForMA (Period, 1) double emaFastPast GetValueForMA (Period, 1), wenn (emaFastPast gt emaSlowPast ampamp emaFastCurrent lt emaSlowPast) Überprüfen Sie, ob langsam MA und schnell MA kreuzt PlaceTrade (OPSELL) Ort SELL-Handel für Strategie-Tester, Funktion liegt in BinaryOptionsStrategyFunctions. mqh if (emaFastPast lt emaSlowPast ampamp emaFastCurrent gt emaSlowPast) Überprüfen Sie, ob langsam MA und schnell MA kreuzt PlaceTrade (OPBUY) Ort BUY-Handel für Strategie-Tester, Funktion in BinaryOptionsStrategyFunctions. mqh 3.2.5 drucken Sie Debug-Werte befindet sich der Funktion PrintDebugValue () prüft die Möglichkeit, Debug-Werte auszudrucken, während der Tester läuft. Im Beispiel unter den Werten der Moving Averages sind mit ihren Variablennamen als Etiketten ausgedruckt: --- Parameter Eingang Eingang int Period 5 Schnelle MA Werteingang int Period 10 Langsame MODESMA MA Methode Eingang ENUMAPPLIEDPRICE appliedpriceboth PRICECLOSE MA Eingang ENUMMAMETHOD methodboth MA-Wert Angewandter Preis --------------------------------------------- ------------------ Stellen Sie hier Ihre Trading-Regeln auf - siehe Beispiel unten. StrategyTester wird diese Funktion aufrufen, um Trades zu platzieren. NICHT: - Funktion umbenennen - Funktionsparameter hinzufügen, z. CheckMyRules (int a) - Funktionsrückgabetyp ändern, z. B. Int CheckMyRules () ---------------------------------------------- -------------------- void CheckMyRules () MA-Werte mit shift0 (aktuelle Kerze) - gt aktuelle Kerze speichern, Helperfunktion GetValueForMA () aufrufen, um den Wert zu erhalten - siehe Helfer-Funktionen unter Doppel emaSlowCurrent GetValueForMA (Period, 0) Doppel emaFastCurrent GetValueForMA (Period, 0) Shop MA-Werte mit Schalt1 (letzten Kerze) - gt letzte Kerze, Call-Helferfunktion GetValueForMA (), um den Wert zu erhalten - siehe Helfer-Funktionen unter Doppel emaSlowPast GetValueForMA (Period, 1) double emaFastPast GetValueForMA (Period, 1) PrintDebugValue (emaSlowCurrent:, (string) emaSlowCurrent, 0) Etiketten-und Wert in der Zeile 0 PrintDebugValue (emaFastCurrent:, (string) emaFastCurrent, 1) Label und Wert in Linie 1 PrintDebugValue (emaSlowPast:, (string) emaSlowPast, 2) Etikette und Wert in Zeile 2 PrintDebugValue (emaFastPast:, (string) emaFastPast, 3) Etiketten - und Wert in Zeile 3, wenn (emaFastPast gt emaSlowPast ampamp emaFastCurrent lt emaSlowPast) Überprüfen Sie, ob langsam MA und schnell MA kreuzt PlaceTrade (OPSELL) Ort SELL-Handel für Strategie-Tester, Funktion ist in BinaryOptionsStrategyFunctions. mqh gelegen, wenn (emaFastPast lt emaSlowPast ampamp emaFastCurrent gt emaSlowPast) Überprüfen Sie, ob langsam MA und schnell MA kreuzt PlaceTrade (OPBUY) Ort KAUFEN - Trade für Strategie-Tester, Funktion befindet sich in BinaryOptionsStrategyFunctions. mqh 3.2.6 Verwendung externer Indikatoren (ex4-Dateien) Zusätzlich kann ein externer Indikator, der seine Werte in Puffern speichert, für die Binär-Optionen-Strategie aufgerufen werden, auch wenn nur der kompilierte Ex4-Datei existiert. Lassen Sie uns sagen, wir möchten die Signalleitung des KVO-Indikators mql5encode8677, um Trades zu platzieren, nur dann, wenn die Signalleitung über 0 für BUY-Trades und unter 0 für SELL-Trades ist. Laden Sie die KVO. mq4-Indikator und legen Sie die kompilierte (ex4-Datei) in den Ordner IndicatorsDownloads (Pfad zu Ihrem MetaTrader 4MQL4IndicatorsDownloads). Um die benötigte. ex4-Datei zu öffnen, öffnen Sie KVO. mq4 im MetaQuotes Language Editor und klicken Sie auf die Schaltfläche Kompilieren oder starten Sie Ihren MetaTrader 4 neu, nachdem die Datei im beschriebenen Ordner gespeichert ist und MetaTrader 4 wird dies automatisch für Sie durchführen. Zuerst müssen wir die relevanten Puffer identifizieren, die die relevanten Werte für den Zugriff speichert. Daher betätigen wir die Schaltfläche Datenfenster in MetaTrader 4, um alle verfügbaren Puffer der verwendeten Indikatoren anzuzeigen und die KVO-Anzeige auf einem Diagramm zu ziehen. Wenn Sie das Kreuz über dem Diagramm schweben (das Mausrad auf dem Diagramm ankreuzen, um das Kreuz zu kreuzen), werden die Pufferwerte des Indikators der schwebenden Zeitperiode im Datenfenster angezeigt: Die Datenfensterbeschriftungen zeigen uns den zweiten Pufferwert des Indikators an Speichert die Signalleitung. Wenn Puffer von Indikatoren keine Markierungen hatten, können wir die richtige finden, indem wir die Pufferwerte mit dem angezeigten Wert unter dem Kreuz in dem Diagramm und dem Indikator vergleichen. Puffer eines Indikators beginnen mit 0, also haben wir Pufferwert 1 Puffer 0, Pufferwert 2 Puffer 1 und so weiter und wir müssen auf Puffer 1 zugreifen, um den Signalwert zu erhalten. Als nächstes müssen wir alle Eingabeparameter der externen Anzeige kennen, auf die wir zugreifen möchten. Indem wir den Indikator auf einem Chart ziehen, sehen wir alle Input-Paremeter: Lassen Sie uns weiter sagen, wir möchten auf den Indikator mit den Default-Werten: 34, 55 und 13 zugreifen. Wir verwenden eine Helferfunktion (basierend auf iCostum) Gibt uns die Möglichkeit, die Werte des Indikators mit Parametern für Puffer und Shift zu erhalten, während Shift 0 der Wert der aktuellen Kerze ist, Schicht 1 den Wert der letzten Kerze, Schicht 2 den Wert der zweiten bis letzten Kerze und bald. Darüber hinaus temporarilly wir die Werte des Indikators Puffer speichern und die if-Bedingung der Strategie verbessern: --- Parameter Eingang Eingang int Period 5 Schnelle MA Werteingang int Period 10 Langsame MODESMA MA Methode Eingang ENUMAPPLIEDPRICE appliedpriceboth PRICECLOSE Eingang ENUMMAMETHOD methodboth MA-Wert MA angewandter Preis ----------------------------------------------- ------------------- Platzieren Sie Ihre Trading-Regeln hier - siehe Beispiel unten. StrategyTester wird diese Funktion aufrufen, um Trades zu platzieren. NICHT: - Funktion umbenennen - Funktionsparameter hinzufügen, z. CheckMyRules (int a) - Funktionsrückgabetyp ändern, z. B. Int CheckMyRules () ---------------------------------------------- -------------------- void CheckMyRules () MA-Werte mit shift0 (aktuelle Kerze) - gt aktuelle Kerze speichern, Helperfunktion GetValueForMA () aufrufen, um den Wert zu erhalten - siehe Helfer-Funktionen unter Doppel emaSlowCurrent GetValueForMA (Period, 0) Doppel emaFastCurrent GetValueForMA (Period, 0) Shop MA-Werte mit Schalt1 (letzten Kerze) - gt letzte Kerze, Call-Helferfunktion GetValueForMA (), um den Wert zu erhalten - siehe Helfer-Funktionen unter Doppel emaSlowPast GetValueForMA (Period, 1) double emaFastPast GetValueForMA (Period, 1) Store-Signalwert (Puffer 1) von KVO Anzeige von aktuellen Kerze (Shift 0) Doppel kvoSignal GetValuesFromIndicatorKVO (1. 0) PrintDebugValue (emaSlowCurrent:, (string) emaSlowCurrent , 0) Beschriftung und Wert in der Zeile 0 PrintDebugValue (emaFastCurrent:, (string) emaFastCurrent, 1) Label und Wert in Zeile 1 PrintDebugValue (emaSlowPast:, (string) emaSlowPast, 2) Etikette und Wert in Zeile 2 PrintDebugValue (emaFastPast:, (string) emaFastPast, 3) Etiketten - und Wert in Zeile 3, wenn (emaFastPast gt emaSlowPast ampamp emaFastCurrent lt emaSlowPast Überprüfen Sie, ob langsam MA und schnell MA kreuzt ampamp kvoSignal lt 0) Überprüfen Sie, ob Signalwert von KVO unter 0 PlaceTrade (OPSELL) Ort SELL - TRADE für Strategie-Tester, Funktion in BinaryOptionsStrategyFunctions. mqh befindet, wenn (emaFastPast lt emaSlowPast ampamp emaFastCurrent gt emaSlowPast Überprüfen Sie, ob langsam MA und schnell MA kreuzt ampamp kvoSignal gt 0) Überprüfen Sie, ob Signalwert von KVO über 0 PlaceTrade (OPBUY) Platz BUY-Trade für Strategie-Tester, Funktion befindet sich in BinaryOptionsStrategyFunctions. mqh ----------------------------------- ------------------------------- Holen Sie MA-Werte für Zeitraum, Methode, angewandten Preis und Schicht. Einzelheiten zu iMA () finden Sie unter docs. mql4indicatorsima ---------------------------------------- -------------------------- doppelte GetValueForMA (int-Periode, int-Verschiebung) return iMA (NULL 0, Periode, 0, methodboth, applypriceboth, Verschiebung) ------------------------------------------------ ------------------ Beispiel für das Ermitteln von Werten aus externen Indikatoren siehe docs. mql4indicatorsicustom Parameter: int buffer - indicator-buffer (startet mit 0) int shift - value to shift 0 Aktuelle Kerze, 1 prev Kerze -------------------------------------------- ---------------------- doppelt GetValuesFromIndicatorKVO (int buffer, int shift 0) Ändere KVO in den Indikatornamen return (iCustom (NULL. NULL für den im Tester ausgewählten Zeitrahmen - keine Änderungen erforderlich 0 0 für aktuelle Symbol in Tester ausgewählt - Kein erforderliches Veränderungen beginnen EDIT DownloadsKVO. ex4 Filepath und den Dateinamen des Indikators (.ex4 Datei) BEGIN ANZEIGER INPUTS 34. 55. 13. ENDE fÜR Puffer INPUTS END EDIT. Pufferindex (beginnt mit 0), Puffer über Funktionsparameter adressiert wird - keine Änderungen erforderlich Shift Shift (0 für aktuelle Kerze), Verschiebung Funktionsparameter adressiert über - keine Änderungen erforderlich)) Es ist auch möglich, die Eingangsparameter unserer zu verbessern Strategie-Indikator mit den Werten des verwendeten KVO-Indikators und stellen Sie die Werte in Helferfunktion nach Variablen ein. Da dieses Tutorial nur ein Beispiel und so einfach wie möglich sein sollte, wird diese Variante nicht gezeigt. 3.3 Der vollständige Code Nachfolgend finden Sie den vollständigen Code des Binary-Options-Strategy-Beispiels aus allen Schritten oben, bereit zum Ziehen auf den Binary-Options-Strategy-Tester, um die Ergebnisse auf der Tabelle zu testen und zu sehen: --- -------------------------------------------------- ------------- BinaryOptionsStrategyExample. mq4 Copyright 2016, martin mql5enusersmartin ----------------------------- ------------------------------------- Eigentums-Copyright Copyright 2016, martin Eigenschaft Link mql5enusersmartin Eigenschaft Version 1.00 Eigenschaft Strict Immobilienindikatorseparatewindow ----------------------------------------------- ------------------- Platzieren Sie hier Ihre Eingabeparameter - siehe Beispiel unten ---------------------- ---------------------------------------------- Eingabeparameter Eingabe int Period 5 Schnelle MA Werteingang int Period 10 Langsame MODESMA MA Methode Eingang ENUMAPPLIEDPRICE Eingang ENUMMAMETHOD methodboth MA Wert appliedpriceboth PRICECLOSE MA Preis CallStrategy angewandt () Rufen Sie die Strategie, ist Funktion locatet in BinaryOptionsStrategyLibrary. mqh (oben enthalten) --- Rückgabewert Prevcalculated für den nächsten Anruf return (ratestotal) ------------------------------------------ ------------------------ Platzieren Sie Ihre Trading-Regeln hier - siehe Beispiel unten. StrategyTester wird diese Funktion aufrufen, um Trades zu platzieren. NICHT: - Funktion umbenennen - Funktionsparameter hinzufügen, z. CheckMyRules (int a) - Funktionsrückgabetyp ändern, z. B. Int CheckMyRules () ---------------------------------------------- -------------------- void CheckMyRules () MA-Werte mit shift0 (aktuelle Kerze) - gt aktuelle Kerze speichern, Helperfunktion GetValueForMA () aufrufen, um den Wert zu erhalten - siehe Helfer-Funktionen unter Doppel emaSlowCurrent GetValueForMA (Period, 0) Doppel emaFastCurrent GetValueForMA (Period, 0) Shop MA-Werte mit Schalt1 (letzten Kerze) - gt letzte Kerze, Call-Helferfunktion GetValueForMA (), um den Wert zu erhalten - siehe Helfer-Funktionen unter Doppel emaSlowPast GetValueForMA (Period, 1) double emaFastPast GetValueForMA (Period, 1) Store-Signalwert (Puffer 1) von KVO Anzeige von aktuellen Kerze (Shift 0) Doppel kvoSignal GetValuesFromIndicatorKVO (1. 0) PrintDebugValue (emaSlowCurrent:, (string) emaSlowCurrent , 0) Beschriftung und Wert in der Zeile 0 PrintDebugValue (emaFastCurrent:, (string) emaFastCurrent, 1) Label und Wert in Zeile 1 PrintDebugValue (emaSlowPast:, (string) emaSlowPast, 2) Etikette und Wert in Zeile 2 PrintDebugValue (emaFastPast:, (string) emaFastPast, 3) Etiketten - und Wert in Zeile 3, wenn (emaFastPast gt emaSlowPast ampamp emaFastCurrent lt emaSlowPast Überprüfen Sie, ob langsam MA und schnell MA kreuzt ampamp kvoSignal lt 0) Überprüfen Sie, ob Signalwert von KVO unter 0 PlaceTrade (OPSELL) Ort SELL - TRADE für Strategie-Tester, Funktion in BinaryOptionsStrategyLibrary. mqh befindet, wenn (emaFastPast lt emaSlowPast ampamp emaFastCurrent gt emaSlowPast Überprüfen Sie, ob langsam MA und schnell MA kreuzt ampamp kvoSignal gt 0) Überprüfen Sie, ob Signalwert von KVO über 0 PlaceTrade (OPBUY) Platz BUY-Trade für Strategie-Tester, Funktion befindet sich in BinaryOptionsStrategyLibrary. mqh ----------------------------------- ------------------------------- Holen Sie MA-Werte für Zeitraum, Methode, angewandten Preis und Schicht. Einzelheiten zu iMA () finden Sie unter docs. mql4indicatorsima ---------------------------------------- -------------------------- doppelte GetValueForMA (int-Periode, int-Verschiebung) return iMA (NULL 0, Periode, 0, methodboth, applypriceboth, Verschiebung) ------------------------------------------------ ------------------ Beispiel für das Ermitteln von Werten aus externen Indikatoren, siehe docs. mql4indicatorsicustom Parameter: int buffer - indicator-buffer (startet mit 0) int shift-value to shift 0 aktuelle Kerze, 1 vorherige Kerze ------------------------------------------- ----------------------- double GetValuesFromIndicatorKVO (int buffer, int shift 0) Ändern Sie KVO in den Anzeigenamen return (iCustom (NULL. NULL für den aktuellen Zeitrahmen, der in Tester - KEINE ÄNDERUNGEN 0. 0 für aktuelle Symbol in Tester ausgewählt ERFORDERLICH - KEINE ÄNDERUNGEN ERFORDERLICH EDIT DownloadsKVO. ex4 BEGIN Filepath und den Dateinamen des Indikators (.ex4 Datei) BEGIN INDCATORS EINGÄNGE 34, 55, 13, ENDE fÜR EINGÄNGE END EDIT-Puffer. , Puffer-Index (beginnt mit 0), Puffer wird über Funktionsparameter adressiert - KEINE ÄNDERUNGEN BENÖTIGTE Shift Shift (0 für aktuelle Kerze), Verschiebung wird über Funktionsparameter adressiert - KEINE ÄNDERUNGEN BENÖTIGT)) ---------- -------------------------------------------------- ----- 4. Führen Sie einen Backtest (Video) Das folgende Video zeigt, wie ein Backtest Ihrer Binary Options-Strategie in der Strategie-Tester von MetaTrader 4 zu laufen: Start Binary-Optionen-Strategie-Tester in der Strategie-Tester von MetaTrader 4 Und legen Sie die Eingabeparameter fest Ziehen Sie das Kennzeichen Binäroptionen im Diagramm, legen Sie die Eingabeparameter fest und aktivieren Sie die Option Externe Expertenimporte auf der allgemeinen Registerkarte zulassen Ziehen Sie die verwendeten Indikatoren mit den verwendeten Eingabeparametern auf dem Diagramm, um ihre Werte zu sehen, Optional) Sichern Sie alle Einstellungen in einer Vorlage, um den Test mit allen Einstellungen erneut durchzuführen - mit der Pause-Taste des Strategy-Testers (optional) Sehen Sie sich die Ergebnisse Ihrer Binär-Optionen Strategie auf dem Strategie-Tester-Diagramm an Ziehen Sie die Binär-Optionen-Strategie-Tester-Dienstprogramm auf Demo oder Live. Ziehen Sie die Binary-Optionen-Strategie-Tester-Dienstprogramm und Ihre Strategie-Indikator auf Ihrem Demo oder Live-Diagramm Ihres Brokers anstatt es in Strategie-Tester ziehen Diagramm und legen Sie die Eingabeparameter fest Ziehen Sie das Kennzeichen Binäroptionen im Diagramm, legen Sie die Eingabeparameter fest und aktivieren Sie die Option Externe Expertenimporte auf der allgemeinen Registerkarte zulassen Ziehen Sie die verwendeten Indikatoren mit den verwendeten Eingabeparametern auf dem Diagramm, um ihre Werte zu sehen, während der Vorwärtstest durchgeführt wird (Optional) Sichern Sie alle Einstellungen in einer Vorlage, um den Test erneut mit allen Einstellungen auszuführen (optional) Sehen Sie die Ergebnisse Ihrer Binär-Optionen Strategie auf Demo oder Live-Chart Frage: Warum zeigen Sie ein Beispiel für eine nicht rentable Binary Options Strategie Answere : Dies ist nur ein Beispiel, wie man eine Strategie in einem Indikator, um mit dem Binary-Optionen-Strategie-Tester-Dienstprogramm im Markt zu testen und zu verbessern Ihre Strategie zu kommunizieren. Frage: Binary-Options-Strategy-Tester stoppt nach dem genauen Betrag von Verlusten mit Fehler Array außerhalb des zulässigen Bereichs. Warum Answere: Binary-Optionen-Strategie-Tester kann einen Fehler nach x Verluste zu stoppen Tester und die Situation auf dem Diagramm zu analysieren. Wenn du das nicht willst, schalte einfach die Option in den Einstellungen aus. Question: No arrows appear on chart after I draged my indicator with a working strategy on it. What happened Answere: You have to enable Allow external expert imports on the common tab while you drag your strategy-indicator on the chart (log message will show an error in this case). Question: No arrows appear on chart after I draged my indicator with a working strategy on it with Allow external expert imports enabled. Why Answere: A strategy has to call a function of Binary-Options-Strategy-Tester to place virtual trades. Related to the MQL4 license concept this only works if the product has a working license. Therefore you have to purchase the product. Question: No arrows appear on chart after I dragged my indicator with a working strategy on it and I got errors like Cannot call. or Cannot load. in the log of MetaTrader 4. What can I do Answere: Use the latest version (greater v1.00) of BinaryOptionsStrategyLibrary. mqh. Check version tag in code of your BinaryOptionsStrategyLibrary. mqh and see changelog v1.01 of BinaryOptionsStrategyLibrary. Question: I see no results on Strategy-Tester tabs Results, Graph, Report. Where I can see the results Answere: Strategy-Tester of MetaTrader 4 can not handle Binary Options so these tabs con not be used. Therefore this utility calculates all wins and losses and prints the results on the chart. 7. Miscellaneous As I need a possibility to test Binary Options strategies automated in Strategy-Tester of MetaTrader 4 for long time periods in a short time and to do foward tests on the chart of the broker, this utility was build. I have spent a lot of time for the concept and the implementation of the Binary-Options-Strategy-Tester as well as for the documentation. Maybe there is a better way to do it and maybe some improvements will bring it closer to fit the needs of you. So please feel free to contact me for ideas for improvements


No comments:

Post a Comment