In diesem Video möchten wir uns einmal den Indikator Envelopes anschauen. Der produziert so eine blaue und eine rote Linie. Und wir wollen einmal schauen, wie man sich einen Expert Advisor in MQL5 erstellen kann, der in der Lage ist, Kaufen und Verkaufen Signale hier auf dem Chart auszugeben und eigenständig Positionen automatisch zu öffnen. Um das zu tun, klicken wir im Mata Trader auf diesen kleinen Button oder drücken die F4 Taste. Das ruft dann den Meta Editor auf. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier einmal den Namen SimplerEnvelopesStandAloneEA. Klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb der On Tick Funktion gelöscht werden. Und auch die zwei Kommentarzeilen kommen weg. Wir starten, indem wir uns eine Instanz von CTrade erstellen. Dazu nutzen wir den Include Befehl und importieren die Datei Trade.mqh. Die ist in MQL5 enthalten und stellt Handelsfunktionen bereit. Unsere Instanz bekommt den Namen Trade. Und damit werden wir gleich Positionen eröffenen. Vorher müssen wir noch ein paar Dinge berechnen. Fangen wir an mit dem Ask Preis und dem Bid Preis. Die Berechnung erfolgt mit der Funktion SymbolInfoDouble für das aktuelle Symbol auf dem Chart, also das Währungspaar. Benutzen SYMPBOL_ASK um den Ask Preis zu berechnen. Und SYMBOL_BID um den Bid Preis zu berechnen. Mit NormalizeDouble_Digits stellen wir sicher, dass die Berechnung von drei oder fünf Nachkommastellen automatisch erfolgt, je nachdem, welches Währungspaar wir traden. Jetzt brauchen wir noch eine leere String Variable. Die bekommt den Namen Signal, denn die soll später unser Handelssignal aufnehmen. Und mit MQL Rates erstellen wir uns ein Array für Preisinformationen. Das wird mittels ArraySetAsSeries von der aktuellen Kerze an abwärts sortiert. Jetzt nutzen wir die Funktion CopyRates um unser Preisinformations Array für das aktuelle Währungspaar und die auf dem Chart aktuelle ausgewählte Zeiteinheit von der Kerze 0, dass ist die aktuelle Kerze ganz rechts, die gerade erstellt wird, für drei Kerzen zu kopieren. Die Daten landen dann hier in unserem PriceArray. Für den Envelopes Indikator brauchen wir zwei Arrays. Eins für das obere und eins für das untere Band. Auch diese Arrays sortieren wir mit ArraySetAsSeries von der aktuellen Kerze an abwärts. Danach nutzen wir die Funktion iEnvelopes um den Expert Advisor zu definieren. iEnvelopes ist in MQL5 enthalten und benötigt als Parameter das aktuelle Währungspaar, die auf dem Chart ausgewählte Zeiteinheit. Diese 14 hier steht für 14 Kerzen. Man sieht das auch, wenn man einmal im Meta Trader auf Einfügen, Indikatoren, Tendenz Envelopes klickt. Hier sind 14 Kerzen als Standardwert vorgelegt, die Abweichung beträgt 0.100. Die Verschiebung ist 0 und berechnet wird das Ganze auf die Close Preise, also auf die Schlusskurse. Genau das sind auch die Paramter, die wir hier verwenden. Mittels CopyBuffer füllen wir jetzt unsere Arrays mit Daten. Und zwar anhand der Envelopes Definition, die wir hier oben getroffen haben. Das obere Array hat das Buffer 0. Das untere das Buffer 1. Wir starten von der jeweils aktuellen Kerze 0 und kopieren uns die Daten für drei Kerzen jeweils in das ober oder in das untere Array. Das ermöglicht uns, den Expert Advisor für die jeweils aktuelle Kerze zu berechnen. Der Wert für das obere Band wird ermittelt, indem man sich die Kerze 0 im jeweiligen Array anschaut. Und mit NormolizeDouble und dieser 6 kürzen wir dieses Ergebnis auf sechs Nachkommastellen ab. Das Gleiche machen wir hier nochmal für das untere Band. Und wenn die letzte Kerze unter dem unteren Band geschlossen wurde, wenn also der Schlusskurs von Kerze 1 aus unserem Preisinformations Array kleiner war als der Wert für das untere Band, dann möchten wir gerne kaufen und weisen den Begriff Kaufen unserer Signal Variable zu. Im anderen Fall, wenn die letzte Kerze über dem oberen Band geschlossen wurde. Wenn also der Schlusskurs von Kerze 1 aus unserem Preisinformations Array größer ist als der letzte Wert des oberen Bandes, dann wäre das ein Verkaufen Signal, also weisen wir den Begriff Verkaufen unserer Signal Variable zu. Und immer, wenn unser Signal verkaufen ist und die Funktion PositionsTotal kleiner ist als 1. Das bedeutet, wir haben keine geöffneten Positionen, dann nutzen wir Trade.Sell um zehn Microlot zu verkaufen. Im anderen Fall das Signal wäre Kaufen und wir hätten ebenfalls keine geöffnete Position, dann nutzen wir Trade.Buy um zehn Microlot zu kaufen. Zum Schluss erstellen wir uns noch mit dem Comment Befehl eine Chartausgabe. Die wird uns auf dem Chart: Das aktuelle Signal ist, gefolgt vom ermittelten Signal anzeigen. Das wars soweit. Wenn Sie alles haben, klicken Sie bitte hier oben auf Kompilieren oder drücken F7. Das hat alles ohne Fehler hier funktioniert, also können wir hier oben den Button klicken oder die F4 Taste drücken, um in den Meta Trader zurückzukehren. Im Meta Trader selbst klicken wir auf Ansicht, Strategietester oder Drücken die Tastenkombination STRG+R. Im Strategietester wählen wir dann die Datei SimplerEnvelopesStandAloneExpertAdvisor aus, markieren hier die Option für die Visualisierung und starten unseren Test. Und hier läuft unser Expert Advisor auch schon. Er produziert fleißig Kaufen und Verkaufen Signale. Hier wurden bereits erste Positionen eröffnet. Und Sie haben in diesem kurzen Video gelernt, wie man für den Envelopes Indikator einen eigenständig lauffähigen Expert Advisor erstellen kann, der in der Lage ist, automatisch Positionen zu eröffnen. Und Sie haben das selbst programmiert mit diesen paar Zeilen hier in MQL5.
Download “MQL5 TUTORIAL DEUTSCH - SIMPLER ENVELOPES STANDALONE EXPERT ADVISOR” SimplerEnvelopesStandaloneExpertAdvisor.txt – 150-mal heruntergeladen – 2,11 kB