MQL5 TUTORIAL GRUNDLAGEN – 105 SIMPLES SELL GRID SYSTEM

video
play-sharp-fill

 

In diesem Video wollen wir uns einmal anschauen, wie man einen Expert Advisor erstellen kann, der in der Lage ist, bei absteigenden Trends alle fünfzig Punkte einen neuen Sell Trade zu eröffnen. Also lassen Sie uns einmal schauen, wie man so etwas mit MQL5 realisieren kann. Um das zu tun, klicken Sie im Metatrader bitte hier oben auf dieses kleine Symbol oder drücken Sie die F4 Taste. Das ruft dann hier den Metaeditor auf. Und hier klicken wir auf Datei, Neue Datei, Expert Advisor aus Vorlage, Weiter.

Ich vergebe hier einmal den Namen SimplesSellGridSystem, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb der OnTick Funktion hier gelöscht werden. Und wir entfernen auch die zwei Kommentarzeilen. Im ersten Schritt nutzen wir den include Befehl, um die Datei Trade.mqh zu importieren. Die stellt uns vereinfachte Handelsfunktionen bereit. Und um die zu nutzen erstellen wir hier eine Instanz von der Klasse CTrade mit dem Namen trade. Außerdem nutzen wir  MqlRates für ein Array mit dem Namen PriceInfo, das unsere Preisdaten aufnehmen wird. Und im Anschluss erstellen wir uns eine Signal Variable vom Typ string. Der weisen wir hier aber noch keinen Wert zu, denn der wird gleich ermittelt. In der OnTick Funktion nutzen wir eine statische Variable vom Typ double. Die bekommt den Namen NextSellPrice. Und die werden wir verwenden, um den nächsten Sell Preis zu definieren. Und damit wir etwas verkaufen können brauchen wir den Bid Preis. Den ermitteln wir mit der Funktion SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart.

 

Wir nutzen SYMBOL_BID. Und mit NormalizeDouble und _Digits lassen wir uns automatisch die richtige Anzahl von Nachkommastellen für das jeweilige Währungspaar ermitteln. Mit Hilfe der Funktion ArraySetAsSeries sortieren wir unser PriceInfo Array jetzt von der aktuellen Kerze an abwärts. Danach füllen wir es mit Daten. Das übernimmt die Funktion CopyRates für das aktuelle Währungspaar auf dem Chart und die auf dem Chart ausgewählte Zeiteinheit, möchten wir von der aktuellen Kerze null die Werte für drei Kerzen in unserem PriceInfo Array speichern. Sofern wir keine offenen Positionen haben, liefert uns die Funktion PositionsTotal einen Wert von null zurück. Dann setzen wir unseren NextSellPrice hier ebenfalls auf null. Um das Signal zu ermitteln möchten wir eine Funktion mit dem Namen CheckEntrySignal nutzen. Die existiert noch nicht.

 

Also müssen wir die gleich noch programmieren. Für die Einstiegsbedingungen möchten wir prüfen, ob unser Bid Preis kleiner ist als der NextSellPrice den wir definiert haben. Oder, ob unser NextSellPrice den Wert null hat. Die nächste Bedingung wäre zu prüfen, ob unser Signal auf sell steht. Und wenn beides zutrifft, dann nutzen wir hier trade.Sell, um zehn Mikrolot zu verkaufen. Danach setzen wir sofort den Level für den nächsten Sell Preis auf einen Wert, fünfzig Punkte unterhalb des aktuellen Bid Preises. Damit wir auch was sehen, nutzen wir hier die Comment Funktion. So weit, so gut. Aber da diese Funktion hier nicht existiert, müssen wir die jetzt noch programmieren. Unsere Funktion soll den Namen CheckEntrySignal bekommen und uns einen string Wert, also eine Textkette zurückliefern. Wir prüfen hier, ob der Schlusskurs für Kerze eins in unserem PriceInfoArray größer ist, als der Eröffnungskurs für Kerze eins im gleichen Array.

 

Wenn das so ist, ist das für uns ein Verkaufssignal. Und dann setzen wir hier unsere Signal Variable auf Buy. Im umgekehrten Fall, wenn der Schlusskurs für Kerze eins niedriger war, als der Eröffnungskurs für Kerze eins, dann wäre das ein Verkaufen Signal. Und dann setzen wir unsere Variable hier auf sell. Zum Schluss nutzen wir noch den return Befehl, um unser Signal an das Hauptmodul zurückzuliefern. Das war es soweit. Wenn Ihnen das zu schnell ging oder wenn Sie keine Ahnung haben, was diese Code Zeilen hier bewirken sollen, dann möchten Sie sich vielleicht zunächst eines der anderen Videos anschauen.

 

Vielleicht ist aber auch der Premiumkurs interessant für Sie. Den finden Sie zusammen mit anderen Angeboten auf unserer Webseite. Da gibt es jetzt übrigens auch hier die Quellcodes von den Basisvideos. Für den Moment klicken wir hier aber mal auf Kompilieren oder drücken die F7 Taste. Das sollte ohne Fehler funktionieren. Und wenn das bei Ihnen auch so ist, dann können Sie jetzt hier oben klicken oder die F4 Taste drücken, um in den Metatrader zurückzukehren. Und im Metatrader klicken wir auf Ansicht, Strategietester oder drücken Ctrl+R. Bitte wählen Sie hier die neu erstellte Datei SimplesSellGridSystem.ex5 aus, markieren die Option für den visuellen Modus und starten Sie Ihren Test. Hier läuft der Expert Advisor auch schon los.

 

Und sobald wir hier einen absteigenden Trend erkennen, sollten wir sehen, dass unser Expert Advisor alle fünfzig Punkte eine neue Position eröffnet. Ich beschleunige das Ganze jetzt mal ein bisschen. Und wie wir sehen, unser Expert Advisor funktioniert wie gewünscht. Und Sie haben in diesem kurzen Video gelernt, wie man ein Sell Grid System programmieren kann. Und Sie haben das selbst getan, mit diesen paar Zeilen hier in MQL5.