Diesmal schauen wir uns den Chaikin-Indikator an. Der Chaikin-Indikator wird hier unten in einem separaten Fenster unterhalb der Kerzen dargestellt. Es handelt sich um einen Oszillator, das bedeutet, diese Signal-Linie hier wandert ständig zwischen zwei Extremen auf und ab. Bei einer Überkreuzung wird hier ein entsprechendes Signal generiert. Und wir wollen uns in diesem Video einmal anschauen, wie man ein Einstiegsmodul für den Chaikin-Oszillator in MQL5 programmieren kann.
Um das zu tun, klicken Sie bitte im MetaTrader 5 hier oben auf diesen kleinen Button, oder drücken die F4-Taste. Das ruft dann hier den Meta-Editor auf. In meinem Fall habe ich hier das Forex Trading Framework vom Oktober 2017 geladen; das nutze ich als Hauptmodul. Ein Framework ist grundsätzlich so etwas wie eine Sammlung von kombinierten Funktionen, die in der Lage sind, die geöffneten Positionen zu verwalten. Man kann damit so ziemlich jeden Einstieg handeln. In unserem Fall wird das hier der „CheckEntry_Chaikin“ sein. Und diesen Einstieg möchten wir uns jetzt als Modul erstellen.
Um das zu tun, klicken wir hier auf „Datei/ Neu/ Expert Advisor (Vorlage)/ Weiter“. Ich vergebe hier einmal den Namen „CheckEntry_Chaikin“ , klicke auf „Weiter/ Weiter/ Fertigstellen“. Und jetzt können Sie alles oberhalb dieser OnTick-Funktion hier entfernen; das gilt auch für die beiden Kommentarzeilen. Und in der OnTick-Funktion erstellen wir uns zunächst einmal eine String-Variable für das Signal. Die erhält auch den Namen „Signal“, und wir weisen an dieser Stelle zunächst einmal keinen Wert zu, denn den möchten wir noch ermitteln. Außerdem benötigen wir ein Array für die Preisdaten; das wird den Namen „mein PreisArray“ bekommen und ist vom Typ Double, damit es auch Fließkomma-Zahlen verarbeiten kann.
Jetzt kommt die eigentliche Definition des Chaikin Expert Advisors. Mit der eingebauten Funktion „iChaikin“ können wir den Wert für unseren Oszillator ermitteln. Dazu nutzen wir das aktuell ausgewählte Chart und die auf diesem Chart eingestellte Zeiteinheit. Diese Parameter 3 und 10 finden wir auch hier in den Eigenschaften des Oszillators. Und wenn Sie im MetaTrader auf „Einfügen/ Indikatoren/ Oszillatoren/ Chaikin Oscillator“ klicken, dann sehen Sie hier: der Schnelle Moving Average hat einen Wert von 3, der Langsame Moving Average hat einen Wert von 10. Das entspricht hier unseren beiden Parametern. Außerdem nutzen wir das Volumen hier auf Tick-Basis und nutzen einen Exponentiellen Moving Average für die Berechnung; das sind dann die beiden letzten Parameter. Nachdem wir das gemacht haben, nutzen wir „ArraySetAsSeries“, um unser PreisArray, welches wir hier oben erstellt haben, von der aktuellen Kerze an abwärts zu sortieren. Und danach können wir mit CopyBuffer laut unserer ChaikinDefinition von hier oben für den einzigen Buffer und die erste Signal-Linie -das ist in MQL5 der Buffer 0- von der aktuellen Kerze 0 für 3 Kerzen -darum diese 3 hier- die Daten in unserem PreisArray speichern.
Jetzt ermitteln wir den Wert der aktuellen Kerze, indem wir auf Kerze 0 aus unserem PreisArray zugreifen. Diesen Wert weisen wir der Variable „ChaikinWert“ zu. Um Überkreuzungen festzustellen, ist es wichtig, den Wert der Kerze davor zu ermitteln. Diesen Wert erhalten wir aus Kerze 1 von unserem PreisArray, und das Ergebnis wird der Variable „LetzterChaikinWert“ zugewiesen. Bei einer Überkreuzung der Mittel-Linie von unten möchten wir kaufen. Wenn also der aktuelle ChaikinWert größer ist, als 0, und zusätzlich der letzte ChaikinWert kleiner war, als 0, dann weisen wir den Wert „Kaufen“ unserer Signal-Variable zu. Im umgekehrten Fall, bei einer Überkreuzung der Mittel-Linie von oben, wenn also der aktuelle ChaikinWert kleiner ist, als 0, und wenn der letzte ChaikinWert noch größer war, als 0, dann setzen wir unser Signal auf den Wert „Verkaufen“.
im letzten Schritt nutzen wir den Befehl Return, um unser Signal an das Hauptmodul zurückzugeben. In meinem Fall ist das hier das Forex Trading Framework. Sie können auch Ihr eigenes Framework benutzen. Das Einzige, was Sie dann machen müssen, ist, entsprechende Funktionen zu erstellen, die das Signal ermitteln und es an eine Funktion übergeben, die bei jedem Tick darauf reagiert und entsprechende Kauf- oder Verkaufs-Ordern verschicken kann. Für mich reicht es hier, das neu erstellte Einstiegsmodul zu speichern und das Forex Trading Framework einmal mit der F7-Taste zu kompilieren.
Oh, hier gibt es noch einen Fehler. Die OnTick-Funktion habe ich bereits im Hauptmodul. Dafür fehlt die CheckEntry-Funktion. Also benennen wir unsere Funktion hier in „string CheckEntry“ um, da sie ja auch einen String-Wert über Return zurückliefert. Also, noch einmal speichern und das Hauptmodul mit diesem Button hier kompilieren. Diesmal hat das ohne Fehler funktioniert. Also kann ich jetzt auf diesen Button hier drücken, oder die F4-Taste betätigen, um in den MetaTrader zurückzukehren. Und im MetaTrader klicken wir auf „Ansicht/ Strategietester“; hier wähle ich jetzt das Forex Trading Framework aus dem Oktober 2017 aus, markiere die Visualisierung und starte meinen Test. Und wie Sie sehen, werden sofort automatisch Trades eröffnet. Man kann das Ganze hier jetzt massiv beschleunigen.
Und in diesem kurzen Video haben Sie gelernt, wie Sie ein Einstiegsmodul für den Chaikin-Oszillator für Ihren eigenen Expert Advisor oder für das Forex Trading Framework erstellen können. Und Sie haben das selbst programmiert mit diesen paar Zeilen hier in MQL5.