Startseite Systemhandel Beitrag

Zwei MA und ein RSI: Ein effektives Handelssystem für MetaTrader 5

Anhang
20886.zip (7.32 KB, Herunterladen 0 mal)

Idee von: Iurii Tokman.

MQL5-Code von: Vladimir Karputov.

Dieser EA nutzt zwei Indikatoren: den iMA (Gleitender Durchschnitt, MA) und den iRSI (Relative Stärke Index, RSI). Handelssignale werden ausschließlich bei der Eröffnung eines neuen Balkens generiert. Positionen werden nachgezogen und bei jedem Tick (im Gewinnfall) geschlossen.

Eine unkonventionelle Herangehensweise wurde gewählt: Der Slow-Indikator hat eine Durchschnittsperiode, die dem Fast-Indikator multipliziert mit zwei entspricht. Die RSI-Durchschnittsperiode bleibt konstant und entspricht immer der Fast-Periode. Dies reduziert die Anzahl der zu optimierenden Parameter.

Sie können auch alle Zeichen „<“ und „>“ in der Formel zur Signalidentifikation optimieren. Dazu wurden eigene Variablen (InpMoreLessBuy_1, InpMoreLessBuy_2, InpMoreLessBuy_3, InpMoreLessSell_1, InpMoreLessSell_2, InpMoreLessSell_3) eingeführt. Mit diesen Variablen wird die Formel wie folgt modifiziert:

   bool signal_buy=(!InpMoreLessBuy_1  ?  ArrayFast[1]<ArraySlow[1]:  ArrayFast[1]>ArraySlow[1]) && 
                   (InpMoreLessBuy_2   ?  ArrayFast[0]>ArraySlow[0]:  ArrayFast[0]<ArraySlow[0]) &&
                   (InpMoreLessBuy_3   ?  RSI>InpRSI_level_UP      :  RSI<InpRSI_level_UP);
   bool signal_sell=(InpMoreLessSell_1 ?  ArrayFast[1]>ArraySlow[1]:  ArrayFast[1]<ArraySlow[1]) && 
                    (!InpMoreLessSell_2?  ArrayFast[0]<ArraySlow[0]:  ArrayFast[0]>ArraySlow[0]) &&
                    (!InpMoreLessSell_3?  RSI<InpRSI_level_DOWN    :  RSI>InpRSI_level_DOWN);


Eingabeparameter

  • Parameter für den Gleitenden Durchschnitt:

    • Fast: Durchschnittsperiode - Durchschnittsperiode des Gleitenden Durchschnitts "Fast";
    • Fast: horizontaler Versatz - Horizontaler Versatz des Gleitenden Durchschnitts "Fast";
    • Fast: Preistyp - Preistyp des Gleitenden Durchschnitts "Fast";
    • Slow: horizontaler Versatz - Horizontaler Versatz des Gleitenden Durchschnitts "Slow";
    • Slow: Preistyp - Preistyp des Gleitenden Durchschnitts "Slow";
    • Fast und Slow: Glättungsart - Glättungsart (gemeinsamer Parameter für "Fast" und "Slow").

  • Parameter für den RSI-Indikator und seine Signale:

    • RSI: Preistyp - Preistyp des RSI-Indikators;
    • RSI: obere Grenze - Obere Grenze des RSI-Indikators;
    • RSI: untere Grenze - Untere Grenze des RSI-Indikators.

  • Handelsparameter:

    • Stop Loss - Stop Loss (wird auf null gesetzt, ist der Parameter deaktiviert);
    • Take Profit - Take Profit (wird auf null gesetzt, ist der Parameter deaktiviert);
    • Trailing Stop - Trailing (wird auf null gesetzt, ist der Parameter deaktiviert);
    • Trailing Schritt - Trailing Schritt;
    • Lots - Handel mit fester Lotgröße (Parameter Lots muss größer als null sein und Risk gleich null);
    • Risk - Lotgröße wird dynamisch berechnet (Parameter Risk muss größer als null sein und Lots gleich null);
    • Maximale Anzahl von Positionen in eine Richtung - Maximale Anzahl in eine Richtung (wird auf null gesetzt, ist der Parameter deaktiviert);
    • Alle Positionen schließen, wenn Gewinn erzielt wird - Positionen werden bei Erreichen des Gewinns geschlossen (wird auf null gesetzt, ist der Parameter deaktiviert);
    • Gegensätzliche Positionen schließen - Schließen von gegensätzlichen Positionen (wird auf "false" gesetzt, ist der Parameter deaktiviert);
    • magic number - eindeutige Kennung für den EA.

Wie Sie sehen können, ermöglicht dieser EA neben der Einstellung der Indikatorparameter auch eine flexible Konfiguration (und Deaktivierung) von Stop Loss, Take Profit, Trailing, der maximalen Anzahl an geöffneten Positionen in eine Richtung, dem Schließen von Positionen bei Gewinn und dem Schließen gegensätzlicher Positionen. Sie können auch den Berechnungsprozess des Positionsvolumens steuern: Sie können mit einer festen Lotgröße handeln (Lots über null und Risk gleich null), oder die Lotgröße kann dynamisch berechnet werden (Risk über null und Lots gleich null).


Empfehlungen zur Optimierung

Im Modus "OHLC auf M1" wählen Sie ein Symbol und das Zeitfenster M15. Deaktivieren Sie (setzen Sie auf null) Stop Loss, Take Profit und Trailing und stellen Sie die maximale Anzahl an Positionen in jede Richtung auf "1". Alternativ können Sie die Datei Two MA one RSI M15 Start.set, die bereits die anfänglichen Optimierungsparameter für M15 enthält, in den Ordner MQL5\Profiles\Tester\ kopieren.

Wählen Sie den Typ der Optimierung als "Schnell (genetischer Algorithmus)" und optimieren Sie den Parameter "Maximaler Gewinn".

Für die Optimierung empfehle ich, das MQL5 Cloud-Netzwerk zu nutzen: Für USDJPY über das Jahr 2017 hat die Optimierung in der Cloud zusammen mit meinem Quad-Core-Laptop

gedauert

2018.05.28 08:03:19.923 optimierung abgeschlossen in 7 Minuten 58 Sekunden

und hat $0.08 gekostet.

Verwandte Beiträge

Kommentar (0)