Share MQL5 Tutorial - Automatisch traden mit Metatrader5
Share to email
Share to Facebook
Share to X
By MQL5 Tutorial - Automatisch traden mit Metatrader5
The podcast currently has 312 episodes available.
In diesem Video möchten wir uns einmal die Verknüpfung von mehreren Signalen anschauen. In unserem Fall sind das vier gleitende Durchschnitte. Es sind exponentielle, gleitende Durchschnitte, die jeweils mit einer roten Linie gekennzeichnet sind. Und so lange, wie die in eine Richtung laufen, haben wir hier einen stabilen Sell-Trend. Sobald hier eine Überkreuzung stattfindet – wie jetzt und wenn es hier zu einer kompletten Trendwende kommt, dann schlägt unser Signal hier um und wir würden kaufen. Wie kann man jetzt einen Expert Advisor erstellen, der in der Lage ist, diese vier gleitenden Durchschnitte als Signal zu kombinieren und hier ein Kaufen- oder Verkaufen-Signal auf dem Chart auszugeben? Um das zu tun, klicken Sie bitte auf diesen kleinen Button hier oder drücken die F4 Taste auf Ihrer Tastatur. Das ruft dann hier den MetaEditor auf. Und hier klicken wir auf Datei, neu, Expert Advisor aus Vorlage, weiter. Ich vergebe hier einmal den Namen Simple Signal Kette, klicke auf weiter, weiter und fertigstellen. Und jetzt kann alles hier oberhalb der OnTick-Funktion gelöscht werden. Und auch die zwei Kommentar Zeilen kommen weg.
So, und jetzt möchten wir zunächst einmal eine Variable vom Typ String erstellen. Die bekommt den Namen Signal und wir weisen erstmal keinen Wert zu, denn der wird gleich ermittelt. Jetzt erstellen wir uns hier erst einmal vier Arrays. Die sollen unsere Preis Daten aufnehmen. Darum sind sie vom Typ Double. Jetzt kommen die Eigenschaften für unsere Moving Averages dran. Dazu stellt uns die MQL5 Sprache die Funktion IMA zur Verfügung. Die benötigt ein paar Parameter. Der erste Parameter ist für das Währungspaar auf dem Chart, der zweite für die dort ausgewählte Zeiteinheit. Der dritte Parameter ist für die Anzahl der Kerzen. So wird unser erster Moving Average für 50 Kerzen berechnet. In der MQL5 Hilfe heißt das Mittelungs-Periode. Der nächste Parameter wäre für die horizontale Verschiebung des Indikators. Damit könnte man die Darstellung hier nach rechts oder links verschieben. Das wollen wir aber nicht. Deswegen steht hier eine Null. Mit Mode, unterstrich EMA, wählen wir aus, dass wir gerne einen exponentiellen gleitenden Durchschnitt nutzen möchten. Und der letzte Parameter Price unterstrich Close legt fest, dass wir gerne den Schlusskurs für die Berechnung nutzen möchten.
In der Hilfe steht hier fälschlicherweise der Eröffnungs-Preis. Das wäre aber tatsächlich Preis-Open. Die Hilfe ist hier leider nicht optimal übersetzt. Da wir vier gleitende Durchschnitte brauchen, wiederholen wir das noch dreimal. Der zweite gleitende Durchschnitt soll für 100 Kerzen berechnet werden. Für den dritten berechnen wir 150 und für den vierten 200 Kerzen. Danach nutzen wir Array set as series für alle vier Werte, um unsere Moving Average Arrays von der aktuellen Kerze an abwärts zu sortieren. Jetzt nutzen wir den Befehl Copy Buffer, um unser Moving Average Array für die jeweils einzige Signal Linie von der aktuellen Kerze null für drei Kerzen anhand der von uns getroffenen Definition mit Daten zu füllen. Auch das tun wir für jedes unserer vier Arrays hier. Und jetzt können wir in unseren Arrays auf die Kerze null zugreifen, um den aktuellen Wert des jeweiligen gleitenden Durchschnitts der Variable My Moving Average Wert, gefolgt von der Zahl der jeweiligen Linie zuzuweisen. Jetzt erstellen wir einen Verkaufs-Signal. Dazu prüfen wir, ob mein Moving Average Wert eins kleiner ist als mein Moving Average Wert zwei.
Danach prüfen wir, ob mein Moving Average Wert zwei kleiner ist als mein Moving Average Wert drei. Und unsere dritte Bedingung ist Wir möchten wissen, ob mein Moving Average Wert drei kleiner ist als mein Moving Average Wert ihr. Falls das so ist, setzen wir unser Signal auf verkaufen. Für das Kauf Signal machen wir das Gleiche nochmal. Diesmal prüfen wir aber jeweils ab, ob der linke Wert größer ist als der rechte. Auch hier verketten wir alle drei geprüften Konditionen. Und wenn alles zutrifft, dann setzen wir unser Signal auf Kaufen. Zum Schluss nutzen wir den Comment Befehl, um unser aktuelles Signal und alle vier Werte für den jeweiligen gleitenden Durchschnitt auf unserem Chart auszugeben. Wenn alles soweit fertig ist, klicken Sie hier oben auf Compilieren oder drücken Sie die F7 Taste. Das sollte hier ohne Fehler und Warnungen funktioniert haben. Und falls das so ist, können Sie hier oben klicken oder die F4 Taste drücken, um in den Metatrader zurückzukehren. Und im MetaTrader klicken wir auf Ansich, Strategie Tester oder drücken Steuerung und R. Und im Strategie Tester wählen wir dann die Datei Simple Signal Kette.ex5 aus und starten unserem Test.
Und so sieht unser kleiner Expert Advisor bei der Arbeit aus. Sie haben jetzt die Möglichkeit so lange in Ihrer Short Position zu bleiben, bis hier die erste Überkreuzung auftaucht. Das sollte in diesem Fall zu einem Profit führen. Und Sie haben in diesem Video gelernt, wie Sie vier gleitende Durchschnitte als Signal miteinander verketten können, um Kaufen- oder Verkaufen-Signale auf Ihrem Chart auszugeben. Und Sie haben das selbst programmiert mit diesen paar Zeilen hier in MQL5.
Der Beitrag MQL5 TUTORIAL DEUTSCH – SIMPLE SIGNAL VERKETTUNG erschien zuerst auf MQL5 Tutorial Deutsch.
Das hier ist der sogenannte Bulls Power Indikator. Es handelt sich hierbei einen Oszillator, der anzeigen soll, wie stark die Bullen sind. Man sagt ja, dass im Trading jeden Tag die Bullen gegen die Bären kämpfen und bei maximalen Ausschlägen kann man davon ausgehen, dass hier nach den höchsten Werten der Preis erst mal in den Keller geht. Im Umkehrschluss, wenn diese Linie hier überschritten wird, dann geht es in der Regel erst mal aufwärts. Dieser Oszillator hier wurde erstellt von einem professionellen Trader mit dem Namen Alexander Elder. Er sagt hier, dass ein fallender Wert über null ein Signal zum Verkauf ist. Der Oszillator wird auf 13 Kerzen berechnet. Man nutzt einen exponentiellen Moving Average und es wird empfohlen, den Bulls Power Indikator zusammen mit einem anderen Trend Indikator, wie zum Beispiel den Moving Average, zu nutzen. Wie also können wir jetzt für diesen diesen Bulls Power Indikator einen ExpertAdvisor in MQL5 erstellen? Um das zu tun, klicken wir hier im MetaTrader zunächst auf diesen kleinen Knopf hier oben oder drücken die F4-Taste. Das ruft hier den Metaeditor auf und hier klicken wir auf „Datei neu, „ExpertAdvisor von Vorlage, „Weiter, vergeben hier den Namen „Simple Bulls Power EA, klicken auf „Weiter, „Weiter, „Fertigstellen und löschen alles oberhalb dieser OnTick-Funktion und die beiden Kommentarzeilen.
Und im ersten Schritt erstellen wir, wie so oft, ein Array für unsere Preisdaten vom Typ „Double und vergeben den Namen „My Price Array. Danach definieren wir die Eigenschaften für den Bulls Power EA, indem wir die in MQL5 eingebaute Funktion „i Bulls Power nutzen, und zwar für das aktuelle Währungspaar auf dem Chart und die dort eingestellte Zeiteinheit, zum Beispiel das Minuten-Chart oder das 60-Minuten-Chart. Und die Berechnung wird auf die letzten 13 Kerzen erfolgen, denn das ist der Zeitraum, der von Herrn Elder definiert wurde. Und im nächsten Schritt sortieren wir die Preise wieder abwärts von der aktuellen Kerze an, indem wir die Funktion „Array Set as Series nutzen. Das Ganze machen wir mit unserem Price-Array, das wir hier oben definiert haben. So, jetzt füllen wir Wir haben hier unseren Expert-Advisor noch mit Daten. Dazu nutzen wir hier die Definition aus dieser Zeile, die Funktion „Copy Buffer. Diese Null hier steht für den Indikator. Diese Null hier beschreibt die aktuelle Kerze und die drei bedeutet, dass wir die Preise von der aktuellen Kerze für drei Kerzen kopieren möchten und danach speichern wir das Resultat in unserem Price Array. Und aus diesem Price-Array hier holen wir uns jetzt aus der Kerze 0 den aktuellen Bulls Power-Wert und wir machen das mit einer Float-Variable.
Normalerweise würde das hier eine Double-Variable sein. Das sind mir aber zu viele Nachkommastellen und außerdem braucht die Float-Variable gegenüber der Double-Variable nur 4 Byte statt 8 Byte im Speicher. In einem letzten Schritt lassen wir uns jetzt auf dem Chart noch unseren Wert und den Text Bulls Power-Wert ausgeben. Das machen wir mit der Comment-Funktion und nach diesem Text wird der Wert ausgegeben, den wir in der Zeile hier ermittelt haben. Kompilieren wir das Ganze, dann bekommen wir hier unten die Warnung, es gibt einen möglichen Datenverlust, weil wir hier einen Float statt einen Double-Wert berechnen. Trotzdem war der Compiler-Vorgang mit null Fehlern erfolgreich. Also klicken wir hier oben auf diesen kleinen Knopf oder drücken die F4-Taste, zurückzuwechseln in den MetaTrader. Im MetaTrader selbst klicken wir auf „Ansicht, „Strategietester oder drücken die Steuerung und die R-Taste. Das ruft dann hier unten den „Strategietester auf und hier wählen wir die Datei „Simplebullspower EA.ex5 aus. Und bitte vergessen Sie nicht, den Haken hier für die Visualisierung zu setzen. Das Währungspaar und den Zeitraum können Sie sich selbst aussuchen und danach klicken wir hier einfach auf „Test starten. Und so sieht unser ExpertAdvisor dann in Aktion aus. Wie man erkennen kann, hat unser berechneter Wert hier oben eine Nachkommastelle weniger als der Original Bulls Indicator, der im MetaTrader 5 integriert ist, aber die Genauigkeit reicht locker aus, daraus Signale zu generieren.
So, Sie haben jetzt innerhalb von fünf Minuten Ihren eigenen MQL5 ExpertAdvisor erstellt, der den Bulls Power Indikator von Dr. Alexander Elder nutzt und Sie haben das mit diesen paar Codezellen in MQL5 gemacht.
Der Beitrag MQL5 Tutorial Deutsch – Simpler Bulls Power Expert Advisor erschien zuerst auf MQL5 Tutorial Deutsch.
In diesem Video möchten wir uns einmal anschauen, wie man diesen Indikator, den parabolischen SAR mit Metatrader 5 automatisch handeln kann. Wir werden hier diesen Expert Advisor so programmieren, dass er in der Lage ist, eigenständig Positionen zu eröffnen. Man sieht hier diese Punkte. Immer wenn die sich unterhalb des Preises befinden, dann ist das ein Kaufen Signal. Und wenn die Punkte oberhalb der Kerzen gezeichnet werden, ist das ein Verkaufen Signal. Hier unten haben wir bereits eine erste Position eröffnet. Und wir werden uns jetzt einmal anschauen, wie man das mit dem Meta Editor programmieren kann. Um das zu tun klicken Sie bitte im Metatrader hier oben auf diesen kleinen Button oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage. Weiter. Ich vergebe hier einmal den Namen SimplerSARStandaloneEA. Klicke auf Weiter, Weiter, Fertigstellen. Jetzt kann alles oberhalb der On Tick Funktion gelöscht werden. Und wir entfernen auch die zwei Kommentarzeilen. Zunächst einmal nutzen wir den include Befehl, um die Datei Trade.mqh zu importieren. Die bietet uns Handelsfunktionen. Und damit können wir jetzt von der Klasse CTrade eine Instanz mit dem Namen trade erstellen. Die brauchen wir gleich für die Eröffnung der Positionen. In der On Tick Funktion erstellen wir uns zunächst ein Preis-Array mit dem Namen PreisArray. Das übernimmt für uns die Funktion MqlRates. Hier oben passen wir noch den Kommentar an. Danach nutzen wir ArraySetAsSeries, um unser Array von der aktuellen Kerze an abwärts zu sortieren. Und mit CopyRates füllen wir es mit Preisdaten für das aktuelle Währungspaar auf dem Chart und die auf dem Chart ausgewählte Zeiteinheit. Wir tun das von der aktuellen Kerze null für drei Kerzen und speichern das Ergebnis in unserem PreisArray. Außerdem brauchen wir noch einen String für unsere Signal Variable. Die bekommt den Namen Signal. Der Wert wird später zugewiesen, denn den müssen wir erst noch ermitteln. Zuvor berechnen wir erst mal den Ask und den Bid Preis. Diese Informationen gibt uns die Funktion SymbolInfoDouble für das aktuelle Symbol auf dem Chart. Mit SYMBOL_ASK bekommen wir den Ask Preis. Mit SYMBOL_BID den Bid Preis. Und NormalizeDouble und Unterstrich Digits nutzen wir, um die richtige Anzahl der Nachkommastellen zu ermitteln. Hier hätten wir drei Nachkommastellen. Und hier fünf. Und mit diesem Ausdruck hier wird das für jedes Währungspaar entsprechend angepasst. Jetzt brauchen wir noch ein Array für den SAR Indikator. Die Definition dieses Indikators geht über die iSAR Funktion, die in MQL5 eingebaut ist. Auch hier nutzen wir das aktuelle Währungspaar auf dem Chart und die auf dem Chart ausgewählte Zeiteinheit. Und wenn Sie sich fragen, was diese beiden Werte hier bedeuten, die sehen Sie auch, wenn Sie hier auf Einfügen, Indikatoren, Tendenz, Parabolic SAR klicken. Dann sehen wir eine Schrittweite von 0,02 und ein Maximum von 0,2. Und genau das nutzen wir hier auch. Auch dieses Array sortieren wir wieder abwärts von der aktuellen Kerze, indem wir ArraySetAsSeries verwenden. Und im Anschluss nutzen wir CopyBuffer um unser SARArray anhand der SAR Definition, die wir hier oben getroffen haben für Buffer null, also den ersten Signalwert, von der aktuellen Kerze null für drei Kerzen mit Daten zu füllen. Und jetzt können wir die Werte für die letzte Kerze berechnen. Dazu schauen wir uns einfach die Kerze eins in unserem Array an. Und kürzen mit NormalizeDouble und dieser fünf den gemessenen Wert auf fünf Nachkommastellen. Denn wenn Sie hier mal die Maus über einen dieser Punkte halten, dann sehen Sie, bei Value werden auch fünf Nachkommastellen angezeigt. Und NormalizeDouble rundet halt unsere Zahl auf die angegebene Genauigkeit ab. In unserem Fall sind das diese fünf Nachkommastellen. Jetzt machen wir das Gleiche noch mal. Allerdings diesmal für Kerze zwei, um die Werte für die Kerze davor zu erhalten. Das Ergebnis speichern wir in der Variablen VorletzterSARWert. Jetzt haben wir soweit alles zusammen, um die Signale zu ermitteln. Ein Kaufen Signal haben wir immer, wenn der letzte Wert unter den Kerzen war und der vorletzte Wert aber noch über den Kerzen war. Das wäre zum Beispiel hier der Fall. Hier war der letzte Punkt über den Kerzen. Und hier haben wir den Sprung unter die Kerzen. Und wenn das der Fall ist, dann möchten wir gerne Kaufen. Und setzen unser Signal auf den Wert Kaufen. Das Verkaufen Signal ist genau anders herum. Wenn der letzte Wert über den Kerzen war und der vorletzte Wert noch unter den Kerzen war, das wäre hier der Fall gewesen, dann möchten wir gerne verkaufen und weisen den Begriff Verkaufen unserer Signal Variable zu. Wenn unser Signal den Wert Verkaufen entspricht und wenn die Funktion PositionsTotal kleiner als eins ist, das wäre der Fall, wenn wir weniger als eine Position geöffnet haben, dann nutzen wir trade.Sell um zehn Mikrolot zu verkaufen. Andernfalls, wenn unser Signal den Wert kaufen hat, und wir keine geöffneten Positionen haben, dann nutzen wir trade.Buy und kaufen zehn Mikrolot. Zum Schluss erstellen wir noch eine Chart Ausgabe. Das übernimmt der Comment Befehl. Der gibt uns dann den Text: Das aktuelle Signal ist und das ermittelte Signal direkt auf dem Chart aus. Okay, das war es soweit. Bitte klicken Sie hier oben auf Kompilieren oder drücken Sie die F7 Taste. Das hat hier ohne Fehler und Warnungen funktioniert. Also können wir jetzt hier klicken oder F4 drücken, um in den Metatrader zurückzukehren. Und im Metatrader klicken wir auf Ansicht, Strategietester oder drücken STRG+R. Hier wählen wir die neu erstellte Datei SimplerSARStandaloneEA.ex5 aus, markieren hier die Visualisierungsoption und starten unseren Test. Und hier läuft unser kleiner Expert Advisor auch schon. Wir sehen die Punkte auf dem Chart. Und hier wurde gerade ein Kaufen Signal generiert, was unseren ersten vollautomatischen Trade ausgelöst hat. Und Sie haben in diesem kurzen Video gelernt, wie Sie den Parabolic SAR Indikator mit ein paar Zeilen in MQL5 automatisieren können. Und Sie haben das selbst programmiert mit diesen paar Code Zeilen hier im Meta Editor.
Der Beitrag MQL5 TUTORIAL DEUTSCH – SIMPLER SAR STANDALONE EXPERT ADVISOR erschien zuerst auf MQL5 Tutorial Deutsch.
In diesem Video möchten wir einen Expert Adviser erstellen, der in der Lage ist, den Stochastic Indicator eigenständig zu handeln. Es handelt sich hier um einen Oszillator. Immer wenn wir eine Überkreuzung dieser beiden Signallinien oberhalb der gestichelten oberen Linie habe, wäre das ein Verkaufen. Und unterhalb wäre es ein Kaufen Signal. Die Signale werden nicht nur hier auf dem Chart ausgegeben. Sondern wir haben hier unten auch schon eine erste geöffnete Position, die automatisch gehandelt wurde. Und wir möchten uns jetzt einmal anschauen, wie man so etwas in MQL5 programmieren kann. Um das zu tun, klicken Sie bitte hier oben auf diesen kleinen Button oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage. Weiter. Ich vergebe hier mal den Namen SimplerStochasticStandaloneEA, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser On Tick Funktion hier gelöscht werden. Auch die zwei Kommentarzeilen kommen weg. Hier oben nutzen wir den include Befehl, um die Datei Trade.mqh zu importieren. Die ermöglicht uns eine Instanz von der Klasse CTrade zu erstellen. Damit lassen sich dann später die Positionen eröffnen. In der On Tick Funktion, die bei jeder Preisänderung aufgerufen wird, erstellen wir erst einmal eine Signal Variable. Die ist vom Typ String, damit sie Textketten aufnehmen kann, bekommt aber hier noch keinen Wert zugewiesen. Der wird gleich noch ermittelt. Dazu benötigen wir erst einmal ein paar Dinge. Zum Beispiel den Ask und den Bid Preis. Hier oben kann man sehen, dass wir einen roten und einen blauen Preisverlauf haben. Der blaue Preis ist der Ask Preis. Den müssen wir zahlen, wenn wir etwas kaufen. Und der rote ist der Bid Preis. Den erhalten wir, wenn wir etwas verkaufen. Ermitteln können wir das mit der Funktion SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Mit SYMBOL_ASK bekommen wir den Ask Preis. Und mit SYMBOL_BID bekommen wir den Bid Preis. Und diese NormalizeDouble Funktion in Kombination mit _Digits sorgt dafür, dass wir entweder drei oder fünf Nachkommastellen haben, je nachdem, welches Währungspaar auf dem Chart ist. Jetzt brauchen wir noch zwei Arrays. Das eine heißt KArray und das andere heißt DArray. Wenn man im Metatrader auf Einfügen, Indikatoren, Oszillatoren, Stochastic Oszillator klickt, sieht man auch hier eine K Periode und eine D Periode. Zunächst einmal sortieren wir mit ArraySeAsSeries beide Arrays von der aktuellen Kerze an abwärts. Jetzt können wir unsere StochasticDefinition mit Hilfe der Funktion iStochastic umsetzen. Wir tun das für das aktuelle Währungspaar auf dem Chart und die auf dem Chart ausgewählte Zeiteinheit. Auch diese Parameter hier finden wir in den Standardeinstellungen für den Stochastic Oszillator wieder. Wir haben hier 5,3,3, MODE_SMA und STO_LOWHIGH. Und auch hier sehen wir eine Fünf für die K Periode, eine Drei für die D Periode. Die Verlangsamung ist drei. Die Methode steht auf Simple. Das ist gleich zu setzten mit MODE SMA. Der Preisbereich steht auf Low/High. Das entspricht hier diesem letzten Parameter. STO_LOWHIGH. Mit der Funktion CopyBuffer füllen wir jetzt unser KArray und unser DArray mit Preisdaten. Das erste Array für den Buffer null. Das ist die erste Signallinie. Das zweite Array ist Buffer eins. Das ist die zweite Signallinie. Wir brauchen jeweils von der aktuellen Kerze für drei Kerzen die Preisdaten laut unserer Definition, die wir hier oben getroffen haben. Und speichern sie in den jeweiligen Arrays. Und mit diesen Daten können wir jetzt die aktuellen Werte, den KWert null und den DWert null für die jeweilige Kerze null berechnen. Das ist die aktuelle Kerze. Das Gleiche machen wir noch mal für die Kerze davor. Das wäre Kerze eins. Die Ergebnisse weisen wir den Variablen KWert eins und DWert eins zu. Und jetzt können wir ein Kaufen Signal ermitteln. Immer wenn beide Werte unter 20 sind, wenn als der KWert für die aktuelle Kerze kleiner ist als 20 und auch der DWert für die aktuelle Kerze kleiner ist als 20, dann prüfen wir, ob eine Überkreuzung stattgefunden hat. Wenn nämlich der aktuelle KWert größer ist als der aktuelle DWert und der KWert für Kerze eins noch kleiner war als der DWert, dann wäre das ein Kaufen Signal. Also weisen wir das Wort Kaufen unserer Signal Variable zu. Für das Verkaufen Signal prüfen wir auf den umgekehrten Fall ab. Wenn beide Werte über 80 sind, das wäre hier oben der Fall. Man sieht hier auch die 80 und die 20 an den jeweiligen gestrichelten Linien. Wenn also KWert für Kerze null größer ist als 80 und DWert für Kerze null größer ist als 80, dann prüfen wir wieder, ob es eine Überkreuzung gegeben hat. Das wäre der Fall, wenn der aktuelle KWert kleiner ist als der DWert für die aktuelle Kerze. Und wenn der KWert für die letzte Kerze noch größer war als der DWert. In dem Fall hätten wir ein Verkaufen Signal. Darum weisen wir das Wort Verkaufen unserer Signal Variable zu. Der eigentliche Handelsvorgang für den Verkauf von zehn Mikrolot prüft ab, ob das Signal tatsächlich auf Verkaufen steht. Und ob die Anzahl der Positionen kleiner ist als eins. Also ob wir keine geöffnete Position haben. In dem Fall nutzen wir trade.Sell um zehn Mikrolot zu verkaufen. Im andern Fall, wenn das Signal auf Kaufen steht und wir ebenfalls keine geöffnete Position haben, dann nutzen wir trade.Buy um zehn Mikrolot zu kaufen. Zum Schluss erstellen wir hier noch eine Chart Ausgabe. Das macht der Comment Befehl. Der gibt uns den Text: Das aktuelle Signal ist, gefolgt von dem ermittelten Signal aus. Okay, das war es. Bitte klicken Sie hier oben auf Kompilieren oder drücken Sie F7. Das sollte dann hier ohne Fehler und Warnungen passieren. Und in dem Fall können Sie hier oben klicken oder F4 drücken, um in den Metatrader zurückzukehren. Und im Metatrader klicken wir auf Ansicht, Strategietester oder drücken STRG+R. Hier wählen wir bitte die Datei SimplerStochasticStandaloneEA.ex5 aus. Markieren hier unten die Option für die Visualisierung und starten unseren Test. Und hier läuft unser Indikator schon. Bei der ersten Überkreuzung hier unten oder hier oben, sollte eine Position eröffnet werden. Das ist jetzt gerade passiert. Und Sie haben in diesem kurzen Video gelernt, wie Sie den Stochastic Oszillator mit MQL5 vollständig automatisieren können, so dass Sie einen Expert Advisor haben, der im Metatrader 5 automatische dieses Signal handelt. Und Sie haben das selbst programmiert mit diesen paar Zeilen hier im MQL5.
Der Beitrag MQL5 TUTORIAL DEUTSCH – SIMPLER STOCHASTIC STANDALONE EXPERT erschien zuerst auf MQL5 Tutorial Deutsch.
In diesem Video geht es um diesen Indikator hier. Das ist der Adaptive Moving Average. Der setzt sich aus mehreren Werten zusammen. Und zeichnet hier diese rote Linie. Und wann immer sich der Preis oberhalb der roten Linie befindet, ist das ein Kaufen Signal. Im andern Fall, wenn sich die Kerzen unterhalb der roten Linie bewegen, dann wäre das ein Verkaufen Signal. Wie kann man jetzt einen Expert Advisor erstellen, der in der Lage ist, nicht nur die Signale hier auf den Chart auszugeben, sondern auch eigenständig Positionen zu eröffnen. Um das zu tun, klicken wir auf diesen kleinen Button hier oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage. Weiter. Ich vergebe hier mal den Namen SimplerAMAStandaloneEA. Klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann man alles oberhalb von der On Tick Funktion löschen. Und die zwei Kommentarzeilen können ebenfalls entfernt werden. Zunächst nutzen wir die include Funktion. Damit holen wir uns die Datei Trade.mqh. Die ist Teil von MQL5 und stellt Handelsfunktionen bereit. Und sie ermöglicht uns, von CTrade eine Instanz mit dem Namen trade zu erstellen. Die werden wir gleich nutzen um Positionen zu eröffnen. Damit wir das können müssen einige Dinge berechnet werden. Zunächst einmal holen wir uns den Ask und den Bid Preis. Das geht mit SymbolInfoDouble für das aktuelle Währungspaar. SYMBOL_ASK liefert uns den Ask Preis. SYMBOL_BID liefert uns den Bid Preis. Wenn man mal auf ein Währungspaar hier klickt, dann sieht man: Das hier ist der Ask und das hier der Bid Preis. Diesen Preis zahlen wir, wenn wir etwas kaufen. Und das bekommen wir, wenn wir etwas verkaufen. Das dazwischen ist der Spread, davon lebt der Broker. Jetzt erstellen wir uns ein Preis Array. Das geht mit der Funktion MqlRates. Wir vergeben mal den Namen PriceInfo. Mit dem Befehl ArraySetAsSeries sortieren wir unser PriceInfo Array von der aktuellen Kerze an abwärts. Und mit der Funktion CopyRates füllen wir unser Array mit Preisdaten für das aktuelle Währungspaar und die auf dem Chart ausgewählte Zeiteinheit. Wir starten mit der aktuellen Kerze null, holen uns die Daten für drei Kerzen und speichern sie in unserem Array PriceInfo. Jetzt haben wir die Daten für die Kerzen, brauchen aber noch einen String für unser Signal. Diese Variable bekommt auch den Namen Signal. Noch haben wir keinen Wert zugewiesen. Den müssen wir nämlich noch berechnen. Für unser Signal brauchen wir noch ein Array. Das bekommt den Namen myPriceArray. Und nun kommt der eigentlich spannende Teil. Wir nutzen die Funktion iAMA, die mit MQL5 kommt, um für das aktuelle Währungspaar und die ausgewählte Zeiteinheit eine Definition für unseren Expert Advisor zu erstellen. Falls Sie sich fragen, was diese Zahlen hier bedeuten. 9,2,30, 0. Dann klicken Sie doch einmal auf Einfügen, Indikatoren, Tendenz, Adaptive Moving Average. Dann sehen wir hier eine neun für die Periode, zwei ist der Wert für den schnellen EMA. Null ist die Verschiebung und dreißig ist der langsame EMA. EMA steht an der Stelle für Exponential Moving Average. Und das sind genau die Zahlen, die wir hier sehen. Für den letzten Parameter verwenden wir PRICE_CLOSE. Denn wir möchten gerne unsere Ergebnisse aufgrund der Schlusskurse ermitteln. Auch dieses PriceArray müssen wir wieder von der aktuellen Kerze an abwärts sortieren indem wir ArraySetAsSeries verwenden. Und nun füllen wir mit CopyBuffer unser PriceArray anhand der MovingAverageDefinition, die wir hier oben getroffen haben. Für Buffer null, das ist die erste Signallinie von der aktuellen Kerze null für drei Kerzen mit Preisdaten und speichern sie in unserem Array. Indem wir auf Kerze null in unserem PriceArray zugreifen, können wir den AdaptivMovingAverage Wert berechnen. Wenn man hier mal kurz den Strategietester anhält und die Maus hier über den roten Strich hält, dann sieht man, dass hier ein Wert mit sechs Nachkommastellen angezeigt wird. Das ist das, was wir hier berechnen. Und wenn sich dieser Wert oberhalb des Schlusskurses von Kerze null befindet, dann möchten wir unser Signal auf Verkaufen stellen. Man muss dazu sagen, der Schlusskurs von Kerze null wird angezeigt, auch wenn die Kerze noch gar nicht geschlossen ist. Es handelt sich in diesem Fall immer um den aktuellsten Preis. Und natürlich gibt es das auch noch anders herum. Wenn der Wert für den AdaptivMovingAverage kleiner ist, als der Schlusskurs von Kerze null, wenn also die rote Linie unterhalb dieser Kerzen hier gezeichnet wird, dann möchten wir gerne kaufen und weisen darum das Wort kaufen unserer Signalvariable zu. Und wenn unser Signal den Wert verkaufen hat und die Funktion PositionsTotal < eins, mit andern Worten, wenn wir keine geöffneten Positionen haben, dann nutzen wir trade.Sell, um zehn Mikrolot zu verkaufen. Im andern Fall, wenn unser Signal auf kaufen steht und wir keine geöffneten Positionen auf dem Chart haben, dann nutzen wir trade.Buy, um zehn Mikrolot zu kaufen. Zum Schluss erstellen wir noch eine Chart Ausgabe. Das übernimmt der Comment Befehl. Der gibt uns den Text: Das aktuelle Signal ist. Gefolgt von dem berechneten Signal aus. Gut, das war es soweit. Klicken wir mal auf Kompilieren. Das hat ohne Fehler und Warnungen funktioniert. Und darum können wir jetzt hier oben klicken oder F4 drücken, um in den Meta Trader zurückzukehren. Und im Meta Trader klicken wir auf Ansicht, Strategietester oder drücken die Tastenkombination STRG+R. Hier werden wir dann die Datei SimplerAMAstandaloneEA.ex5 aus. Markieren die Option für die Visualisierung und starten unseren Test: Und da läuft unser Expert Advisor schon. Wir haben auch schon eine geöffnete Position. Und Sie haben in diesem kurzen Video gelernt, wie Sie den Adaptiv Moving Average mit MQL 5 nicht nur berechnen, sondern auch automatisch handeln können. Und Sie haben das selbst programmiert mit diesen paar Zeilen hier in MQL5.
Der Beitrag MQL5 TUTORIAL DEUTSCH – SIMPLER ADAPTIVE MOVING AVERAGE STANDALONE EA erschien zuerst auf MQL5 Tutorial Deutsch.
The podcast currently has 312 episodes available.