MQL5 Tutorial - Automatisch traden mit Metatrader5

MQL5 Tutorial - Automatisch traden mit Metatrader5

By MQL5 Tutorial - Automatisch traden mit Metatrader5BusinessInvesting
Download on the App Store

MQL5 Tutorial - Automatisch traden mit Metatrader5 episodes

  • MQL5 Tutorial Deutsch – So traden Sie jeden Einstieg automatisch
    Das was hier gerade im Hintergrund tradet ist die deutsche Version des Golden Goose Frameworks. Das Golden Goose Framework ist eine Möglichkeit, einen beliebigen Einstieg zu automatisieren und tatsächlich zu handeln. Hier wird gerade ein Crossover von zwei exponentiellen, gleitenden Durchschnitten gehandelt und wir können das Ganze hier einmal beschleunigen. Und so sehen die Ergebnisse für diesen Einstieg aus. Das Framework ist vom Prinzip eine Sammlung von Funktionen die zusammengefasst worden sind, um das Trademanagement für beliebige herkömmliche Einstiege oder auch für eigenständig erstellte Einstiege nach der Eröffnung einer Position durchzuführen. Halten wir an dieser Stelle einmal den Test an. Wechseln wir einmal mit F4 oder durch diesen kleinen Button hier oben in den Metaeditor und schauen uns dieses Framework an. Dann sehen wir dass wir hier einen Import von diversen Funktionen haben die unterschiedliche Aufgaben wahrnehmen und für das Trademanagement benötigt werden. Hier unten ist der Import für die Einstiegslogik, hier handeln wir gerade den Crossover von zwei exponentiellen gleitenden Durchschnitten und das möchte ich jetzt mal verändern und den Mac D handeln. Also ändere ich hier einfach das importierte Modul und kompiliere das Ganze. Starten wir einen neuen Test und jetzt handeln wir hier den Mac D. Beschleuningen wir das auch einmal und blenden hier das Diagramm ein, dann sehen wir hier die Ergebnisse aus dem Handel mit dem Mac D Einstieg. Ok, ändern wir das Ganze doch nochmal. Diesmal hätte ich gern die Bollinger Bänder – Einstiegsmodul austauschen – kompilieren. So, und diesmal handeln wir hier die Bollinger Bänder, die lassen sich nicht ganz so schnell berechnen deswegen dauert die Darstellung des Handelsverlaufs hier auch ein bisschen länger als bei den anderen Beispielen, aber ich denke man kann erkennen wie es funktioniert. Ok, einen Einstieg machen wir noch. Diesmal möchte ich diesen Einstieg hier testen. Wir berechnen hier einen simplen gleitenden Durchschnitt auf Basis von 60 Minuten und schauen uns an ob die Trenddifferenz der letzten 10 Kerzen positiv oder negativ ist. Bei einem positiven Wert haben wir ein Kaufsignal und bei einem negativen Wert hätten wir ein Verkaufssignal. Also ändern wir hier einfach den Import für die Einstiegslogik, tragen unser neues Einstiegsmodul ein, denn in diesem Modul wird hier der Signalzustand geprüft. Der liefert buy oder sell für kaufen oder verkaufen zurück. Das Ergebnis übergeben wir dann an die Funktion CheckEntry in unserem Trading Framework in dem wir hier die Tradeverwaltung aufrufen. Kompilieren wir einfach nochmal und starten einen neuen Test. Und hier sehen wir jetzt die Ergebnisse für einen simple-moving Average und auch hier wird die Verwaltung vom Framework übernommen. Man kann den Test übrigens deutlich abkürzen indem man hier diese Visualisierungsoption entfernt und sich einfach den Testverlauf hier im Diagramm anzeigen lässt. Ich maximiere das hier mal, wir handeln einfach mal das erste Währungspaar. Starten wir unseren Test und wenn wir auf Diagramm klicken dann können wir erkennen wie in wenigen Sekunden der Handelsverlauf für ein komplettes Handelsjahr hier dargestellt wird und in 20 bis 30 Sekunden sollten wir unser Endergebnis erhalten. Und da ist es auch schon, auf der Reiterkarte Ergebnisse sehen wir dass wir einen Nettogewinn von 1244 Euro gemacht hätten, 91 Prozent unserer Sell-Positionen waren profitable und bei den Buy-Positionen waren es sogar 96 Prozent. Sie selbst können sich ein solches Golden Goose Framework erstellen. Das hier ist ein typisches Einstiegsmodul mit weniger als 25 Zeilen und es gibt noch einige Einstiege die man mit diesem Framework traden kann. Und die in diesem Video genutzen Einstiegsmodule liefere ich Ihnen direkt mit. Mit der integrierten Tradeverwaltung handeln Sie auf Ihrem Demokonto ein komplettes Handelsjahr in wenigen Sekunden durch. Es kann mehrere Positionen pro Währungspaar und bis zu 30 Charts gleichzei...
    7 min
  • MQL5 Tutorial Deutsch – Simple Schlusskurs-Berechnung in MQL5
    In diesem Video geht es um das Thema Schlusskurs. Hier oben sehen wir den Close-Preis der aktuellen Kerze 0 und dahinter steht ein Wert. Die Kerze 0 ist immer die aktuelle Kerze die hier auf dem Chart gerade ausgebildet wird und hier werden wir mit einem Wert von 1.00224 über den Schlusskurs von einer Kerze informiert. Und tatsächlich kam eine Frage von einem Youtube Abonnenten, denn in diesem Video hier habe ich den Schlusskurs der aktuellen Kerze in einem Einstiegssignal verwendet und Capra Bianca fragt hier: Wie kann es sein, dass Du den aktuellen Schlusskurs der derzeitigen Kerze programmieren kannst, denn eigentlich müsste ja, wenn die aktuelle Kerze geschlossen wird sofort eine neue Kerze auf dem Chart erscheinen. Wir als Menschen würden erwarten, dass wir den Schlusskurs erst sehen, wenn eine Kerze fertig ausgebildet ist und die neue Kerze auf dem Chart erscheint. Um dieses Rätsel zu lösen klicken wir hier oben auf diesen kleinen Button oder drücken die F4-Taste. Das ruft dann hier den Metaeditor auf und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage, Weiter. Wir vergeben hier den Namen Simpler Close Preis, klicken auf Weiter, Weiter, Fertigstellen und löschen alles oberhalb der Ontick-Funktion und die zwei Kommentarzeilen. Im ersten Schritt brauchen wir erst einmal ein Array. Das können wir mit dem Befehl MQLRates erstellen. Wenn man hier die F1-Taste drückt, dann sehen wir: Aha, MQLRates ist eine Struktur und diese Struktur bewahrt die Information über die Preise, Volumen und den Spread auf. Unser Array soll den Namen Preisinformation erhalten und diese zwei eckigen Klammern sagen aus, dass wir eine Sammlung, also ein Array von gleichartigen Informationsvariablen erstellen, die diese Preisinformation für uns aufnehmen. Bevor wir das Array mit Daten füllen, wird das Array noch von der aktuellen Kerze 0 abwärts sortiert. Das übernimmt für uns die Funktion ArraySetAsSeries. Für unser PriceInformation Array das wir hier oben erstellt haben. Im nächsten Schritt füllen wir mit dem Befehl CopyRates unser Array mit Daten. Und das tun wir für das aktuelle Chart und die auf dem Chart eingestellte Periode, von der aktuellen Kerze 0 für alle auf dem Chart befindlichen Kerzen. Den Wert bekommen wir mit diesem Ausdruck hier und das Ergebnis speichern wir in unserem Array PriceInformation, welches wir hier oben erstellt haben. Und jetzt können wir auf die Kerze 0 in unserem Preisinformation Array zugreifen. In diesem Fall holen wir uns hier den Close-Preis, also den Schlusskurs. Wenn man hier den Punkt eingibt, sieht man, dass man auch andere Werte wie den höchsten, den niedrigsten, den Eröffnungswert oder auch Informationen zum Volumen, zum Spread oder hier unten auch zur Zeit erhalten könnte. Uns interessiert aber der Close-Preis und den geben wir jetzt auch mit dem Comment-Befehl zusammen mit dem Text “Der Close Preis der aktuellen Kerze 0:” und dem von uns berechneten Wert auf unserem Chart aus. So, das war es, wir klicken hier oben auf Kompilieren oder drücken die F7-Taste. In unserem Fall hat das funktioniert und wir haben keine Fehler und keine Warnungen erhalten. Also klicken wir jetzt hier oben auf diesen kleinen Button oder drücken die F4-Taste um in den Metatrader zurückzukehren. Und im Metatrader klicken wir auf Ansicht, Strategietester, oder drücken die Strg und die R-Taste auf unserer Tastatur um hier diesen Strategietester aufzurufen und da wählen wir hier die Datei “SimplerClosePreis.ex5” aus, suchen uns ein Währungspaar aus, markieren hier die Visualisierungsoption und klicken auf Test starten. Und wie man sieht, wird hier regelmässig ein aktueller Close-Preis angezeigt, auch wenn die Kerze noch gar nicht fertig ausgebildet ist. Offensichtlich wird bei jedem Tick der aktuelle Kurs von MQL5 hier als Close-Preis ausgegeben. Hier wird beispielsweise der aktuelle Close mit 0,99404 ausgewiesen. Das stimmt auch mit dem überein, das wir angezeigt bekommen, wenn wir hier mit der Maus über diese letzte Kerze ...
    7 min
  • MQL5 Tutorial Deutsch – Wie man alle 3 IADX Werte berechnet
    Dieses Mal geht es um den Average Directional Movement Index, die Kurzform ist ADX, es handelt sich um einen Indikator mit drei unterschiedlichen Linien, somit gibt es auch hier drei Werte in der Ausgabe. In der ganz einfachen Version haben wir den ersten Wert, der hier angegeben wird, auch hier oben berechnet, wir werden aber in diesem Video auch die Werte für die anderen beiden Linien hier noch berechnen. Der ADX wurde von einem Herrn mit dem Namen Welles Wilder im Jahre 1978 entwickelt, um die Stärke eines Trends anzuzeigen,. Die beiden gestrichelte Linien im Indikator stehen für die DI-Plus und DI-Minus und der ADX zeigt den gleitenden Mittelwert an. Hier steht das 14 oder 18 Tage gewählt werden und wenn man hier auf Einfügen – Indikatoren – Tendenz – Average Directional Movement Index klickt, verwendet der Meta Trader auch als Standardwert 14 Kerzen, was man auch hier unten in Klammern auch sieht. Darum möchten wir jetzt auch einen Expert Advisor erstellen, der den ADX Indikator in MQL5 nutzen kann, um diese Werte hier oben auf dem Chart anzuzeigen. Dazu klicken wir hier oben auf diesen kleinen Button oder drücken die F4 Taste, das ruft dann hier den MetaEditor auf und hier wählen wir Datei – Neu – Expert Advisor aus Vorlage, klicken auf Weiter, vergeben hier den Namen, SimplerADX, klicken auf Weiter – Weiter – fertigstellen und löschen alles oberhalb der OnTick Funktion. Die beiden Kommentarzeilen hier brauchen wir ebenfalls nicht, wir erstellen uns hier erst einmal ein Array für die Preisdaten, es ist vom Typ double, damit es Nachkommastellen aufnehmen kann und bekommt den Namen meinPreisArray. Jetzt definieren wir uns die Eigenschaften für den ADX Expert Advisor. Wir nutzen die eingebaute Funktionen iADX für das derzeit auf dem Chart ausgewählte Währungspaar und die auf dem Chart eingestellte Zeiteinheit, um für 14 Kerzen den Wert laut unserer ADX Definition zu berechnen. In der Folge sortieren wir die Preise absteigend von der aktuellen Kerze, indem wir die Funktion ArraySetAsSeries nutzen und sie auf unser Preisarray anwenden und mit der Funktion CopyBuffer, füllen wir unser Preis Array aufgrund der ADX Definition die wir oben getroffen haben. Wir tun das jetzt für die erste Indikatorlinie, das sagt diese 0 hier aus, auch die aktuelle Kerze in unserem Preis Array hat den Index 0, wir wollen die Daten für 3 Kerzen kopieren, das sagt diese 3 hier raus und speichern das Resultat in unserem Preis Array. Jetzt können wir uns den Wert für die aktuelle Kerze holen,. Das ist deine double variable mit dem Namen ADXWERT wird und mit NormalizeDouble holen wir uns den Wert für die Kerze 0 aus unserem Preis Array und uns reichen hier zwei Nachkommastellen. Im letzten Schritt, geben wir natürlich den ADXWert den wir hier errechnet haben, mit der Comment Funktion und dem berechneten Wert direkt auf unserem Chart aus. Soweit so gut, bitte klicken Sie auf kompilieren oder drücken Sie die F7 Taste, das hat in diesem Fall ohne Fehler und Warnungen funktioniert, also können wir hier oben klicken oder die F4 Taste drücken, um in unseren MetaTrader zurückzukehren. Und im Metatrader klicken wir auf Ansicht – Strategietester oder drücken die Tastenkombination STRG+R, das zeigt dann hier unten den Strategietester an und hier wählen wir die Datei, SimplerADX.ex5 aus, aktivieren die Visualisierungs-Option und starten unseren Test. Und so sieht unser ADX Expert Advisor im laufenden Betrieb aus. Der Wert hier oben, 46.22, deckt sich mit dem Wert, der hier unten auch als erstes angezeigt wird und mit dem was der Meta Trader anzeigt wenn man die Maus über diese blaue Linie hält. Es gibt aber noch zwei weitere Werte, für diese beiden Linien und jetzt ist natürlich die Frage, wie kommt man da ran? Dazu wechseln wir wieder zurück in unseren MetaEditor und wir hatten hier für die Funktion CopyBuffer definiert, dass wir den Wert für die erste Indikator Linie benötigen, indem wir hier diese 0 angegeben haben und daraus machen wir jetzt einmal eine 1,...
    8 min
  • MQL5 Tutorial Deutsch – Fortgeschrittener EMA Crossover Trading Robot
    Sie haben vielleicht das Video zum exponentiellen Moving Average Einstieg gesehen und in der einfachen Version bekamen wir hier nur angezeigt, ob wir ein Kauf- oder ein Verkaufssignal haben sobald sich diese beiden Linien hier überkreuzen. Aber diese Version hier handelt tatsächlich und sie zeigt hier diverse Informationen an, kann mehrere Positionen gleichzeitig verwalten und in Echtzeit bis zu 22 Währungspaare handeln, indem Sie ein Framework benutzt. Das ist deutlich fortgeschrittener und lässt sich nicht innerhalb von fünf Minuten erklären, aber was ich erklären kann ist dieses Einstiegssignal. Wir haben hier ein Modul mit dem Namen Checkentry.mq5 und auch die darin enthaltene Funktion heißt Checkentry, hier erstellen wir uns zunächst eine Textvariable mit dem Namen entry, die wird später die Rückgabe Funktion übernehmen für unser Kauf- oder für unser Verkaufssignal, in dieser Zeile erstellen wir uns ein Array für Preisdaten. Wir brauchen ein Array 1 und ein Array 2, denn hier definieren wir uns zwei exponentielle gleitende Durchschnitte, der erste ist für 20 und der zweite für 50 Kerzen. Diese beiden Arrays werden hier von der aktuellen Kerze an abwärts sortiert und wir nutzen die Funktion CopyBuffer um den Moving Average 1 und den Moving Average 2 aufgrund der von uns hier oben getroffenen Definitionen mit Daten zu füllen. Danach berechnen wir für beide exponentiellen gleitenden Durchschnitte den Wert für die aktuelle Kerze. Soweit dürfte Ihnen das alles bekannt vorkommen, sofern Sie das erste Video zum exponentiellen Moving Average gesehen haben. Was neu ist, ist dass wir hier bei der Prüfung, ob für eine Überkreuzung haben, ein Eintrittssignal mit dem Textwert kaufen füllen, sofern der erste Moving Average für die aktuelle Kerze einen höheren Wert ausweisst als der zweite Moving Average für die aktuelle Kerze und das bei der letzten Kerze noch anders war. Im Gegenzug, wenn der Moving Average 1 jetzt einen geringeren Wert hat für die aktuelle Kerze als der Moving Average 2 und das für die letzte Kerze noch andersrum war, dann generieren wir hier ein Verkaufssignal. Und hier im letzten Schritt geben wir mit dem Befehl Return, das Signal für den Entry, also für unseren Einstieg, zurück an das Framework. Okay, was ist jetzt ein Framework? Vom Prinzip ist das eine mq5 Datei, die mittels der Importfunktion hier diverse Funktionen bereitstellt und alle diese Funktionen sind für die zukünftigen Einstiege aus dieser Serie gleich. Mit dieser Funktion CheckForTick werden einige Überprüfungen durchgeführt, die dazu führen, dass eine neue Position eröffnet wird, wenn die Positionsanzahl für unser Währungspaar nicht die maximale Positionsanzeige überschreitet, wir eine neue Kerze haben und alle diese Funktionen sind vordefiniert in einem Framework. Das ermöglicht uns, uns lediglich auf den gewünschten Einstieg zu konzentrieren, darum prüfen wir hier in der einzigen Funktion OnTick, ob unser Signalzustand erreicht ist und rufen danach die Tradeverwaltung im Framework auf, die hier den Namen CheckForTick hat, der übergeben wir dieses Signal. Falls Sie nicht wissen, was so ein Framework tut oder was ein Framework ist, dann besuchen Sie doch einfach meine Webseite, um zu lernen, wie man eines erstellt oder eines erhalten kann, folgen Sie bei Bedarf einfach den Anweisungen auf der Webseite. So, jetzt kompilieren wir das Framework. Okay, der Kompiliervorgang hat ohne Fehler und ohne Warnung funktioniert, darum drücken wir jetzt hier oben den kleinen Knopf oder die F4 Taste, um in den Meta Trader zurückzukehren. Im Metatrader selbst, klicken wir auf Ansicht – Strategietester oder drücken die Tastenkombination STRG+R, das ruft dann hier unten den Strategietester auf und hier suchen wir das GoldenGooseFramework 20170411 heraus und starten unseren Test. Hier sehen wir jetzt die beiden derzeit parallel verlaufenden Linien der beiden exponentiellen gleitenden Durchschnitte und sobald diese sich überkreuzen,
    7 min
  • MQL5 Tutorial Deutsch – Simpler Money Flow Index
    Diesmal widmen wir uns dem Money Flow Index. Diese blaue Linie hier, dieser Indikator hier, kann uns sagen, ob ein Wert überverkauft oder überkauft ist. Wikipedia sagt, dass der Money Flow Index bei einem Wert von 80 oder mehr zeigt, dass der Markt überkauft ist, wohingegen ein Wert von 20 oder weniger bedeutet, dass der Markt überverkauft ist. Im Klartext bedeutet das, wenn hier ein Wert von 83,12% steht, dann würden wir hier einen Sell Trade eröffnen, weil wir erwarten, dass der Preis wieder runtergeht. Und wenn diese blaue Linie sich unterhalb der unteren gestrichelten Linie, die hier bei 20% liegt, befindet, dann würden wir davon ausgehen, dass der Markt überverkauft ist, und würden einen Long Trade in die andere Richtung aufmachen. Gut, wie erstellen wir uns jetzt einen Expert Advisor, der den Money Flow Index Indikator in MQL5 nutzen kann? Um das zu tun, klicken wir im Metatrader hier oben auf den kleinen Knopf oder drücken die F4-Taste, das startet den sogenannten Meta-Editor. Und hier wählen wir Datei, Neu, Expert Advisor aus Vorlage, Weiter. Ich nenne das Programm an der Stelle „Simpler Money Flow Index“, wir klicken auf Weiter, Weiter, Fertigstellen. Und jetzt kann alles oberhalb dieser OnTick-Funktion hier gelöscht werden, und auch die Kommentarzeilen entfernen wir. Als erstes brauchen wir ein Array für unsere Preisdaten, das bekommt den Namen „PreisArray“ und ist vom Typ Double, damit es auch Nachkommastellen verarbeiten kann. Und danach erstellen wir eine MFIDefinition für unseren Money Flow Index, indem wir die in MQL5 integrierte Funktion IMFI nutzen, um für das aktuelle Chart und die auf diesem Chart aktuell eingestellte Zeiteinheit, den MFI Wert basierend auf 14 Kerzen aufgrund des Tick-Volumens zu berechnen. Denn wenn Sie im Metatrader auf Einfügen, Indikatoren, Volumen, Money Flow Index klicken, dann sehen Sie die 14 Kerzen und das Tick-Volumen auch in den Standardeinstellungen. Nach der Definition sortieren wir die Preise abwärts von der aktuellen Kerze, indem wir die MQL5-Funktion ArraySetAsSeries benutzen und auf unser PreisArray anwenden. Und mit CopyBuffer füllen wir unser PreisArray hier mit Daten, die laut der MFIDefinition, die wir hier oben getroffen haben, für die erste Linie unseres Indikators, das ist diese Linie Null, von der aktuellen Kerze, das ist Kerze Null, für drei Kerzen, das ist diese 3. Und das Resultat speichern wir in unserem PreisArray. Jetzt berechnen wir den Wert für unseren MFI Expert Advisor für die aktuelle Kerze, das ist Kerze Null in diesem PreisArray, wir nutzen NormalizeDouble und diese 2, da uns hier oben zwei Nachkommastellen reichen. Denn wenn wir prüfen, ob wir oberhalb von 80 oder unterhalb von 20 sind, dann brauchen wir nicht die fünf Nachkommastellen zu berechnen, die der MFI-Indikator in der Ursprungsversion anzeigt. Und das Ergebnis speichern wir in einer Variable mit dem Namen MFIWert. Jetzt fehlt uns natürlich noch je nach Wert die passende Ausgabe auf unserem Chart, denn wenn unser berechneter MFIWert größer ist als 80, dann möchten wir mit der MQL5-Funktion Comment den Text „ÜBERKAUFT“ und den berechneten MFI-Wert aus dieser Zeile ausgeben. Im andern Fall, wenn der MFI-Wert kleiner ist als 20, nutzen wir Comment, um den Text auszugeben „ÜBERVERKAUFT“, natürlich auch gefolgt von dem berechneten Wert. Und sollte unser MFI-Wert größer sein als 20 und kleiner als 80, das bedeutet, die blaue Linie befindet sich zwischen diesen beiden gestrichelten Linien hier, dann geben wir gar keinen Text aus. Denn wir haben kein Signal, und in dem Fall reicht uns zur Überprüfung der berechnete MFIWert. So, das war’s auch schon, wir klicken auf Kompilieren, oder drücken die F7-Taste, und der Compiler sollte ohne Fehler und ohne Warnungen mit unserem Quelltext zurechtkommen. Und falls das funktioniert hat, klicken Sie bitte hier oben auf diesen kleinen Button oder drücken die F4-Taste, um in den Metatrader zurückzukehren. Im Metatrader klicken wir auf Ansicht, Strategietester,
    8 min
  • MQL5 Tutorial Deutsch – Simpler Label Objekt Trading Robot
    Mql5 ist ja eine objektorientierte Sprache und in diesem Beispiel möchten wir einmal ein solches Objekt erstellen. Das hier oben ist ein Label oder in unserem Fall haben wir es Textobjekt genannt und es zeigt uns in einer bestimmten Schriftgröße und einer bestimmten Schriftart den aktuellen Ask Preis an. Solche Objekte zu erstellen ist gar nicht schwer. Neben den Textobjekten gibt es auch Linien, Pfeile oder sonstige Dinge, die man direkt auf dem Chart ausgeben kann. Wie aber lässt sich ein solches Objekt erstellen damit wir es in unseren Expert Advisor einsetzen können? Dazu klicken wir hier oben auf diesem kleinen Button oder drücken die F4 Taste. Das ruft dann hier den MetaEditor auf und im MetaEditor klicken wir auf Datei –Neu – Expert Advisor aus Vorlage – weiter. Hier vergeben wir den Namen SimplesObjektLabel, klicken auf weiter – weiter – fertig stellen und jetzt kann alles oberhalb der Ontick Funktion hier gelöscht werden. Auch die Kommentarzeilen werden entfernt und da wir ja etwas brauchen, dass unser Label anzeigen kann, holen wir uns im ersten Schritt den Ask Preis. Der Ask Preis ist der Preis, der gefordert wird wenn wir eine Position kaufen wollen. Wir holen uns den aktuellen Ask Preis über SymbolInfoDouble. Das liest für das aktuelle Währungspaar mit dieser Konstante SYMBOL ASK den aktuellen Preis aus und mit dieser Konstante hier – digits – bekommen wir die passende Anzahl von Nachkommastellen, denn wie man hier sieht, gibt es Währungspaare mit drei Nachkommastellen und hier gibt es welche mit 5 Nachkommastellen. Und jetzt setzen wir die Objekteigenschaften für unser Textobjekt ein. Wir erstellen also ein Objekt mit ObjectCreate für das aktuelle Währungspaar, es soll den Namen TextObjekt bekommen. Und mit OBJ_LABEL sagen wir Mql5, dass wir gerne einen Text bearbeiten möchten. Wenn wir an dieser Stelle F1 drücken dann sieht man, dass es auch massenweise andere Objekttypen gibt. Das hier beispielsweise wäre ein Pfeil nach oben, das hier ist unser Label und das hier wäre beispielsweise ein Button und die Arrow Funktion hier kann einen Pfeil nach oben oder unten erzeugen. Wir benötigen kein separates Fenster, also nehmen wir für diesen Parameter eine 0, wir sind auch nicht zeitbezogen und unser Objekt muss auch nicht an einer bestimmten Stelle für einen Preis angezeigt werden. Also stellen wir auch das auf Null und danach wählen wir uns eine entsprechende Schriftart aus. Das geht mit der Funktion ObjectSetString, für das aktuelle Währungspaar und unser TextObjekt und mit OBJPROP_FONT setzen wir die Schriftart auf Arial. Danach setzen wir die Schriftgröße ein mit der Funktion ObjectSetInteger für das aktuelle Währungspaar und für unser TextObjekt nutzen wir die konstante OBJPROP_FONTSIZE und entscheiden uns für eine Schriftgröße von 24. Damit unser Label was anzeigen kann, setzen wir jetzt noch den Text ein. Das geht wieder mit ObjectSetString für das aktuelle Währungspaar und für unser TextObjekt nutzen wir die konstante OBJPROP_TEXT und geben hier den Text Ask Preis und den Ask Wert aus den wir hier oben in der Variable berechnet haben. Jetzt bestimmen wir noch die Position, die Distanz vom linken Rand soll 5 sein, das setzen wir mit ObjectSetInteger für das aktuelle Währungspaar und unser TextObjekt mit OBJPROP_XDISTANCE auf den Wert 5. Und die Distanz von oben setzen wir genauso, nur in diesem Fall nutzen wir OBJPROP_YDISTANCE für die y-Achse und hier verwenden wir mal den Wert 10. So, das war‘s auch schon. Jetzt kompilieren wir unseren Expert Advisor indem wir hier oben auf den kleinen Button oder auf die F7 Taste drücken und der Compiler warnt uns, dass wir hier Texte in Zahlen verwandelt haben und dass das zu einem Datenverlust führen könnte. Aber für dieses einfache Beispiel hier soll uns das genügen. Klicken wir also hier oben auf den Button oder drücken die F4 Taste um in den MetaTrader zurückzukehren. Im Metatrader selbst klicken wir auf Ansicht – Strategietester oder drücken die Tastenkombination Steu...
    7 min
  • MQL5 Tutorial Deutsch – Simpler iTrix Trading Robot
    Das was wir hier auf diesem Bildschirm sehen ist der sogenannte Trix Indicator. Der Trix Indicator zeigt uns an, ob wir long oder short sind. In dem Moment wo diese Linie hier überschnitten wird, ist das ein Einstiegssignal nach oben und wenn sich die Linie hier unterhalb der mittleren gestrichelten Linie befindet, dann ist das ein Zeichen für einen Short Trend. Erfunden wurde der Trix Indikator in den 80er Jahren von einem Mann mit dem Namen Jack Hutson. Genutzt wird ein dreifacher geglätteter, exponentieller moving average und eine steigende oder fallende Linie ist ein Zeichen für einen Uptrend bzw. einen Downtrend. Tatsächlich sieht das an der Stelle hier ganz einleuchtend aus und wir möchten jetzt einen Expert Advisor erstellen der den Wert vom Trix hier berechnet und uns die entsprechende Richtung hier oben auf dem Chart anzeigen kann. Dazu klicken wir im Metatrader hier auf diesen kleinen Button oder wir drücken die F4 Taste. Das ruft dann den Meta Editor auf und hier wählen wir Datei – Neu – Expert Advisor aus Vorlage, klicken auf Weiter, vergeben hier den Namen SimplerTrixRobot, klicken auf weiter – weiter – fertigstellen. Jetzt können wir zunächst einmal alles löschen was sich oberhalb dieser OnTick Funktion befindet und die beiden Kommentarzeilen entfernen. Zuerst erstellen wir uns ein Preis Array für unsere Preisdaten, das ist vom Typ double und kriegt den Namen PreisArray. Danach erstellen wir uns die Definition für die Eigenschaften des Expert Advisors indem wir die eingebaute iTrix Funktion von Mql5 nutzen, um für das aktuelle Chart und die auf dem Chart aktuell ausgewählte Periode, den iTrix Wert für 14 Kerzen anhand der Schlusskurse zu berechnen. Denn wenn wir im Metatrader auf einfügen – Indikatoren – Oszillatoren – Triple exponential average gehen, dann sehen wir auch hier die 14 Kerzen und die Schlusskurse als Basis für den Trix Indikator. So, jetzt holen wir uns mit der Funktion CopyBuffer, laut unserer iTrixDefinition die wir hier oben getroffen haben, für die erste und einzige Linie unseres Indikators von der aktuellen Kerze 0 für 3 Kerzen die benötigten Daten und speichern Sie in unserem PreisArray. Danach können wir den iTrixWert für die aktuelle Kerze berechnen. Ich nutze hier eine float Variable, die nimmt etwas weniger Arbeitsspeicher in Anspruch, als eine double variable und ist mit ihrer Genauigkeit für unsere Zwecke ausreichend. Sie trägt den Namen iTrixWert und soll aus unserem PreisArray den entsprechenden Wert aus der aktuellen Kerze bekommen. Fehlt uns noch die Chart Ausgabe und je nachdem in welche Richtung es geht, möchten wir zwei unterschiedliche Dinge ausgeben. Entweder unser berechneter iTrixWert ist größer als 0, dann nutzen wir die comment Funktion von Mql5 und geben auf unserem Chart den Text: iTrix IST LONG, zusammen mit dem von uns berechneten iTrixWert Wert aus. Und den umgekehrten Fall, der iTrixWert ist unter 0, dann nutzen wir auch den Comment Befehl aber diesmal geben wir den Text aus: iTrix IST SHORT, ebenfalls gefolgt von dem Wert den wir hier oben in unserer Variable berechnet haben. So, das war’s auch schon. Jetzt können Sie hier oben auf Kompilieren klicken oder die F7 Taste drücken. Das sollte funktionieren, allerdings bekommen wir hier eine Warnung angezeigt. Der MetaEditor warnt uns hier vor einem möglichen Genauigkeitsverlust weil wir hier eine float Variable benutzt haben. Aber für dieses einfache Beispiel soll das ausreichen. Wenn sonst alles geklappt hat, klicken Sie bitte hier oben auf den kleinen Button oder drücken die F4 Taste um in den MetaTrader zurückzukehren. Im MetaTrader selbst rufen wir über Ansicht – Strategietester oder mittels der Tastenkombination Steuerung+R dieses Strategietester Panel hier unten auf. Hier wählen wir die passende Datei aus, klicken hier auf die Option für die Visualisierung und starten unseren Test. Und so sieht jetzt unser Expert Advisor bei der Arbeit aus. Wie man sehen kann, gab es hier ein Schnittpunkt durch die Mittellinie,
    7 min
  • MQL5 Tutorial Deutsch – Simpler Force Index Robot
    Das was hier gerade läuft, ist der sogenannte Simple Force Index Indikator, er wird berechnet auf die letzten 13 Kerzen und diese Indikatorlinie hier zeigt uns an, ob wir gerade einen Abwärtstrend haben. Das ist der Fall, wenn es hier runter geht und diese Linie sich unterhalb der gestrichelten Indikatorlinie hier befindet. Befindet sich die Indikatorlinie für einen längeren Zeitraum oberhalb der gestrichelten Linie, dann haben wir allerdings einen stabilen Aufwärtstrend. Und wenn die gestrichelte Linie hier überkreuzt wird, dann könnte das darauf hindeuten, dass unser Aufwärtstrend jetzt dem Ende entgegen sieht. Um jetzt einen Expert Advisor für den Force Index zu erstellen, klicken Sie hier oben auf diesen kleinen Button oder drücken die F4 Taste. Dadurch wird hier der MetaEditor gestartet und dort klicken wir auf Datei, neu, Expert Advisor aus Vorlage. Jetzt klicken wir auch weiter, vergeben hier den Namen SimplerForceIndexRobot, klicken auf Weiter, weiter , fertig stellen und alles oberhalb der OnTick Funktion können wir löschen, genau wie die beiden Kommentarzeilen hier. Jetzt erstellen wir uns ein Array, um die Preisdaten aufzunehmen, das ist vom Typ double und bekommt den Namen PreisArray. Danach definieren wir, wie unser Force Index aussehen soll, dazu nutzen wir die Funktion iForce, die ist in MQL5 eingebaut und übernimmt ein paar Parameter. Der erste Parameter hier ist das Währungspaar, dass Sie aktuell auf dem Chart ausgewählt haben, dieser Parameter steht für die auf dem Chart eingestellte Zeiteinheit wie beispielsweise das Stunden- oder das Minuten Chart. Die Berechnung wird durchgeführt für 13 Kerzen, das sieht man auch hier in den Eigenschaften. Wir möchten gerne den Mode SMA benutzen für simple moving average (SMA) und unser Ergebnis soll auf Basis der Tickdaten berechnet werden. Wenn Sie auf Einfügen, Indikatoren, Oszillatoren, Force Index klicken, dann sehen wir hier die gleichen Werte in den Eigenschaften, 13 Kerzen, simple moving average, Tickdaten und so sieht der Indikator auf unserem Chart aus. Im nächsten Schritt geht es jetzt darum, die Preise abwärts von der aktuellen Kerze zu sortieren. Das machen wir mit der Funktion ArraySetAsSeries für unser Preis Array und dann füllen wir mit der MQL5 Funktion CopyBuffer unser Preis Array für die einzige im Indikator vorhandene Linie von der Kerze 0 für 3 Kerzen und diese ganzen Preisinformationen speichern wir in unserem Preis Array. Fehlt natürlich noch die Berechnung für den aktuellen Wert aus der aktuellen Kerze, das ist hier die Kerze 0 aus unserem Preis Array und mit normalize double holen wir uns die Zahl mit 6 Nachkommastellen und packen sie in die Variable ForceIndexWert. Damit wir etwas sehen brauchen wir noch einen Chartausgabe, dazu nutzen wir den Comment Befehl und wenn unser Force Index Wert über der 0 Linie liegt, das ist diese Linie hier, hier sieht man auch die 0, dann geben wir mit dem Comment Befehl den Text Trend aufwärts auf unserem Chart aus. Andernfalls – der Force Index Wert liegt unter der Nulllinie, dann nutzen wir ebenfalls Comment aber dann geben wir den Text Trend abwärts auf unserem Chart aus. So, fertig ist der Expert Advisor, jetzt klicken wir hier oben auf kompilieren und wenn das ohne Fehler und Warnungen funktioniert, auf diesen kleinen Button hier oder die F4 Taste um zurückzukehren in unseren MetaTrader. Im Metatrader selbst klicken Sie auf Ansicht, Strategietester, alternativ können Sie auch die Tastenkombination Steuerung+R drücken, das ruft dann hier unten den Strategietester-Bereich auf und hier wählen wir die Datei SimplerForceIndexRobot.ex5 aus. Bitte markieren Sie die Option für die Visualisierung und klicken Sie auf Test starten. Und so sieht unser Expert Advisor bei der Arbeit aus. Befindet er sich über einen längeren Zeitraum unterhalb der gestrichelten Linie, haben wir einen stabilen Abwärtstrend. Im umgekehrten Fall, wenn sich der Indikator längere Zeit über der gestrichelten Linie bewegt,
    6 min
  • MQL5 Tutorial Deutsch – Simpler Adaptive Moving Average Robot
    Diesmal sehen wir uns den Adaptive Moving Average Indikator an, es handelt sich hierbei um einen gleitenden Durchschnitt, aber im Gegensatz zu einem einfachen gleitenden Durchschnitt soll der Adaptive Moving Average weniger Fehlsignale produzieren. Erstellt wurde dieser Indikator von einem Herrn mit dem Namen Perry J. Kaufman und man kann diesen Indikator in den Metatrader einfügen, wenn man auf einfügen, Indikatoren, Tendenz, Adaptive Moving Average klickt. Das hier sind die Standardwerte des Adaptive Moving Average, er wird berechnet auf neun Kerzen ohne Verschiebung nach rechts oder links, mit einem schnellen EMA, also einem exponential moving average der auf zwei Kerzen berechnet wird und einem langsamen EMA der auf 30 Kerzen berechnet wird. Alle Ergebnisse werden für den Schlusskurs, also den Close Preis berechnet. Die grundsätzliche Idee ist jetzt, dass wenn der Kurs oberhalb des moving averages verläuft, man einen Long Trade eröffnen würde, weil man vermutet, dass es hoch geht und in dem Moment wo der Kurs wieder unterhalb des moving averages verläuft, würde man einen Short trade eröffnen, denn dann geht es vielleicht eine Zeit nach unten. Wie kann man jetzt für diesen Indikator hier einen entsprechenden Expert Advisor in MQL5 programmieren? Nun, wenn man mit der Maus auf das Ende dieser Linie geht, dann sieht man dass hier ein Wert von 1.546256 ausgewiesen wird. Das stimmt überein mit dem Wert den wir hier haben und wir könnten jetzt prüfen, ob der aktuelle Kurs dieser Kerze oberhalb oder unterhalb dieses Wertes verläuft. Um das zu tun klicken wir hier auf diesen kleinen Button im Metatrader oder drücken die F4 Taste, das ruft hier diesen MetaEditor auf und hier werden wir Datei, neu, Expert Advisor aus Vorlage, klicken auf Weiter und vergeben hier den Namen SimplerAdaptiveMovingAverage, jetzt klicken wir wieder auf weiter, weiter, fertigstellen und löschen alles oberhalb der OnTick Funktion und die beiden Kommentarzeilen. Danach erstellen wir ein Array unserer Preisdaten, ein Array kann man sich vorstellen als eine Sammlung von gleichartigen Variablen, dieses Array soll den Namen PreisArray bekommen und ist vom Variablentyp double damit es Nachkommastellen verarbeiten kann. Mit der eingebauten MQL5 Funktion iAMA möchten wir jetzt die Adaptive moving average Definition für das aktuelle auf dem Chart dargestellte Währungspaar und die dort ausgewählte Zeiteinheit für 9 Kerzen mit einem langsamen exponential moving average für zwei Kerzen und einen schnellen exponential moving average für 30 Kerzen ohne eine Verschiebung auf die Schlusskurse berechnen. Wir erinnern uns, das ist genau das was hier als Standardwerte in unserem adaptive moving average Indikator vom MetaTrader 5 ebenfalls ausgewählt wurde und nachdem wir unsere Definition erstellt haben, nutzen wir die eingebaute ArraySetAsSeries Funktion von MQL5 um die Preisdaten abwärts von der aktuellen Kerze für unser Preis Array zu sortieren. Mit CopyBuffer füllen wir jetzt unser PreisArray, welches wir hier oben erstellt haben nach unserer Definition aus dieser Zeile von der aktuellen Kerze für unseren definierten Expert Advisor der nur eine Linie hat. Das ist diese 0, von der aktuellen Kerze, das ist hier die Kerze 0, für drei Kerzen, dafür steht diese Drei und Speichern das Resultat in unserem PreisArray. So, nachdem unsere Definitionen erledigt sind, können wir uns aus unserem PreisArray den Wert für die Kerze 0 holen. Mit NormalizeDouble begrenzen wir das ganze auf 6 Nachkommastellen und packen den Wert in die Variable AdaptiveMovingAverageValue . Und als letzte Aktion brauchen wir noch eine Chart Ausgabe, dass erledigen wir mit der Comment Funktion, die wird uns den Text AMA Wert für AdaptiveMovingAverageWert und das Ergebnis unserer Variable ausgeben die wir in dieser Zeile hier berechnet haben. So fertig, klicken wir hier oben auf kompilieren oder drücken die F7 Taste, dann sollte unser Expert Advisor ohne Fehler und ohne Warnungen kompiliert werden.
    8 min

About MQL5 Tutorial - Automatisch traden mit Metatrader5

From the publisher's feed

Metatrader5 MQL5 Expert Advisor Tutorial