English Русский 中文 Español 日本語 Português 한국어 Français Italiano Türkçe
Lernen Sie, wie Sie ein Handelssystem mit Hilfe der Envelopes entwickelt

Lernen Sie, wie Sie ein Handelssystem mit Hilfe der Envelopes entwickelt

MetaTrader 5Handel | 8 März 2022, 09:46
515 0
Mohamed Abdelmaaboud
Mohamed Abdelmaaboud

Einführung

In meinem letzten Artikel habe ich über einen der beliebtesten Indikatoren — Bollinger Bänder — geschrieben, mit dem man Bänder handeln kann. Dieser Artikel ist unter folgendem Link verfügbar: Lernen Sie, wie man ein Handelssystem mit Bollinger Bands entwickelt

Wie ich in diesem Artikel über das Bollinger Band erwähnt habe, gibt es für das Konzept des Bandhandels eine Vielzahl von Methoden, die wir verwenden können. Jede Methode hat einen anderen Ansatz in Bezug auf ihre Berechnung und ihre Strategie, aber das Gemeinsame ist das Konzept, dass wir die Bänder handeln.

Ich möchte Ihnen nun eine weitere Methode vorstellen, die zum Konzept des Handels mit Bändern gehört — den Envelopes-Indikator. Der Indikator wird durch zwei Bänder dargestellt, die den Preis und seinen gleitenden Durchschnitt umgeben. In diesem Artikel werden wir einige weitere Details betrachten, darunter die folgenden Themen:

Mit diesen Themen werde ich versuchen, den Indikator so zu erklären, dass ein tieferes Verständnis des Indikators möglich ist. Die Informationen sollen dabei helfen, einen besseren Handelsplan oder eine bessere Strategie zu entwickeln, die bessere Ergebnisse erzielen kann. Im Rahmen des Themas Definition der Envelopes werde ich Ihnen weitere Einzelheiten über das Konzept des Envelopes-Indikators mitteilen. Wir werden seine Berechnung betrachten, um das Konzept besser zu verstehen. Anschließend werden wir versuchen, Strategien zu entwickeln, mit denen wir unsere Handelsergebnisse verbessern können.

Im Teil über die Envelopes-Strategien werde ich Ihnen einige einfache Grundstrategien vorstellen, die wir zu unseren Gunsten einsetzen können, als Beispiele dafür, wie wir den Indikator verwenden können. Dann, im Teil "Envelopes Blaupause der Handelsstrategie", den ich für ein sehr interessantes Thema halte, werde ich mit Ihnen eine Blaupause entwickeln, wie man ein Handelssystem mit Strategien des Envelopes Indikators erstellt. Später, im Teil "Envelopes-Handelssystem", werde ich Ihnen zeigen, wie man ein Handelssystem auf der Grundlage der Strategien des Envelopes-Indikators in der MQL5-Sprache erstellt, das im MetaTrader 5 weiter verwendet werden kann.

Ich hoffe, dass dieser Artikel für Sie nützlich ist und dass Sie einige Einsichten finden, die Ihnen helfen werden, Ihr eigenes Handelssystem zu entwickeln oder Ihre Handelsergebnisse zu verbessern.

Wichtig! Das gesamt Programm dieses Artikels ist in MQL5 geschrieben. Sie können es im MetaTrader 5 ausführen. Sie müssen also den MetaTrader 5 haben, um die Anwendungen auszuführen. Wenn Sie das MetaTrader 5 Terminal noch nicht haben, können Sie es unter dem folgenden Link herunterladen: https://www.metatrader5.com/de/download

Nach dem Herunterladen wird das folgende Bild das Fenster von MetaTrader 5 zeigen:

MT5 Plattform

Um den MetaQuotes-Spracheditor (MetaEditor) zu öffnen, um ein Programm zu schreiben, zeigt Ihnen das folgende Bild, wie Sie das tun können:

MetaEditor öffnen 1

Eine andere Methode ihn zu öffnen:

MetaEditor öffnen 2

Sie können auch F4 drücken, während das MetaTrader 5-Fenster geöffnet ist.

Dann wird das folgende Fenster geöffnet:

MetaEditor-Fenster

Hier sehen Sie, wie Sie eine neue Datei öffnen:

MetaEditor-Fenster


Metaeditor - Neue Datei


  1. Öffnet eine neue Datei, um einen Expert Advisor zu schreiben.
  2. Öffnet eine neue Datei, um einen nutzerdefinierten Indikator zu schreiben.
  3. Öffnet eine neue Datei, um ein Skript zu schreiben.

Für weitere Informationen können Sie meinen vorherigen Artikel lesen: Lernen Sie warum und wie Sie Ihr algorithmisches Handelssystem entwerfen

Haftungsausschluss: Die Inhalte in diesem Artikel sind nur für Bildungszwecke gedacht, nicht für andere Zwecke. Sie sind also für alle Maßnahmen allein verantwortlich, die Sie auf der Grundlage des Inhalts dieses Artikels ergreifen, da der Inhalt dieses Artikels keine Garantie für irgendwelche Ergebnisse bietet.

Sie sind auch für alle Maßnahmen allein verantwortlich, die Sie auf der Grundlage des Inhalts dieses Artikels ergreifen, da der Inhalt dieses Artikels keine Garantie für irgendwelche Ergebnisse bietet.


Envelopes Definition

Beginnen wir nun damit, den Envelopes-Indikator zu studieren, um zu sehen, wie er für unser Trading von Nutzen sein kann.

Einfach ausgedrückt, können wir sagen, dass Envelopes zwei Bänder sind, die den gleitenden Durchschnitt um einen bestimmten festen Prozentsatz umgeben und normalerweise die Preise umschließen. Diese Envelopes können verwendet werden, um Trendbewegungen zu filtern und in Seitwärtsphasen zu handeln.

Manchmal kommt es während eines Trends zu Bewegungen in die entgegengesetzte Richtung, wie z. B. falsche Ausbrüche oder Whipsaws. Solche Bewegungen können ein falsches Signal erzeugen, woraufhin die Situation wieder in ihr Gegenteil umschlägt. Wenn die Kurse beispielsweise den gleitenden Durchschnitt nach oben kreuzen, dient dies als Signal für eine Aufwärtsbewegung. Dann drehen sie sich um und kreuzen den gleitenden Durchschnitt nach unten, d. h. das Gegenteil der vorherigen Aufwärtskreuzung. Übrigens, mehr über die gleitenden Durchschnitte, über ihre Verwendung und die Erstellung eines darauf basierenden Handelssystems können Sie in meinem vorherigen Artikel lesen: Lernen Sie, wie man verschiedene Systeme mit gleitenden Durchschnitten entwirft

MA kreuzt, falscher Ausbruch Pause

In der obigen Abbildung dreht der Kurs, nachdem er den gleitenden Durchschnitt nach unten gekreuzt hat, und bewegt sich wieder nach oben.

Manchmal gibt es auch Seitwärtsbewegungen und ein Gleichgewicht zwischen Käufern und Verkäufern oder es gibt keinen offensichtlichen Trend und wir müssen von dieser Bewegung profitieren.

In diesen Fällen kann der Envelopes-Indikator nützlich sein, da er als Filter für Bewegungen während eines Trends dienen kann. Wenn der Kurs den Gleitenden Durchschnitt von oben kreuzt, warten wir darauf, dass der Kurs das obere Band des Envelopes-Indikators überschreitet.

MA-Kreuzungen ohne Envelopes


Wie Sie in der obigen Abbildung für dieselbe Bewegung sehen können, die wir zuvor erwähnt haben, hat der Kurs den Gleitenden Durchschnitt von oben gekreuzt, aber nicht das obere Band des Envelopes-Indikators. Wir können also nicht nach diesem Crossover handeln, denn erst dann haben wir festgestellt, dass sich die Preise wieder nach unten bewegen.

An dieser Stelle muss ich etwas Interessantes über die Technische Analyse erwähnen, denn sie verfügt über viele Methoden und Strategien, die so kombiniert werden können, dass sie bessere Ergebnisse liefern.

Wie ich bereits erwähnt habe, sind Envelopes zwei Bänder, die die Preise umgeben, so dass die breiteren Bänder eine geringere Wahrscheinlichkeit bieten, berührt zu werden, und die schmalen Bänder eine höhere Wahrscheinlichkeit bieten, berührt zu werden.

Wie kann der Envelopes-Indikator nun berechnet werden? Die Envelopes werden auf einen bestimmten Prozentsatz des gleitenden Durchschnitts festgelegt. Dieser Prozentsatz hängt von der Preisaktion, dem Zeitrahmen und der Strategie des Nutzers ab.

So berechnen Sie die Envelopes:

  1. Berechnung des gleitenden Durchschnitts.
  2. Der %-Wert der Envelopes = Gleitender Durchschnitt * %-Satz.
  3. Oberes Band der Envelopes = Gleitender Durchschnitt + dem ermittelte %-Wert des Gleitenden Durchschnitts.
  4. Unteres Band der Envelopes = Gleitender Durchschnitt - dem ermittelten %-Wert des gleitenden Durchschnitts.

Sehen wir uns ein Beispiel an, wie das geht.

Wenn wir die folgenden Daten für Preise von 14 Tagen haben:

Berechnungsbeispiel

Env. Berechnung

  • Berechnung des Prozentsatzes der Envelopes nach Ihren Wünschen.

Env. Berechnung 2

  • Berechnung des oberen Bandes der Envelopes.

Env. Berechnung 3

  • Berechnen des unteren Bandes der Envelopes.

Env. Berechnung 4

Diese Berechnung wird bei jedem Tick durchgeführt, dann werden die Werte des oberen Bandes über den Kursen und die Werte des unteren Bandes unter den Kursen eingezeichnet.

Aber heute werden wir das nicht manuell machen, da wir es berechnet und in die Plattform eingebaut haben und alles, was wir tun müssen, ist, es auszuwählen und es wird auf unserem Chart gezeichnet und die folgenden Bilder zeigen, wie man das macht:

Indikator einfügen


Indikator einfügen 1


Parameter des Indikators


Die obige Abbildung zeigt die Parameter der Envelopes:

  1. Zur Bestimmung der Periode des gleitenden Durchschnitts.
  2. %-Satz der Envelopes.
  3. Art des Preises (Schlusskurs, Medianpreis, typischer Preis, etc.)
  4. Wert, der für die Envelopes auf dem Chart verschoben werden soll.
  5. Typ des gleitenden Durchschnitts.
  6. Farbe des oberen Bandes der Envelopes.
  7. Art der Linie des oberen Bandes der Envelopes.
  8. Farbe des unteren Bandes der Envelopes.
  9. Stil der Linie des unteren Bandes der Envelopes.

Nachdem Sie alle Parameter festgelegt haben, erscheint der Indikator auf dem Chart, wie im folgenden Bild gezeigt:

Indikator auf dem Chart



Envelopes Strategie

In diesem Teil werde ich Ihnen einige der Envelopes-Strategien vorstellen. Diese Strategien werden je nach Marktlage oder Marktrichtung eingesetzt.

Wie wir alle wissen, gibt es auf dem Markt einen Aufwärtstrend, einen Abwärtstrend und Seitwärtsrichtungen. Je nach Marktrichtung verwenden wir eine bestimmte Strategie, die es uns ermöglicht, von dieser Marktbewegung zu profitieren.

Es ist möglich, die Envelopes mit anderen Instrumenten zu kombinieren und eine Strategie zu entwickeln, die auf dieser Kombination basiert. Die Ergebnisse eines solchen kombinierten Einsatzes können besser sein, als wenn man nur ein Instrument verwendet. So können Sie den Envelopes-Indikator zum Beispiel mit einem anderen Tool wie einem Preisaktionsmuster kombinieren: Nehmen Sie ein Signal vom Envelopes-Indikator und nehmen Sie ein anderes Signal oder ein Bestätigungssignal von einem Preismuster. Optional ist es möglich, einen anderen Indikator der technischen Analyse zu verwenden. Ich denke, dass dies ein erstaunlicher Ansatz im Handel mit technischer Analyse ist, um mehr als ein Konzept so zu kombinieren, dass Sie bessere Ergebnisse erzielen und Ihre Entscheidungen verbessern.

Dementsprechend werden wir unsere Strategien in Strategien unterteilen, die während einer Trendbewegung eingesetzt werden können, und andere, die während einer Seitwärtsbewegung verwendet werden können. 

    Während der Trendbewegung der Märkte
      • Strategie 1: Aufwärtstrend

        Während eines Aufwärtstrends bewegen sich die Kurse in einem Aufwärtstrend und erreichen höhere Tiefst- und Höchststände. Nun müssen wir wissen, wie sich die Kurse und der Envelopes-Indikator während des Aufwärtstrends verhalten werden.

        Da es sich bei diesem Indikator um einen Prozentsatz des gleitenden Durchschnitts handelt, der einen Durchschnitt für einen bestimmten Zeitraum darstellt, werden sich die Kurse während des Aufwärtstrends über dem oberen Band des Envelopes-Indikators bewegen. Unsere Strategie während des Aufwärtstrends sieht also folgendermaßen aus:

        Wir erhalten ein Kaufsignal, wenn die Preise das obere Band der Envelopes nach oben durchqueren, und nehmen dann den Gewinn mit, wenn die Preise das untere Band der Envelopes nach unten durchqueren.

        • Preise > oberes Band = Kaufen
        • Preise < unteres Band = Gewinnmitnahme

        Strategie 1 - Aufwärtstrend

        • Strategie 2: Abwärtstrend

        Während eines Abwärtstrends bewegen sich die Kurse in einem Abwärtstrend und erreichen niedrigere Höchst- und Tiefststände. Nun müssen wir wissen, wie sich die Kurse und der Envelopes-Indikator während des Abwärtstrends verhalten werden.

        Während eines Abwärtstrends bewegen sich die Kurse unter dem unteren Band des Envelopes-Indikators. Unsere Strategie während des Abwärtstrends sieht also folgendermaßen aus:

        Wir erhalten ein Verkaufssignal, wenn die Preise das untere Band des Envelopes-Indikators nach unten durchqueren, und nehmen dann den Gewinn mit, wenn die Preise das obere Band des Envelopes-Indikators nach oben durchqueren.

        • Preise < Unteres Band = Verkaufen
        • Preise > oberes Band = Gewinnmitnahme

        Strategie 2 - Abwärtstrend


        • Strategie 3: Seitwärtsbewegung:

        Bei Seitwärtsmärkten bewegen sich die Kurse in einer Art Seitwärtsformation mit gleichen Höchst- und Tiefstständen. Oder es besteht ein Gleichgewicht zwischen Käufern und Verkäufern, ohne dass eine Partei die andere kontrolliert, und dies ist die einfache Form, die sich zwischen zwei Niveaus bewegt. Sie zeigt das Gleichgewicht an. Das bedeutet nicht, dass es keine anderen Formen für Seitwärtsbewegungen gibt, aber es ist gut zu wissen, dass Seitwärtsbewegungen jede Bewegung oder Form außer Aufwärts- und Abwärtstrends sind. Nun müssen wir wissen, wie sich die Kurse und der Envelopes-Indikator während einer Seitwärtsbewegung verhalten.

        Während einer Seitwärtsbewegung werden sich die Kurse zwischen dem unteren und dem oberen Band des Envelopes-Indikators bewegen. Unsere Strategie während der Seitwärtsbewegung sieht also folgendermaßen aus:

        Wir erhalten ein Kaufsignal, wenn die Kurse das untere Band der Envelopes berühren, und nehmen dann den Gewinn mit, wenn die Kurse das obere Band der Envelopes berühren. Wir erhalten ein Verkaufssignal, wenn die Kurse das obere Band der Envelopes berühren, und nehmen dann den Gewinn mit, wenn die Kurse das untere Band der Envelopes berühren.

        • Preise = unteres Band = Kaufen
        • Preise = oberes Band = Gewinnmitnahme
        • Preise = oberes Band = Verkaufen
        • Preise = Unteres Band = Gewinnmitnahme

        Strategie 3 - Seitwärtsbewegung

        Bitte beachten Sie, dass diese Strategien nur dazu dienen, Ihnen zu zeigen, wie der Indikator verwendet werden kann. Für eine ordnungsgemäße Verwendung sind Verbesserungen und Weiterentwicklungen erforderlich. Stellen Sie sicher, dass Sie jede Strategie, die Sie lesen oder lernen, immer gründlich testen. Verwenden Sie sie niemals, ohne ihre Ergebnisse zu testen und zu überprüfen, insbesondere wenn sie zu Ausbildungszwecken erstellt wurde.


        Envelopes Blaupause der Handelsstrategie

        In diesem interessanten Teil werden wir unsere erwähnten Strategien als Blaupause entwerfen, um festzulegen, was wir genau tun wollen und was das Programm tun soll. Also, packen wir es an.

          Während der Trendbewegung der Märkte
            • Strategie 1: Aufwärtstrend
                • Preise > oberes Band = Kaufen
                • Preise < unteres Band = Gewinnmitnahme

              Die Blaupause für diese Strategie sieht also wie folgt aus:

              Blaupause der Strategie für den Aufwärtstrend


                • Strategie 2: Abwärtstrend:
                    • Preise < Unteres Band = Verkaufen
                    • Preise > oberes Band = Gewinnmitnahme

                  Die Blaupause für diese Strategie sieht also wie folgt aus:

                  Preise 



< Unteres Band = Verkaufen

                    Während der Seitwärtsbewegung,
                      • Strategie 3: Seitwärtsbewegung:
                          • Preise = unteres Band = Kaufen
                          • Preise = oberes Band = Gewinnmitnahme
                          • Preise = oberes Band = Verkaufen
                          • Preise = Unteres Band = Gewinnmitnahme
                        Die Blaupause für diese Strategie sieht also wie folgt aus:

                        Blaupause der Strategie für eine Seitwärtsbewegung



                        Envelopes Handelssystem

                        In diesem Teil werde ich Ihnen zeigen, wie Sie diese Strategien mit MQL5 in Form von EA-Programmen (Expert Advisors) codieren können. Dies kann jemandem helfen, seinen Handel zu verbessern und Signale automatisch und einfach zu erkennen. Jetzt werde ich Ihnen zeigen, wie man einen grundlegenden Envelopes EA kodiert und Anweisungen für unser Programm gibt, um die oberen und unteren Werte des Envelopes-Indikators auf dem Chart zu kommentieren.

                        Lassen Sie uns ein Programm entwerfen, mit dem wir die Werte der oberen und unteren Bänder des Envelopes-Indikators als Kommentare auf dem Chart sehen können:

                        //+------------------------------------------------------------------+
                        //|                                          Simple Envelopes EA.mq5 |
                        //|                                  Copyright 2022, MetaQuotes Ltd. |
                        //|                                             https://www.mql5.com |
                        //+------------------------------------------------------------------+
                        #property copyright "Copyright 2022, MetaQuotes Ltd."
                        #property link      "https://www.mql5.com"
                        #property version   "1.00"
                        
                        //+------------------------------------------------------------------+
                        //| Expert tick function                                             |
                        //+------------------------------------------------------------------+
                        void OnTick()
                          {
                           //Creating an array for price info
                           MqlRates PriceInfo[];
                           
                           //Sorting it from current data to old data
                           ArraySetAsSeries(PriceInfo, true);
                           
                           //Copy prices data to array
                           int Data = CopyRates(Symbol(), Period (), 0, Bars(Symbol(), Period()), PriceInfo);
                           
                           //Creating two arrays for prices of upper and lower band
                           double UpperBandArray[];
                           double LowerBandArray[];
                           
                           //Identify Envelopes indicator
                           int EnvelopesIdentify = iEnvelopes(_Symbol,_Period,14,0,MODE_SMA,PRICE_CLOSE,0.100);
                           
                           //Copying prices data to arrays
                           CopyBuffer(EnvelopesIdentify,0,0,1,UpperBandArray);
                           CopyBuffer(EnvelopesIdentify,1,0,1,LowerBandArray);
                           
                           //Calculation for the current data
                           double UpperBandValue=NormalizeDouble(UpperBandArray[0],6);
                           double LowerBandValue=NormalizeDouble(LowerBandArray[0],6);
                           
                           //Comments on the chart with values of Band of Envelopes
                           Comment("Envelopes Upper Band =",UpperBandValue,"\n" "Envelopes Lower Band =",LowerBandValue,"\n");
                           
                          }
                        //+------------------------------------------------------------------+
                        

                        Der Code in MetaTrader 5 kann wie in den folgenden Bildern gezeigt ausgeführt werden:

                        Einfügen der Basis des Envelopes EAs

                        Ziehen Sie die Datei auf den Chart oder doppelklicken Sie auf die Datei, dann wird der Code ausgeführt und das folgende Fenster wird geöffnet.

                        1

                        Danach wird das Programm auf dem Chart angezeigt:

                        11

                        Nach der Ausführung des Codes im MetaTrader 5-Handelsterminal werden wir das folgende Diagramm und die Signale darauf sehen:

                        Basis des Envelopes EAs


                        Wir haben zwei Bänder des Envelopes-Indikators — unteres Band und oberes Band — und wir können ihre Werte auf dem Chart sehen.

                        Jetzt werden wir unsere drei erwähnten Strategien kodieren, Strategie eins ist Kaufen und Gewinnmitnahme während des Aufwärtstrends, Strategie zwei ist Verkaufen und Gewinnmitnahme während des Abwärtstrends, dann ist Strategie drei ist in der Seitwärtsbewegung und Kaufen auf dem unteren Band und Gewinnmitnahme auf dem oberen Band dann Verkaufen auf dem oberen Band und Gewinnmitnahme auf dem unteren Band. 

                          Während der Trendbewegung der Märkte
                            • Strategie 1: Aufwärtstrend:
                                • Preise > oberes Band = Kaufen
                                • Preise < unteres Band = Gewinnmitnahme

                              Der folgende Code soll das Programm zur Ausführung dieser Strategie entwerfen:

                              //+------------------------------------------------------------------+
                              //|                                   Envelopes uptrend Strategy.mq5 |
                              //|                                  Copyright 2022, MetaQuotes Ltd. |
                              //|                                             https://www.mql5.com |
                              //+------------------------------------------------------------------+
                              #property copyright "Copyright 2022, MetaQuotes Ltd."
                              #property link      "https://www.mql5.com"
                              #property version   "1.00"
                              
                              //+------------------------------------------------------------------+
                              //| Expert tick function                                             |
                              //+------------------------------------------------------------------+
                              void OnTick()
                                {
                                 //Creating an array for price info
                                 MqlRates PriceInfo[];
                                 
                                 //Sorting it from current data to old data
                                 ArraySetAsSeries(PriceInfo, true);
                                 
                                 //Copy prices data to array
                                 int Data = CopyRates(Symbol(), Period (), 0, Bars(Symbol(), Period()), PriceInfo);
                                 
                                 //Creating two arrays for prices of upper and lower band
                                 double UpperBandArray[];
                                 double LowerBandArray[];
                                 
                                 //Identify Envelopes indicator
                                 int EnvelopesIdentify = iEnvelopes(_Symbol,_Period,14,0,MODE_SMA,PRICE_CLOSE,0.100);
                                 
                                 //Copying prices data to arrays
                                 CopyBuffer(EnvelopesIdentify,0,0,1,UpperBandArray);
                                 CopyBuffer(EnvelopesIdentify,1,0,1,LowerBandArray);
                                 
                                 //Calculation for the current data
                                 double UpperBandValue=NormalizeDouble(UpperBandArray[0],6);
                                 double LowerBandValue=NormalizeDouble(LowerBandArray[0],6);
                                 
                                 //Comment Buy signal on the chart or no signal
                                 if (PriceInfo[0].close > UpperBandValue)
                                 Comment("Envelopes Buy Signal");
                                 
                                 if (PriceInfo[0].close < LowerBandValue)
                                 Comment("Envelopes Take Profit or Stop Loss");
                                 
                                }
                              //+------------------------------------------------------------------+
                              

                              Der Code von MetaTrader kann wie in den folgenden Bildern gezeigt ausgeführt werden:

                              Einfügen der Aufwärtstrend-Strategie von Envelopes


                              Ziehen Sie die Datei auf den Chart oder doppelklicken Sie auf die Datei, dann wird der Code ausgeführt und das folgende Fenster wird geöffnet.

                              2

                              Danach wird das Programm auf dem Chart gestartet:

                              22

                              Nach der Ausführung des Codes im MetaTrader 5-Handelsterminal werden wir das folgende Diagramm und die Signale darauf sehen:

                              Envelopes Aufwärtstrend Strategie - Kaufsignal

                              Wie wir auf dem vorherigen Diagramm sehen können, gibt uns das Programm ein Kaufsignal, wenn die Preise während des Aufwärtstrends über das obere Band kreuzen.

                              Envelopes Aufwärtstrend-Strategie - Gewinnmitnahme

                              Wie auf dem vorherigen Diagramm zu sehen ist, gibt das Programm ein Take-Profit-Signal, wenn die Kurse unter das untere Band fallen.

                                • Strategie 2: Abwärtstrend
                                    • Preise < Unteres Band = Verkaufen
                                    • Preise > oberes Band = Gewinnmitnahme

                                  Der folgende Code soll das Programm zur Ausführung dieser Strategie entwerfen:

                                  //+------------------------------------------------------------------+
                                  //|                                 Envelopes Downtrend Strategy.mq5 |
                                  //|                                  Copyright 2022, MetaQuotes Ltd. |
                                  //|                                             https://www.mql5.com |
                                  //+------------------------------------------------------------------+
                                  #property copyright "Copyright 2022, MetaQuotes Ltd."
                                  #property link      "https://www.mql5.com"
                                  #property version   "1.00"
                                  
                                  //+------------------------------------------------------------------+
                                  //| Expert tick function                                             |
                                  //+------------------------------------------------------------------+
                                  void OnTick()
                                    {
                                     //Creating an array for price info
                                     MqlRates PriceInfo[];
                                     
                                     //Sorting it from current data to old data
                                     ArraySetAsSeries(PriceInfo, true);
                                     
                                     //Copy prices data to array
                                     int Data = CopyRates(Symbol(), Period (), 0, Bars(Symbol(), Period()), PriceInfo);
                                     
                                     //Creating two arrays for prices of upper and lower band
                                     double UpperBandArray[];
                                     double LowerBandArray[];
                                     
                                     //Identify Envelopes indicator
                                     int EnvelopesIdentify = iEnvelopes(_Symbol,_Period,14,0,MODE_SMA,PRICE_CLOSE,0.100);
                                     
                                     //Copying prices data to arrays
                                     CopyBuffer(EnvelopesIdentify,0,0,1,UpperBandArray);
                                     CopyBuffer(EnvelopesIdentify,1,0,1,LowerBandArray);
                                     
                                     //Calculation for the current data
                                     double UpperBandValue=NormalizeDouble(UpperBandArray[0],6);
                                     double LowerBandValue=NormalizeDouble(LowerBandArray[0],6);
                                     
                                     //Comment Buy signal on the chart or no signal
                                     if (PriceInfo[0].close < LowerBandValue)
                                     Comment("Envelopes Short Signal");
                                     
                                     if (PriceInfo[0].close > UpperBandValue)
                                     Comment("Envelopes Take Profit or Stop Loss");
                                     
                                    }
                                  //+------------------------------------------------------------------+

                                  Der MetaTrader 5 kann das Programm ausführen, wie in den folgenden Bildern zu sehen ist:

                                  Einfügen der Abwärtstrend-Strategie von Envelopes (Envelopes Downtrend Strategy)


                                  Wir können die Datei auf den Chart ziehen und ablegen oder auf die Datei doppelklicken, dann wird das Programm ausgeführt und das folgende Fenster wird geöffnet.

                                  3

                                  Danach sehen wir das auf dem Chart laufende Programm:

                                  33

                                  Envelopes Abwärtstrend Strategie - Verkaufssignal

                                  Wie wir auf dem vorherigen Chart sehen können, gibt uns das Programm ein Verkaufssignal, wenn die Preise während des Abwärtstrends unter das untere Band fallen.

                                  Envelopes Abwärtstrend-Strategie - Gewinnmitnahme

                                  Wie wir auf dem vorherigen Chart sehen können, gibt uns das Programm ein Signal zur Gewinnmitnahme, wenn die Preise während des Abwärtstrends über das obere Band steigen.

                                    • Strategie 3: Seitwärtsbewegung
                                  • Preise = unteres Band = Kaufen
                                  • Preise = oberes Band = Gewinnmitnahme
                                  Der folgende Code soll das Programm zur Ausführung dieser Strategie entwerfen:
                                  //+------------------------------------------------------------------+
                                  //|                              Envelopes Sideways Buy Strategy.mq5 |
                                  //|                                  Copyright 2022, MetaQuotes Ltd. |
                                  //|                                             https://www.mql5.com |
                                  //+------------------------------------------------------------------+
                                  #property copyright "Copyright 2022, MetaQuotes Ltd."
                                  #property link      "https://www.mql5.com"
                                  #property version   "1.00"
                                  
                                  //+------------------------------------------------------------------+
                                  //| Expert tick function                                             |
                                  //+------------------------------------------------------------------+
                                  void OnTick()
                                    {
                                     //Creating an array for price info
                                     MqlRates PriceInfo[];
                                     
                                     //Sorting it from current data to old data
                                     ArraySetAsSeries(PriceInfo, true);
                                     
                                     //Copy prices data to array
                                     int Data = CopyRates(Symbol(), Period (), 0, Bars(Symbol(), Period()), PriceInfo);
                                     
                                     //Creating two arrays for prices of upper and lower band
                                     double UpperBandArray[];
                                     double LowerBandArray[];
                                     
                                     //Identify Envelopes indicator
                                     int EnvelopesIdentify = iEnvelopes(_Symbol,_Period,14,0,MODE_SMA,PRICE_CLOSE,0.150);
                                     
                                     //Copying prices data to arrays
                                     CopyBuffer(EnvelopesIdentify,0,0,1,UpperBandArray);
                                     CopyBuffer(EnvelopesIdentify,1,0,1,LowerBandArray);
                                     
                                     //Calculation for the current data
                                     double UpperBandValue=NormalizeDouble(UpperBandArray[0],6);
                                     double LowerBandValue=NormalizeDouble(LowerBandArray[0],6);
                                     
                                     //Comment Buy signal on the chart or no signal
                                     if (PriceInfo[0].close <= LowerBandValue)
                                     Comment("Envelopes Buy Signal");
                                     
                                     if (PriceInfo[0].close >= UpperBandValue)
                                     Comment("Envelopes Take Profit");
                                     
                                     if (PriceInfo[0].close > LowerBandValue
                                     &&  PriceInfo[0].close < UpperBandValue)
                                     Comment("No Signal"); 
                                    }
                                  //+------------------------------------------------------------------+
                                  
                                  Der Code in MetaTrader 5 kann wie in den folgenden Bildern gezeigt ausgeführt werden:

                                  Einfügen der Strategie für eine Seitwärtsbewegung von Envelopes (Envelopes Sideways Buy Strategy)


                                  Ziehen Sie die Datei auf den Chart oder doppelklicken Sie auf die Datei, dann wird der Code ausgeführt und das folgende Fenster wird geöffnet.

                                  4

                                  Danach wird das Programm auf dem Chart angezeigt:

                                  44

                                  Einfügen der Strategie für eine Seitwärtsbewegung von Envelopes - kein Signal

                                  Nach der Ausführung des Codes im MetaTrader 5-Handelsterminal werden wir das folgende Diagramm und die Signale darauf sehen:

                                  Strategie für eine Seitwärtsbewegung von Envelopes - Kaufsignal

                                  Wie wir auf dem vorherigen Chart sehen können, gibt uns das Programm ein Kaufsignal, wenn die Preise das untere Band während der Seitwärtsbewegung berühren.


                                  Strategie für eine Seitwärtsbewegung von Envelopes - Gewinnmitnahme n ach einem Kaufsignal

                                  Wie wir auf dem vorherigen Diagramm sehen können, gibt uns das Programm ein Signal für eine Gewinnmitnahme, wenn die Preise das obere Band während der Seitwärtsbewegung berühren.

                                  • Preise = oberes Band = Verkaufen
                                  • Preise = Unteres Band = Gewinnmitnahme

                                  Der folgende Code soll das Programm zur Ausführung dieser Strategie entwerfen:

                                  //+------------------------------------------------------------------+
                                  //|                            Envelopes Sideways Short Strategy.mq5 |
                                  //|                                  Copyright 2022, MetaQuotes Ltd. |
                                  //|                                             https://www.mql5.com |
                                  //+------------------------------------------------------------------+
                                  #property copyright "Copyright 2022, MetaQuotes Ltd."
                                  #property link      "https://www.mql5.com"
                                  #property version   "1.00"
                                  
                                  //+------------------------------------------------------------------+
                                  //| Expert tick function                                             |
                                  //+------------------------------------------------------------------+
                                  void OnTick()
                                    {
                                     //Creating an array for price info
                                     MqlRates PriceInfo[];
                                     
                                     //Sorting it from current data to old data
                                     ArraySetAsSeries(PriceInfo, true);
                                     
                                     //Copy prices data to array
                                     int Data = CopyRates(Symbol(), Period (), 0, Bars(Symbol(), Period()), PriceInfo);
                                     
                                     //Creating two arrays for prices of upper and lower band
                                     double UpperBandArray[];
                                     double LowerBandArray[];
                                     
                                     //Identify Envelopes indicator
                                     int EnvelopesIdentify = iEnvelopes(_Symbol,_Period,14,0,MODE_SMA,PRICE_CLOSE,0.150);
                                     
                                     //Copying prices data to arrays
                                     CopyBuffer(EnvelopesIdentify,0,0,1,UpperBandArray);
                                     CopyBuffer(EnvelopesIdentify,1,0,1,LowerBandArray);
                                     
                                     //Calculation for the current data
                                     double UpperBandValue=NormalizeDouble(UpperBandArray[0],6);
                                     double LowerBandValue=NormalizeDouble(LowerBandArray[0],6);
                                     
                                     //Comment Buy signal on the chart or no signal
                                     if (PriceInfo[0].close >= UpperBandValue)
                                     Comment("Envelopes Short Signal");
                                     
                                     if (PriceInfo[0].close <= LowerBandValue)
                                     Comment("Envelopes Take Profit");
                                    
                                     if (PriceInfo[0].close > LowerBandValue
                                     &&  PriceInfo[0].close < UpperBandValue)
                                     Comment("No Signal"); 
                                     
                                    }
                                  //+------------------------------------------------------------------+
                                  
                                  Der Code in MetaTrader 5 kann wie in den folgenden Bildern gezeigt ausgeführt werden:

                                  Einfügen der Strategie für einen Kauf in einer Seitwärtsbewegung von Envelopes (Envelopes Sideways Sell Strategy)


                                  Ziehen Sie die Datei auf den Chart oder doppelklicken Sie auf die Datei, dann wird der Code ausgeführt und das folgende Fenster wird geöffnet.

                                  5

                                  Danach wird das Programm auf dem Chart angezeigt:

                                  55

                                  Strategie für einen Verkauf in einer Seitwärtsbewegung von Envelopes - kein Signal

                                  Wie wir auf dem vorherigen Chart sehen können, gibt uns das Programm kein Signal, da sich die Preise während der Seitwärtsbewegung zwischen dem oberen Band und dem unteren Band bewegen.


                                  Strategie für einen Verkauf in einer Seitwärtsbewegung von Envelopes - Verkaufssignal

                                  Wie wir auf dem vorherigen Chart sehen können, gibt uns das Programm ein Verkaufssignal, wenn die Preise das obere Band während der Seitwärtsbewegung berühren.

                                  Strategie für einen Verkauf in einer Seitwärtsbewegung von Envelopes - Gewinnmitnahme

                                  Wie wir auf dem vorherigen Chart sehen können, gibt uns das Programm ein Signal für eine Gewinnmitnahme, wenn die Preise das untere Band während der Seitwärtsbewegung berühren.


                                  Schlussfolgerung

                                  In diesem Artikel haben wir das Konzept der Handelsbänder mit Hilfe des Envelopes-Indikators besprochen. Wir haben uns auch mit den Vorteilen der Handelsbänder befasst und mit der Art und Weise, wie der Envelopes-Indikator während Trends und Seitwärtsbewegungen eingesetzt werden kann.

                                  Wir haben auch gesehen, wie der Envelopes-Indikator berechnet wird, wobei es immer gut ist, das Innere dessen zu verstehen, was wir verwenden. Envelopes ist einer der Indikatoren, die uns neue Einsichten und Ideen geben können, wie wir unsere Handelsergebnisse und unsere Entscheidungen verbessern können.

                                  Darüber hinaus haben wir uns eine einfache Strategie überlegt, die es ermöglicht, den Indikator unter verschiedenen Marktbedingungen zu nutzen: in einem Aufwärts- und Abwärtstrend oder in einer Seitwärtsbewegung. Wir haben hier auch gesehen, wie man ein Handelssystem entwirft, das uns hilft, diese Strategien zu verstehen und leicht zu kodieren.

                                  Außerdem enthält der Artikel den Code in der Sprache MQL5, der mit der Implementierung der auf Envelopes basierenden Strategien zusammenhängt. Und ich möchte noch einmal erwähnen, dass das Hauptziel dieses Artikels darin besteht, zu lernen, wie Kodieren für uns beim Handel hilfreich und nützlich sein kann und wie sie uns helfen kann, einfach und effektiv zu handeln.

                                  Ich empfehle Ihnen, Ihr eigenes Programm zu schreiben und es auszuführen, um Ihr Verständnis für das Thema zu vertiefen. Ich hoffe, dass dieser Artikel für Sie und Ihren Handel nützlich war.


                                  Übersetzt aus dem Englischen von MetaQuotes Ltd.
                                  Originalartikel: https://www.mql5.com/en/articles/10478

                                  Der richtige Weg zur Auswahl eines Expert Advisors vom Markt Der richtige Weg zur Auswahl eines Expert Advisors vom Markt
                                  In diesem Artikel werden wir einige der wesentlichen Punkte besprechen, auf die Sie beim Kauf eines Expert Advisors achten sollten. Wir werden auch nach Wegen suchen, um den Gewinn zu steigern, das Geld klug auszugeben und an diesen Ausgaben zu verdienen. Außerdem werden Sie nach der Lektüre des Artikels sehen, dass es möglich ist, auch mit einfachen und kostenlosen Produkten Geld zu verdienen.
                                  Grafiken in der Bibliothek DoEasy (Teil 93): Vorbereiten der Funktionen zur Erstellung zusammengesetzter grafischer Objekte Grafiken in der Bibliothek DoEasy (Teil 93): Vorbereiten der Funktionen zur Erstellung zusammengesetzter grafischer Objekte
                                  In diesem Artikel beginne ich mit der Entwicklung der Funktionalität zur Erstellung von zusammengesetzten grafischen Objekten. Die Bibliothek wird die Erstellung von zusammengesetzten grafischen Objekten unterstützen, wobei diese Objekte eine beliebige Hierarchie von Verbindungen haben können. Ich werde alle notwendigen Klassen für die spätere Implementierung solcher Objekte vorbereiten.
                                  Grafiken in der Bibliothek DoEasy (Teil 94): Bewegen und Löschen zusammengesetzter grafischer Objekte Grafiken in der Bibliothek DoEasy (Teil 94): Bewegen und Löschen zusammengesetzter grafischer Objekte
                                  In diesem Artikel werde ich mit der Entwicklung verschiedener Ereignisse für zusammengesetzte grafische Objekte beginnen. Teilweise werden wir auch das Verschieben und Löschen eines zusammengesetzten grafischen Objekts betrachten. In der Tat werde ich hier eine Feinabstimmung der Dinge vornehmen, die ich im vorherigen Artikel implementiert habe.
                                  Visuelle Auswertung der Optimierungsergebnisse Visuelle Auswertung der Optimierungsergebnisse
                                  In diesem Artikel geht es um die Erstellung von Diagrammen aller Optimierungsdurchläufe und um die Auswahl des optimalen nutzerdefinierten Kriteriums. Wir werden auch sehen, wie man eine gewünschte Lösung mit wenig MQL5-Kenntnissen erstellen kann, indem man die auf der Website veröffentlichten Artikel und Forumskommentare verwendet.