MQL4 TUTORIAL DEUTSCH

MQL4 TUTORIAL GRUNDLAGEN – 73 SIMPLE SPREAD FILTER


Listen Later

In diesem Video wollen wir uns einmal anschauen, wie man einen Spread Filter in MQL4 programmieren, der Trading entweder erlaubt oder verbietet anhand der definierten Werte. Also lassen Sie uns einmal schauen, wie man so etwas programmieren kann. Um das zu tun, klicken Sie bitte im Metatrader hier oben auf dieses kleine Symbol oder drücken die F4 Taste. Das zeigt dann hier den Metaeditor an. Und hier klicken wir auf Datei, Neue Datei, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier mal den Namen SimplerSpreadFilter, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser OnTick Funktion hier gelöscht werden. Und auch die zwei Kommentarzeilen werden entfernt. Wir starten damit, dass wir uns hier eine benutzerdefinierte input Variable erstellen. Tatsächlich ist das hier in großen Teilen MQL5 Code, der auf 4 angepasst werden kann. Und wenn Sie einmal input markieren und die F1 Taste drücken, dann sehen wir, dass man den Wert für diese Variablen innerhalb des Expert Advisors in den Einstellungen verändern kann, ohne, dass das Programm neu Kompiliert werden muss. Setzen wir hier mal den erlaubten Spread auf vier. Außerdem benötigen wir eine Variable vom Typ string für unser Signal. Hier weisen wir aber noch keinen Wert zu, denn, den möchten wir noch ermitteln. Anschließend nutzen wir MqlRates, um uns ein Preis Array zu erstellen, in dem wir die Preisdaten aufbewahren und aufrufen können. Wenn man MqlRates einmal markiert und die F1 Taste drückt, dann lernen wir, dass dort die Informationen über Preis, Volumen und Spread gespeichert werden. Mittels ArraySetAsSeries sortieren wir jetzt unser Preis Array von der aktuellen Kerze an abwärts. Im Anschluss nutzen wir CopyRates, um unser Array mit Daten zu füllen. Und zwar für das aktuelle Währungspaar und die aktuell gewählte Zeiteinheit. Wir starten mit Kerze null und benötigen die Werte für drei Kerzen. Um an den aktuellen Spread zu kommen, nutzen wir SymbolInfoInteger für das aktuelle Währungspaar auf dem Chart. Der zweite Parameter hier, SYMBOL_SPREAD, wird in Großbuchstaben geschrieben. Und wir weisen das Ergebnis der Variable CurrentSpread für unseren aktuellen Spread Wert zu. Außerdem benötigen wir noch eine weitere Variable für unseren Spread Filter. Auch der werden wir gleich Text zuweisen. Denn, wenn unser aktueller Spread größer oder gleich dem maximal erlaubten Wert ist, dann weisen wir den Wert: Trading ist nicht erlaubt, unserem Spread Filter zu, denn dann ist uns der Spread zu hoch. Im anderen Fall, wenn der aktuelle Spread kleiner oder gleich dem erlaubten Wert ist, dann möchten wir Trading erlauben. Also weisen wir den Wert: Trading ist erlaubt, unserem Filter zu. Fehlen noch ein paar einfache Einstiegsregeln. Wenn der Schlusskurs von Kerze eins größer ist, als der Schlusskurs von Kerze zwei, dann möchten wir gerne kaufen. Also weisen wir den Begriff buy unserer Signal Variable zu. Im anderen Fall, wenn der Schlusskurs für Kerze eins kleiner ist, als der Schlusskurs für Kerze zwei, dann wäre das für uns ein Verkaufssignal. Und dann weisen wir den Wert sell unserer Signal Variable zu. Und bevor wir irgendeine Position eröffnen, prüfen wir immer erst, ob der Spread Filter den Wert hat: Trading ist erlaubt. Falls das zutrifft, prüfen wir, ob unser Signal den Wert buy hat, also ein Kaufsignal besteht und ob die Funktion OrdersTotal einen Rückgabewert von null liefert. Denn das würde bedeuten, wir haben keine geöffnete Position und ein Kaufsignal. Und dann nutzen wir OrderSend, um zehn Mikrolot zu kaufen. Im anderen Fall, wenn das Signal den Wert sell hat, dann haben wir ein Verkaufssignal. Und wenn dann ebenfalls keine geöffneten Positionen existieren, dann nutzen wir OrderSend, um zehn Mikrolot zu verkaufen. Zum Schluss erstellen wir uns noch eine Chart Ausgabe. Das übernimmt der Comment Befehl. Der wird uns den aktuellen Spread, den Wert für den maximalen Spread und den Spread Filter direkt auf dem Chart ausgeben. Das war es soweit.
...more
View all episodesView all episodes
Download on the App Store

MQL4 TUTORIAL DEUTSCHBy Raimund Bauer