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

Lernen Sie, wie Sie ein Handelssystem mit Hilfe des ATR entwickeln

MetaTrader 5Handel | 9 Mai 2022, 08:13
793 0
Mohamed Abdelmaaboud
Mohamed Abdelmaaboud

Einführung

In diesem neuen Artikel werden wir über ein neues Konzept im Handel sprechen, das wir messen müssen und wissen, wie man es verwendet. Dieses Konzept ist die Volatilität. Zur Messung der Volatilität können viele Instrumente verwendet werden. Eines der beliebtesten Instrumente ist der technische Indikator Average True Range (ATR, durchschnittliche wahre Kursspanne). Wenn Sie wissen, wie sich die Volatilität entwickelt, kann dies das Spiel verändern, wie wir in diesem Artikel sehen werden, da es einer der wichtigsten Faktoren oder Grundlagen ist, auf denen Sie Ihre Entscheidungen aufbauen.

Wir werden viele Themen durchgehen, um diesen ATR-Indikator sehr gut zu verstehen, denn wie Sie vielleicht wissen, ist mein Ansatz, die Wurzel der Dinge zu lernen und zu lehren, wenn Sie andere veröffentlichte Artikel von mir lesen. Die folgenden Themen sind, dass wir in diesem Artikel über dieses erstaunliche Werkzeug zu lernen:

  1. ATR Definition
  2. ATR Strategie
  3. ATR Blaupause der Strategie
  4. ATR Handelssystem
  5. Schlussfolgerung

Nach diesen Themen hoffe ich, dass wir den ATR-Indikator tiefgreifend verstehen und wissen, wie man ihn richtig oder in geeigneter Weise einsetzt. Denn wir werden lernen, was der Average True Range (ATR) Indikator ist, was er misst, und wie man ihn durch die Formel seiner Berechnung und die Anwendung auf ein reales Beispiel aus dem Markt berechnet, und dies wird durch das Thema der ATR-Definition sein. Wir werden einfache Strategien lernen, die auf dem Konzept des ATR-Indikators basieren, und hier teile ich mit Ihnen einfache Strategien, die helfen können, unser Verständnis zu verbessern, und dies wird durch das Thema der ATR-Strategie sein. Wir werden eine Blaupause für die genannten Strategien kennenlernen, die hilfreich sein kann, in den Schritt des Handelssystems Gestaltung zu wissen, was wir brauchen, um das Programm zu informieren, um durch eine Schritt-für-Schritt-Blaupause zu tun, und dies wird durch das Thema der ATR-Strategie Blaupause sein, dann werden wir lernen, wie man den Code zu schreiben, um ein Handelssystem auf der Grundlage dieser Strategien zu entwerfen und dies wird von MQL5 geschrieben werden, um dieses Programm auf MetaTrader 5 auszuführen und dies wird durch die ATR Handelssystem Thema sein.

Wie ich bereits erwähnt habe, werden wir den Code mit MQL5 über den MetaQuotes Language Editor schreiben, der in die MetaTrader 5 Handelsplattform integriert ist und den Sie über den folgenden Link herunterladen können: https://www.metatrader5.com/de/download

Nachdem Sie es heruntergeladen und auf Ihrem Gerät installiert haben, können Sie das folgende Fenster als Beispiel für die Handelsplattform MetaTrader 5 öffnen:

MT5 Plattform

Dann können Sie MetaQuotes Language Edit öffnen, während Sie den MetaTrader 5 öffnen, indem Sie die Taste F4 auf Ihrer Tastatur drücken. Sie können ihn auch öffnen, indem Sie auf der MetaTrader 5-Terminalschnittstelle auf die Schaltfläche IDE klicken, wie in der folgenden Abbildung dargestellt:

Metaeditor öffnen2

Sie können ihn auch öffnen, indem Sie im MetaTrader 5-Terminal auf die Registerkarte "Tools" klicken --> und dann im Menü "MetaQuotes Language Editor" wählen, wie in der folgenden Abbildung dargestellt:

Metaeditor öffnen1 

Danach wird der MetaQuotes Language Editor geöffnet, und das folgende Bild zeigt die Benutzeroberfläche des Editors:

Metaeditor-Schnittstelle

Was ich hier erwähnen möchte, ist, dass ich Ihnen rate, das, was Sie in diesem Artikel gelesen haben, anzuwenden, denn Übung ist ein wichtiger Faktor für Verbesserungen.

Haftungsausschluss: Alle Informationen werden in der vorliegenden Form nur zu Lernzwecken bereitgestellt und sind nicht für Handel oder als Beratung gedacht. Die Informationen geben keine Garantie für ein bestimmtes Ergebnis. Wenn Sie sich entscheiden, diese Materialien auf einem Ihrer Handelskonten zu verwenden, tun Sie dies auf eigenes Risiko und sind allein dafür verantwortlich.

Bereiten Sie jetzt Ihre Werkzeuge vor, um ein neues Werkzeug zu erlernen, das Ihnen helfen wird, Ihre Handelsfähigkeiten zu verbessern, um Ihre Handelsergebnisse zu verbessern, lassen Sie uns unsere Reise beginnen.


ATR Definition

In diesem Thema werden wir uns ausführlich mit dem Average True Range (ATR) Indikator befassen, denn wir werden verstehen, was der ATR-Indikator ist, was er misst und wie wir ihn berechnen können, und wir werden ein Beispiel dafür sehen, um unser Verständnis zu vertiefen und mehr Erkenntnisse darüber zu gewinnen, wie wir diesen Indikator zu unseren Gunsten nutzen können.

Der technische Indikator Average True Range (ATR) wurde von Welles Wilder entwickelt. Dieser ATR-Indikator misst die Marktvolatilität, indem er die Preisspanne für einen bestimmten Zeitraum analysiert. Der ATR-Indikator gibt keine Preis- oder Marktrichtung an, sondern misst nur die Volatilität.

Wie wir diesen ATR-Indikator berechnen können, um die Volatilität des Marktes zu messen, können wir wie folgt berechnen,

Erstens, um die wahre Spanne zu berechnen und es wird der größte Wert der folgenden sein:

  • Die Differenz zwischen dem aktuellen Hoch und Tief.
  • Die Differenz zwischen dem aktuellen Hoch und dem vorherigen Schlusskurs (absoluter Wert).
  • Die Differenz zwischen dem aktuellen Tief und dem vorangegangenen Schlusskurs (absoluter Wert).

In diesem Schritt benötigen wir also Daten zu Hochs, Tiefs und Schlusskursen, um sie zu berechnen. Dann werden wir die Average True Range (ATR) berechnen.

Sehen wir uns nun ein Beispiel aus dem realen Markt an, um das Gelernte anzuwenden und die Average True Range zu berechnen: Es folgen EURUSD-Daten:

Tag Hoch Niedrig Schlusskurs
Mar 17, 2022 1.1138 1.1008 1.1089
Mar 18, 2022 1.112 1.1003 1.1055
Mar 21, 2022 1.107 1.101 1.1014
Mar 22, 2022 1.1047 1.096 1.1027
Mar 23, 2022 1.1044 1.0963 1.1004
Mar 24, 2022 1.1014 1.0965 1.0996
Mar 25, 2022 1.1039 1.0979 1.0981
Mar 28, 2022 1.1 1.0944 1.0978
Mar 29, 2022 1.1137 1.097 1.1085
Mar 30, 2022 1.1171 1.1083 1.1156
Mar 31, 2022 1.1185 1.1061 1.1065
Apr 01, 2022 1.1077 1.1027 1.1053
Apr 04, 2022 1.1056 1.096 1.097
Apr 05, 2022 1.099 1.0899 1.0903
Apr 06, 2022 1.0939 1.0874 1.0893
Apr 07, 2022 1.0939 1.0864 1.0878
Apr 08, 2022 1.0892 1.0836 1.0876
Apr 11, 2022 1.0951 1.0872 1.0883
Apr 12, 2022 1.0905 1.0821 1.0826
Apr 13, 2022 1.0896 1.0809 1.0885
Apr 14, 2022 1.0925 1.0757 1.0827
Apr 15, 2022 1.0832 1.0796 1.0806
Apr 18, 2022 1.0822 1.0769 1.078
Apr 19, 2022 1.0815 1.0761 1.0786
Apr 20, 2022 1.0868 1.0783 1.085
Apr 21, 2022 1.0937 1.0824 1.0836
Apr 22, 2022 1.0853 1.077 1.0794
Apr 25, 2022 1.0842 1.0697 1.0711
Apr 26, 2022 1.0738 1.0635 1.0643
Apr 27, 2022 1.0655 1.0586 1.0602

Um die ATR zu berechnen, gehen wir wie folgt vor:

1- Berechnen des TR, es ist der größte Wert der folgenden Differenzen:

  • Aktuelles Hoch - aktuelles Tief (die Differenz zwischen Hoch und Tief),

H-L

  • Absolut (aktuelles Hoch - vorheriger Schlusskurs),

 absh-pc

  • Absolut (aktuelles Tief - vorheriger Schlusskurs),

 absl-pc

Anhand unserer Berechnungen bestimmen wir den TR, der den größten Wert aus (high-low, abs(high-previous close), abs(low-previous close)) darstellt,

TR

2- Berechnen des Average True Range (ATR) für 14 Perioden,

ATR

Mit den vorangegangenen Schritten können wir den Indikator Average True Range (ATR) manuell berechnen, aber das ist heutzutage nicht mehr nötig, da er in unsere MetaTrader 5 Handelsplattform integriert ist. Alles, was wir tun müssen, ist, ihn unter den anderen verfügbaren Indikatoren auszuwählen, und im Folgenden wird beschrieben, wie man das macht.

Wenn Sie das MetaTrader 5-Handelsterminal öffnen, klicken Sie auf die Registerkarte Einfügen --> Indikator --> Oszillatoren --> Average True Range:

ATR einfügen

Nachdem Sie den Average True Range ausgewählt haben, wird das folgende Fenster für die Parameter des ATR geöffnet:

Fenster des ATR einfügen

1- Bestimmen Sie die gewünschte Periodenlänge (Periode) für den Indikator.

Der Wert für Periode kann von Zeitrahmen zu Zeitrahmen oder von Instrument zu Instrument unterschiedlich sein, je nach der Volatilität des jeweiligen Zeitraums oder Instruments. Je länger die ATR ist, desto besser ist es, eine genaue Anzeige zu generieren, da es sich um einen glatteren Durchschnitt handelt.

2- Um die Farbe der ATR-Linie zu bestimmen.

3- Um den Stil der ATR-Linie zu bestimmen.

4- Um die Dicke der ATR-Linie zu bestimmen.

Nachdem Sie die Parameter für den ATR-Indikator eingestellt haben, wird er wie in der folgenden Abbildung an den Chart angehängt:

ATR angehängt

Wie in der vorherigen Abbildung zu sehen ist, enthält das untere Fenster den ATR-Indikator für 14 Perioden, und wir können sehen, dass es sich um eine Linie handelt, die oszilliert, um die Volatilität von EURUSD über den 1-Stunden-Zeitrahmen zu messen.

Wie ich bereits erwähnt habe, misst die ATR die Volatilität, und das können wir aus dem ATR-Fenster ablesen: je niedriger der Wert der ATR-Kurve, desto geringer die Volatilität des Instruments, und umgekehrt, je höher der Wert der ATR-Kurve, desto höher die Volatilität des Instruments.

Die folgende Abbildung zeigt, wie man das ablesen kann:

ATR Darstelung

Wie wir im unteren Fenster des vorangegangenen Charts sehen können, deutet die ATR bei niedrigen Werten auf eine geringe Volatilität hin, und umgekehrt, wenn der ATR-Indikator hohe Werte aufzeichnet, auf eine hohe Volatilität.

Der ATR-Indikator ist nicht genau genug, um Handelssignale zu generieren, da er, wie wir bereits wussten, bei seiner Berechnung nur die Größe der Spanne berücksichtigt, aber seine Schönheit besteht darin, dass er eines der besten Werkzeuge ist, das dabei helfen kann, eine geeignete Positionsgröße, einen Stop-Loss und einen Take-Profit anzuwenden.

Wie ich bereits erwähnt habe, misst die ATR nur die Volatilität und gibt keine Auskunft über den Trend oder die Marktrichtung. Wenn sich die ATR-Kurve also nach oben bewegt, bedeutet dies nicht, dass der Trend nach oben geht, und umgekehrt, wenn sich die ATR-Kurve nach unten bewegt, bedeutet dies nicht, dass der Trend nach unten geht. Wenn Sie mehr über eines der beliebtesten Instrumente, den ADX-Indikator, erfahren möchten, der verwendet werden kann, um festzustellen, ob es einen Trend gibt oder nicht.

Sie können auch die Trenddefinition aus meinem vorherigen Artikel lesen.

Das folgende Bild ist ein Beispiel, das zeigen kann, dass die ATR keine Trendrichtung angibt:

ATR Darstelung2

Wie wir sehen können, steigt der Indikator zur gleichen Zeit, in der die Kurse sinken, und umgekehrt, die ATR-Linie sinkt zur gleichen Zeit, in der die Kurse steigen. Denn ATR gibt keinen Trend oder eine Marktrichtung an, sondern misst nur die Volatilität.


ATR Strategie

In diesem Thema werden wir einfache Strategien kennenlernen, die der ATR-Indikator entsprechend seinem Konzept zur Verbesserung unserer Handelsergebnisse einsetzen kann. Das Konzept des ATR-Indikators besteht darin, dass er nur die Volatilität des Marktes misst und nicht die Richtung des Marktes.

1- Einfaches ATR-System - ATR-Stärke:

Bei dieser Strategie vergleichen wir den aktuellen ATR-Wert mit bestimmten Werten und entscheiden, ob die ATR stark ist oder nicht. Dabei ist es wichtig zu beachten, dass diese spezifischen Werte von einem Instrument zum anderen oder von einem Zeitraum zum anderen unterschiedlich sein können. Wir werden also den ATR-Indikatorwert überprüfen und seine Stärke anhand seines Wertes bestimmen. Wenn der aktuelle ATR-Wert größer als 0,0024 ist, bedeutet dies, dass die ATR stark ist, und umgekehrt, wenn der aktuelle ATR-Wert kleiner als 0,0014 ist, bedeutet dies, dass die ATR schwach ist. Wenn der ATR-Wert zwischen 0,0014 und 0,0024 liegt, bedeutet dies, dass ATR neutral ist und nur den aktuellen ATR-Wert zurückgibt.

  • Aktueller ATR-Wert > 0,0024 = ATR ist stark
  • Aktueller ATR-Wert < 0,0014 = ATR ist schwach
  • Aktueller ATR-Wert > 0,0014 und < 0,0024 = aktueller ATR-Wert


2- Einfaches ATR-System - ATR-Bewegung:

Bei dieser Strategie vergleichen wir den aktuellen ATR-Wert mit dem vorherigen ATR-Wert und entscheiden dann über die ATR-Bewegung, d.h. ob sich die ATR-Linie nach oben bewegt und dies geschieht, wenn der aktuelle ATR-Wert größer ist als der vorherige ATR-Wert oder ob sie sich nach unten bewegt und dies geschieht, wenn der aktuelle ATR-Wert kleiner ist als der vorherige ATR-Wert.

  • Aktueller ATR-Wert > vorheriger ATR-Wert = ATR steigt
  • Aktueller ATR-Wert < vorheriger ATR-Wert = ATR fällt


3- Einfaches ATR-System - SL- und TP-Level:

Bei dieser Strategie müssen wir die ATR-Werte verwenden, um ein dynamisches Stop-Loss- und Take-Profit-Level zu bestimmen, das auf dem aktuellen ATR-Wert und einer spezifischen Berechnung für Stop-Loss und Take-Profit in beiden Fällen, der Kauf- und der Verkaufsposition, basiert.

Im Falle der Kaufposition müssen wir auf dem Chart sehen:

  • Aktueller Ask-Preis.
  • Eine neue Zeile mit dem aktuellen Bid-Preis.
  • Eine neue Zeile mit dem aktuellen ATR-Wert.
  • Eine neue Zeile mit dem Stop-Loss-Wert nach einer spezifischen Berechnung für die Kaufposition.
  • Eine neue Zeile mit dem Take-Profit-Wert nach einer bestimmten Berechnung für die Kaufposition.

Im Falle der Verkaufsposition müssen wir auf dem Chart sehen:

  • Aktueller Ask-Preis.
  • Eine neue Zeile mit dem aktuellen Bid-Preis.
  • Eine neue Zeile mit dem aktuellen ATR-Wert.
  • Eine neue Linie mit dem Stop-Loss-Wert gemäß einer spezifischen Berechnung für die Verkaufsposition.
  • Eine neue Linie mit dem Take-Profit-Wert nach einer bestimmten Berechnung für die Verkaufsposition.

Es gibt noch weitere fortgeschrittene Strategien, die vom ATR-Indikator verwendet werden können, aber hier sollen nur einige einfache Strategien erwähnt werden, die uns helfen können, den ATR-Indikator besser zu verstehen, um ihn richtig zu verwenden und unsere Handelsergebnisse zu verbessern.


ATR Blaupause der Strategie

In diesem Teil lernen wir Schritt für Schritt, was wir brauchen, um ein Handelssystem für die drei genannten Strategien zu erstellen, und zwar anhand einer Blaupause für jede Strategie. Bevor wir die drei genannten Strategien entwerfen oder erstellen, beginnen wir mit einer Blaupause für die notwendigen Schritte, um ein einfaches Programm oder einen Expert Advisor zu erstellen, der uns einen Kommentar mit dem aktuellen ATR-Wert anzeigt, um uns bei der Entwicklung unserer genannten Strategien zu helfen, und das folgende Bild zeigt die Blaupause dafür:

Blaupause eines einfachen ATR-Systems

1- Einfaches ATR-System - ATR-Stärke:

  • Aktueller ATR-Wert > 0,0024 = ATR ist stark
  • Aktueller ATR-Wert < 0,0014 = ATR ist schwach
  • Aktueller ATR-Wert > 0,0014 und < 0,0024 = aktueller ATR-Wert

Also, das Programm vergleicht den aktuellen ATR-Wert mit bestimmten Werten, um zu entscheiden, ob der aktuelle ATR-Wert größer als 0,0024 ist. Das bedeutet, dass der ATR stark ist, aber er ist nicht größer als dieser 0,0024 Wert. Wir brauchen das Programm, um zu überprüfen, ob der aktuelle ATR-Wert kleiner als 0.0014, was bedeutet, dass die ATR ist schwach, aber es ist nicht weniger als 0,0014 Wert. Das Programm ermittelte einen Wert es zwischen den beiden Wert, also größer als 0,0014 und kleiner als 0,0024. Das soll das Programm nun auf dem Chart zu zeigen.

Im Folgenden finden Sie einen Entwurf dieser ATR-Stärke-Strategie:

Einfaches ATR-System - ATR-Stärke Blaupause

2- Einfaches ATR-System - ATR-Bewegung:

  • Aktueller ATR-Wert > vorheriger ATR-Wert = ATR steigt
  • Aktueller ATR-Wert < vorheriger ATR-Wert = ATR fällt

Wir brauchen also den Expert Advisor, um den aktuellen ATR-Wert und den vorherigen ATR-Wert zu überprüfen und dann zu entscheiden, ob der aktuelle ATR-Wert größer als der vorherige ATR-Wert ist, was bedeutet, dass die ATR hoch ist, und ob der aktuelle ATR-Wert kleiner als der vorherige ATR-Wert ist, was bedeutet, dass die ATR niedrig ist, oder es gibt nichts aus.

Nachfolgend finden Sie eine Skizze dieser ATR-Bewegungsstrategie:

Einfaches ATR-System - ATR-Bewegungsschema

3- Einfaches ATR-System - SL- und TP-Level:

Es sollte in beiden Fällen ein Kommentar auf dem Chart erscheinen,

Die Kaufposition und die Verkaufsposition:

  • Aktueller Ask-Preis.
  • Eine neue Zeile mit dem aktuellen Bid-Preis.
  • Eine neue Zeile mit dem aktuellen ATR-Wert.
  • Eine neue Zeile mit dem Stop-Loss-Wert.
  • Eine neue Zeile mit dem Take-Profit-Wert.


Und im Folgenden finden Sie einen Entwurf für diese ATR SL und TP Level Strategie:

Einfaches ATR-System - SL&TP Level Blaupause

ATR Handelssystem

In diesem interessanten Kapitel werden wir lernen, den Code für jede der genannten Strategien zu schreiben, um ein Handelssystem zu erstellen, das auf jeder dieser Strategien basiert und leicht, reibungslos und genau ausgeführt werden kann. Jetzt werden wir einen Code für einen Expert Advisor schreiben, der uns den ATR-Wert auf dem Chart automatisch anzeigt.

Im Folgenden wird beschrieben, wie wir den Code dieses Expertenberaters für das einfache ATR-System schreiben können:

  • Erstellen eines Preisarrays mit Hilfe der Funktion "double":
double PriceArray[];
  • Festlegen der Sortierichtung der Daten mit der Funktion "ArraySetAsSeries":
ArraySetAsSeries(PriceArray,true);
  • Definieren des ATR mit Hilfe der Funktion iATR und dem Integerwert "int" als Rückgabewert:
int ATRDef=iATR(_Symbol,_Periode,14);
  • Definieren der Daten und Speichern der Ergebnisse mit Hilfe der Funktion "CopyBuffer":
CopyBuffer(ATRDef,0,0,3,PriceArray);
  • Ermitteln des Wertes der aktuellen Daten durch Rückgabe eines Double-Wertes mit Hilfe der Funktion "NormalizeDouble":
double ATRValue=NormalizeDouble(PriceArray[0],5);
  • Einen Kommentar zum Chart mit dem ATR-Wert erhalten:
Comment("ATR Value = ",ATRValue);

Im Folgenden finden Sie den vollständigen Code, wenn Sie ihn einfach kopieren und einfügen oder in einem Block sehen möchten:

//+------------------------------------------------------------------+
//|                                                   Simple ATR.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"
//+------------------------------------------------------------------+
void OnTick()
  {
   //creating price array
   double PriceArray[];
   
   //Sorting data
   ArraySetAsSeries(PriceArray,true);

   //define ATR
   int ATRDef=iATR(_Symbol,_Period,14);
   
   
   //define data and store result
   CopyBuffer(ATRDef,0,0,3,PriceArray);
   
   //get value of current data
   double ATRValue=NormalizeDouble(PriceArray[0],5);
   
   //comment on the chart
   Comment("ATR Value = ",ATRValue);
  }
//+------------------------------------------------------------------+

Wenn wir diesen Expert Advisor geschrieben haben und das Programm ausführen wollen, finden wir es im Navigator, wie in der folgenden Abbildung dargestellt:

ATR-Nav

Wenn Sie auf diese Datei doppelklicken oder sie per Drag & Drop auf den Chart ziehen, wird das folgende Fenster geöffnet,

Einfaches ATR-Fenster

Nachdem Sie auf "OK" geklickt haben, sehen Sie, dass der Simple ATR Expert Advisor an den Chart angehängt ist, wie in der folgenden Abbildung dargestellt:

Simple ATR angehängt

Und wir können sein Ergebnis gemäß dem Programm wie im folgenden Testbeispiel finden:

Einfaches ATR-Signal

Jetzt werden wir ein Handelssystem für jede erwähnte Strategie erstellen und es wird das gleiche sein wie das untenstehende,

1- Einfaches ATR-System - ATR-Stärke:

  • Aktueller ATR-Wert > 0,0024 = ATR ist stark 
  • Aktueller ATR-Wert < 0,0014 = ATR ist schwach
  • Aktueller ATR-Wert > 0,0014 und < 0,0024 = aktueller ATR-Wert

Im Folgenden wird beschrieben, wie wir den Code dieses Expert Advisors von Simple ATR System - ATR Strength schreiben können:

//+------------------------------------------------------------------+
//|                             Simple ATR System - ATR strength.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"
//+------------------------------------------------------------------+
void OnTick()
  {
   //creating price array
   double PriceArray[];
   
   
   //Sorting data
   ArraySetAsSeries(PriceArray,true);
   
   //define ATR
   int ATRDef=iATR(_Symbol,_Period,14);   
   
   //define data and store result
   CopyBuffer(ATRDef,0,0,3,PriceArray);
   
   //get value of current data
   double ATRValue=NormalizeDouble(PriceArray[0],5);
   
   //comment on the chart with ATR strength as per its value
   if(ATRValue>0.0024)
   Comment("Strong ATR","\n","ATR Value = ",ATRValue);
   
   if(ATRValue<0.0014)
   Comment("Weak ATR","\n","ATR Value = ",ATRValue);
   
   if((ATRValue>0.0014)&&(ATRValue<0.0024))
   Comment("ATR Value = ",ATRValue);
  }
//+------------------------------------------------------------------+

Die Unterschiede in diesem Code sind:

  • Die Kommentierung basiert auf dem Vergleich der aktuellen ATR mit einem bestimmten Wert, wenn der aktuelle ATR-Wert > 0,0024 ist:
   if(ATRValue>0.0024)
   Comment("Strong ATR","\n","ATR Value = ",ATRValue);
  • Wenn aktuelle ATR < 0,0014
   if(ATRValue<0.0014)
   Comment("Weak ATR","\n","ATR Value = ",ATRValue);
  • Wenn aktueller ATR-Wert > 0,0014 und aktueller ATR-Wert < 0,0024
   if((ATRValue>0.0014)&&(ATRValue<0.0024))
   Comment("ATR Value = ",ATRValue);

Danach können wir diesen Expert Advisor im Navigatorfenster finden, um ihn nach dem Kompilieren auszuführen:

ATR Nav 1

Nachdem wir die Datei mit einem Doppelklick oder durch Ziehen und Ablegen auf dem Chart geöffnet haben, sehen wir ein Fenster wie das folgende:

ATR-Stärke Fenster

Nachdem Sie auf "OK" geklickt haben, sehen Sie den Expert Advisor, der an den Chart angehängt ist, wie in der folgenden Abbildung dargestellt:

ATR-Stärke angehängt

Im Folgenden sehen Sie ein Beispiel für die Signale, die auf der Grundlage dieser Strategie zum Testen generiert wurden:

Wie wir im folgenden Chart sehen können, zeigt er einen Kommentar mit Strong ATR und dem aktuellen ATR-Wert in einer neuen Zeile:

ATR-Stärke - stark

Wie wir sehen können, zeigt der folgende Chart einen Kommentar mit schwacher ATR und aktuellem ATR-Wert in einer neuen Zeile:

ATR-Stärke - schwach

Wie wir sehen können, zeigt der folgende Chart einen Kommentar mit aktuellem ATR-Wert nur, weil er gemäß den ermittelten Werten neutral ist:

ATR-Stärke - neutral

2- Einfaches ATR-System - ATR-Bewegung: 

  • Aktueller ATR-Wert > vorheriger ATR-Wert = ATR steigt
  • Aktueller ATR-Wert < vorheriger ATR-Wert = ATR fällt

Im Folgenden wird beschrieben, wie wir den Code dieses Expert Advisors von Simple ATR System - ATR Movement schreiben können:

//+------------------------------------------------------------------+
//|                             Simple ATR System - ATR movement.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"
//+------------------------------------------------------------------+
void OnTick()
  {
   //creating arrays
   double PriceArray0[];
   double PriceArray1[];
   
   //sort price array from current data
   ArraySetAsSeries(PriceArray0,true);
   ArraySetAsSeries(PriceArray1,true);
   
   //define ATR
   int ATRDef=iATR(_Symbol,_Period,14); 
   
   //define data and store result
   CopyBuffer(ATRDef,0,0,3,PriceArray0);      
   CopyBuffer(ATRDef,0,0,3,PriceArray1);
   
   //get value of current data
   double ATRValue=NormalizeDouble(PriceArray0[0],5);
   double PreATRValue=NormalizeDouble(PriceArray1[1],5);

   if(ATRValue>PreATRValue)
   Comment("ATR is UP","\n","ATR Value = ",ATRValue,"\n","ATR Previous Value = ",PreATRValue);
   
   if(ATRValue<PreATRValue)
   Comment("ATR is Down","\n","ATR Value = ",ATRValue,"\n","ATR Previous Value = ",PreATRValue);
      
  }
//+------------------------------------------------------------------+


Die Unterschiede in diesem Code sind:

  • Erstellen von zwei Preis-Arrays (aktueller ATR-Wert (PriceArray0), vorheriger ATR-Wert (PriceArray1)):
   double PriceArray0[];
   double PriceArray1[];
  • Sortieren von zwei Preis-Arrays aus aktuellen Daten:
   ArraySetAsSeries(PriceArray0,true);
   ArraySetAsSeries(PriceArray1,true);
  • Definieren der Daten und Speichern des Ergebnisses für zwei Arrays:
   CopyBuffer(ATRDef,0,0,3,PriceArray0);      
   CopyBuffer(ATRDef,0,0,3,PriceArray1);
  • Ermitteln des Wertes der aktuellen Daten für zwei Werte (aktuelle und vorherige ATR):
   double ATRValue=NormalizeDouble(PriceArray0[0],5);
   double PreATRValue=NormalizeDouble(PriceArray1[1],5);
  • Die Kommentierung basiert auf dem Vergleich des aktuellen ATR-Werts mit dem vorherigen ATR-Wert,
    • Wenn aktueller ATR-Wert > vorheriger ATR-Wert:
   if(ATRValue>PreATRValue)
   Comment("ATR is UP","\n","ATR Value = ",ATRValue,"\n","ATR Previous Value = ",PreATRValue);
    • Wenn aktueller ATR-Wert < vorheriger ATR-Wert:
   if(ATRValue<PreATRValue)
   Comment("ATR is Down","\n","ATR Value = ",ATRValue,"\n","ATR Previous Value = ",PreATRValue);
Nach dem Kompilieren können wir diesen Expert Advisor im Navigatorfenster finden, um ihn auszuführen:

ATR Nav 2

Wenn Sie auf die Datei doppelklicken oder sie per Drag & Drop auf den Chart ziehen, sehen Sie ein Fenster wie das Folgende:

ATR-Bewegungsfenster.

Nachdem Sie ein Häkchen bei "Algo-Trading zulassen" gesetzt und auf "OK" gedrückt haben, wird der Expert Advisor an den Chart angehängt, wie in der folgenden Abbildung zu sehen ist:

ATR-Bewegung angehängt

Es folgt ein Beispiel für die Signale, die auf der Grundlage dieser Strategie zum Testen generiert werden,

Im Falle einer ATR-Bewegung nach oben:

ATR-Bewegung - aufwärts

Falls ATR abwärts ist:

ATR-Bewegung - abwärts


3- Einfaches ATR-System - SL- und TP-Level:

Im Falle der Kaufposition müssen wir auf dem Chart sehen: 

  • Aktueller Ask-Preis.
  • Eine neue Zeile mit dem aktuellen Bid-Preis.
  • Eine neue Zeile mit dem aktuellen ATR-Wert.
  • Eine neue Linie mit dem Stop-Loss-Wert für die Kaufposition.
  • Eine neue Linie mit dem Take-Profit-Wert für die Kaufposition.

Im Falle der Verkaufsposition müssen wir auf dem Chart sehen: 

  • Aktueller Ask-Preis.
  • Eine neue Zeile mit dem aktuellen Bid-Preis.
  • Eine neue Zeile mit dem aktuellen ATR-Wert.
  • Eine neue Linie mit dem Stop-Loss für die Verkaufsposition.
  • Eine neue Linie mit dem Take-Profit für die Verkaufsposition.

Im Folgenden sehen Sie, wie wir den Code dieses Expert Advisors des Simple ATR System - SL und TP Levels - schreiben können:

//+------------------------------------------------------------------+
//|                             Simple ATR System - SL&TP levels.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"
//+------------------------------------------------------------------+
void OnTick()
  {
   //define Ask price&Bid
   double Ask=NormalizeDouble(SymbolInfoDouble(_Symbol,SYMBOL_ASK),_Digits);
   double Bid=NormalizeDouble(SymbolInfoDouble(_Symbol,SYMBOL_BID),_Digits);
   
   //creating price array
   double PriceArray[];
   
   //Sorting data
   ArraySetAsSeries(PriceArray,true);

   //define ATR
   int ATRDef=iATR(_Symbol,_Period,14);
   
   
   //define data and store result
   CopyBuffer(ATRDef,0,0,3,PriceArray);
   
   //get value of current data
   double ATRValue=NormalizeDouble(PriceArray[0],5);
   
   //Calculate SL&TP for buy position
   double StopLossBuy=Bid-(ATRValue*2);
   double TakeProfitBuy=Ask+((ATRValue*2)*2);
   
   //Calculate SL&TP for sell position
   double StopLossSell=Ask+(ATRValue*2);
   double TakeProfitSell=Bid-((ATRValue*2)*2);
   
   //comment on the chart
   Comment("BUY POSITION","\n","Current Ask = ",Ask,"\n","Current Bid = ",Bid,"\n","ATR Value = ",ATRValue,
   "\n","Stop Loss = ",StopLossBuy,"\n","Take Profit = ",TakeProfitBuy,"\n",
   "SELL POSITION","\n","Current Ask = ",Ask,"\n","Current Bid = ",Bid,"\n","ATR Value = ",ATRValue,
   "\n","Stop Loss = ",StopLossSell,"\n","Take Profit = ",TakeProfitSell);
  }
//+------------------------------------------------------------------+

Die Unterschiede sind hier:

  • Definition von Ask und Bid-Kursen zur Berechnung von Stop-Loss und Take-Profit:
   double Ask=NormalizeDouble(SymbolInfoDouble(_Symbol,SYMBOL_ASK),_Digits);
   double Bid=NormalizeDouble(SymbolInfoDouble(_Symbol,SYMBOL_BID),_Digits);
  • Berechnung des Stop-Loss und des Take-Profits für die Kauf- und Verkaufsposition:
   //Calculate SL&TP for buy position
   double StopLossBuy=Bid-(ATRValue*2);
   double TakeProfitBuy=Ask+((ATRValue*2)*2);
   
   //Calculate SL&TP for sell position
   double StopLossSell=Ask+(ATRValue*2);
   double TakeProfitSell=Bid-((ATRValue*2)*2);
  • Kommentar auf der Grundlage der Strategie sowohl für die Kauf- als auch für die Verkaufsposition:
  • Aktueller Ask-Preis.
  • Eine neue Zeile mit dem aktuellen Bid-Preis.
  • Eine neue Zeile mit dem aktuellen ATR-Wert.
  • Eine neue Zeile mit dem Stop-Loss-Wert.
  • Eine neue Zeile mit dem Take-Profit-Wert.
  •    Comment("BUY POSITION","\n","Current Ask = ",Ask,"\n","Current Bid = ",Bid,"\n","ATR Value = ",ATRValue,
       "\n","Stop Loss = ",StopLossBuy,"\n","Take Profit = ",TakeProfitBuy,"\n",
       "SELL POSITION","\n","Current Ask = ",Ask,"\n","Current Bid = ",Bid,"\n","ATR Value = ",ATRValue,
       "\n","Stop Loss = ",StopLossSell,"\n","Take Profit = ",TakeProfitSell);
    

    Nachdem wir den Code kompiliert haben, können wir diesen Expert Advisor im Navigator-Fenster finden, um ihn auszuführen:

    ATR Nav 3

    Nach dem Öffnen der Datei durch Doppelklick oder Ziehen und Ablegen auf dem Chart wird das folgende Fenster geöffnet:

    ATR SL_TP Fenster

    Nachdem Sie auf "OK" geklickt haben, sehen Sie den Expert Advisor, der an den Chart angehängt ist, wie in der folgenden Abbildung dargestellt:

    ATR SL_TP-Fenster

    Im Folgenden sehen Sie ein Beispiel für die Signale, die auf der Grundlage dieser Strategie zum Testen generiert wurden:

    ATR SL_TP angehängt

    Schlussfolgerung

    Jetzt wird vorausgesetzt, dass Sie die Average True Range im Detail verstehen, denn wir haben gelernt, was die ATR ist, was sie misst und das Konzept dahinter, wie wir sie manuell berechnen können, und haben das auf ein reales Beispiel aus dem Markt angewandt, und zwar durch das Thema der ATR-Definition. Dann lernten wir einige einfache Strategien, die zu unseren Gunsten auf der Grundlage des Konzepts der Average True Range verwendet werden können, genauso wie wir das ATR-Stärkesystem, die ATR-Bewegung und einfache ATR - SL & TP Level Strategien kannten, und das lernten wir im Thema der ATR-Strategie, wir lernten und entwarfen eine Blaupause für jede Strategie, um uns zu helfen, ein Handelssystem für jede Strategie zu entwerfen, um auf der MetaTrader 5-Handelsplattform durch das Thema ATR-Strategie Blaupause Thema zu arbeiten, dann lernen wir, wie man den Expertenberater für jede Strategie von MetaQuotes Languages (MQL5) zu schreiben, um sie auf der MetaTrader 5-Plattform durch ATR Handelssystem Thema auszuführen.

    Nachdem Sie die vorangegangenen Themen verstanden und geübt haben, müssen Sie in der Lage sein, die Average True Range (ATR) entsprechend dem dahinter stehenden Konzept zu nutzen und den Indikator zu lesen, um die Volatilität des Instruments durch ein automatisiertes Handelssystem zu bestimmen, insbesondere nachdem Sie das Gelernte selbst angewendet haben, denn Übung ist wichtig, um etwas zu beherrschen.

    Es ist auch wichtig zu bestätigen, dass Sie jede neue Strategie oder jedes neue Tool testen müssen, bevor Sie es auf Ihrem realen Konto verwenden, da es für Ihren Handel nicht nützlich oder profitabel sein kann, selbst wenn es mit jemand anderem funktioniert, da es für Ihren Charakter oder Ihren Handelsplan nicht geeignet sein kann, und das ist normal. Sie müssen also sicherstellen, dass es für Sie nützlich und profitabel ist, indem Sie es zuerst testen.

    Am Ende dieses Artikels hoffe ich, dass Sie ihn für Ihr Trading nützlich finden und ich hoffe auch, dass er Ihnen die Augen für neue Ideen über das Thema des Artikels oder ein verwandtes Thema im Trading geöffnet hat, das ein Grund für die Verbesserung Ihrer Trading-Ergebnisse sein kann, und ich hoffe, dass er Ihnen die Bedeutung der Programmierung für das Trading vor Augen geführt hat und wie sehr sie nützlich sein kann und wie sehr sie uns hilft, einfach, reibungslos und genau zu handeln.

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

    Mehrere Indikatoren in einem Chart (Teil 04): Weiterentwicklung zum Expert Advisor Mehrere Indikatoren in einem Chart (Teil 04): Weiterentwicklung zum Expert Advisor
    In meinen früheren Artikeln habe ich erklärt, wie man einen Indikator mit mehreren Unterfenstern erstellt, was bei der Verwendung von nutzerdefinierten Indikatoren interessant wird. Dieses Mal werden wir sehen, wie man mehrere Fenster einem Expert Advisor hinzufügen kann.
    Lernen Sie, wie Sie ein Handelssystem mit Hilfe von ADX entwickeln Lernen Sie, wie Sie ein Handelssystem mit Hilfe von ADX entwickeln
    In diesem Artikel werden wir unsere Serie über die Entwicklung eines Handelssystems mit den beliebtesten Indikatoren fortsetzen und über den Average Directional Index (ADX) sprechen. Wir werden diesen Indikator im Detail lernen, um ihn gut zu verstehen, und wir werden lernen, wie wir ihn durch eine einfache Strategie nutzen können. Indem wir etwas gründlich lernen, können wir mehr Einsichten gewinnen und ihn besser nutzen.
    Grafiken in der DoEasy-Bibliothek (Teil 99): Verschieben eines erweiterten grafischen Objekts mit einem einzigen Steuerpunkt Grafiken in der DoEasy-Bibliothek (Teil 99): Verschieben eines erweiterten grafischen Objekts mit einem einzigen Steuerpunkt
    Im vorigen Artikel habe ich die Möglichkeit implementiert, Angelpunkte eines erweiterten grafischen Objekts mithilfe von Steuerformularen zu verschieben. Jetzt werde ich die Möglichkeit implementieren, ein zusammengesetztes grafisches Objekt mithilfe eines einzelnen grafischen Objektsteuerungspunkts (Formulars) zu verschieben.
    Grafiken in der Bibliothek DoEasy (Teil 98): Verschieben von Angelpunkten erweiterter grafischer Standardobjekte Grafiken in der Bibliothek DoEasy (Teil 98): Verschieben von Angelpunkten erweiterter grafischer Standardobjekte
    In diesem Artikel setze ich die Entwicklung erweiterter grafischer Standardobjekte fort und schaffe die Funktionen zum Verschieben von Angelpunkten zusammengesetzter grafischer Objekte unter Verwendung von Kontrollpunkten zur Verwaltung der Koordinaten der Angelpunkte des grafischen Objekts.