MQL5 Tutorial – Fortgeschrittener Relative Vigor Index

In diesem Video schauen wir uns einmal den RVI Indikator an. Es handelt sich hier unten um diese 2 Linien, die immer wieder die gestrichelte Linie überkreuzen. Das ist der Relative Vigor Index, und der erzeugt hier am laufenden Bank Signale. Wie man sehen kann, wechseln die zwei Signal-Linien immer wieder die Seiten. Es handelt hier sich um einen sogenannten Oszillator. Und wir möchten uns in diesem Video einmal anschauen, wie man einen automatischen Expert-Advisor in MQL5 programmieren kann, der in der Lage ist, Kaufen- und Verkaufen-Signale auf dem Chart auszugeben und als Einstiegsmodul für unser Forex Trading Framework funktioniert. Natürlich können Sie auch Ihr eigenes System als Hauptmodul benutzen, oder sich das Forex Trading Framework auf der Webseite “forextradingframework.de” herunterladen. Uns geht es aber vornehmlich um die Programmierung für den Einstieg.
Und um das zu tun, klicken Sie bitte auf diesen kleinen Button hier im MetaTrader, oder drücken die F4-Taste. Das bringt dann hier den Meta-Editor zum Vorschein. Ich nutze hier meine Version vom Forex Trading Framework aus Oktober 2017. Das Framework ist grundsätzlich eine Sammlung aus Funktionen, die in der Lage sind, unterschiedliche Aufgaben durchzuführen. Diese Funktion hier beispielsweise legt die Positionsgröße fest. Mein Framework ist so gebaut, dass man damit unterschiedlichste Einstiege handeln kann. Und wir möchten jetzt den entsprechenden CheckEntry-Einstieg für den Relative Vigor Index erstellen.
Dazu klicken wir hier oben auf “Datei/ Neu/ Expert Advisor (Vorlage)/ Weiter”. Hier oben muss ich den Pfad zu meinem Framework angeben, und als Dateinamen wähle ich “CheckEntry_RVI” aus, denn das ist auch, was wir hier unten importieren. Danach klicke ich auf “Weiter/ Weiter/ Fertigstellen”. Und jetzt kann alles oberhalb dieser OnTick-Funktion hier gelöscht werden. Das gilt auch für die beiden Kommentare. Zunächst einmal müssen wir hier unsere Funktion umbenennen in “CheckEntry”, denn das ist auch das, was wir hier aufrufen werden. Der Rückgabewert ist vom Typ String. Entsprechend erstellen wir uns zunächst eine leere String-Variable für unser Signal. Die bekommt auch den Namen “Signal”, aber wir weisen noch keinen Wert zu, denn der wird gleich berechnet. Diesmal brauchen wir direkt zwei Arrays. Eins davon trägt den Namen “Array0”, und das andere nennen wir “Array1”. Denn wenn man sich hier diese beiden Signallinien einmal ansieht und mit der Maus darüber kurz anhält, dann sieht man, dass die auch unterschiedliche Werte haben, und die möchten wir in diesen beiden Arrays hier abfragen und speichern. Mit der eingebauten MQL5-Funktion “iRVI” können wir uns den entsprechenden Expert Advisor hier definieren. Als Parameter übergeben wir das aktuelle Chart und die auf diesem Chart ausgewählte Zeiteinheit. Und diese 10 hier findet man auch, wenn man mit der rechten Maustaste einmal auf die Eigenschaften des Relative Vigor Index klickt. Es handelt sich hierbei um die Periode, die zur Berechnung des Indikators herangezogen wird. Jetzt nutzen wir ArraySetAsSeries, um unsere beiden PreisArrays von der aktuellen Kerze an abwärts zu sortieren. Mit der Funktion CopyBuffer füllen wir jetzt unsere PreisArrays nach der Definition, die wir hier oben erstellt haben. Für die erste Linie mit dem Index 0, bzw. für die zweite Linie mit dem Index 1, von der aktuellen Kerze 0 für 3 Kerzen und speichern unser Ergebnis im jeweiligen Array. Um den jeweiligen Wert für die aktuelle Kerze der jeweiligen Linie zu berechnen, greifen wir einfach auf Kerze 0 im jeweiligen Array zu, und mit “NormalizeDouble” und dieser 3 hier lässt sich gewährleisten, dass wir drei Nachkommastellen bekommen. Denn das ist auch das, was wir sehen, wenn wir uns die Werte für die beiden Linien hier anschauen. Und wenn Sie NormalizeDouble einmal markieren und die F1-Taste drücken, dann sieht man, dass diese Funktion zum Runden der Zahl für die angegebene Genauigkeit genutzt wird. Und das hier ist die Anzahl der Dezimalzeichen, und das sind in unserem Fall drei.
Gut, jetzt haben wir alles zusammen und können an die Signalgenerierung gehen. Wir möchten gerne kaufen, wenn der RVIValue0 kleiner ist, als der RVIValue1, und wenn unsere beiden Werte unterhalb von 0, also unterhalb dieser gestrichelten Null-Linie hier sind. Wenn das der Fall ist, dann weisen wir unserer Signal-Variable den Wert “Kaufen” zu. Im umgekehrten Fall möchten wir gerne verkaufen, wenn der RVIValue0 größer ist, als der RVIValue 1, und wenn sich die beiden Werte oberhalb von 0 befinden. Das wäre hier der Fall, und in dem Fall bekommt unsere Signal-Variable den Wert “Verkaufen” zugewiesen. Zum Schluss nutzen wir die Return-Funktion und geben das Signal an unser Hauptmodul zurück. In meinem Fall ist das das Forex Trading Framework in der Demoversion vom 10. Oktober 2017.
Jetzt müssten wir das Einstiegsmodul noch speichern. Dazu klicken wir auf “Ansicht/ Werkzeugleiste” und nutzen hier oben dieses Diskettensymbol oder die Tastenkombination Strg+S. Im Hauptmenü wird mit dem Befehl Include “CheckEntry_RVI.mq5”, unser neues Modul, hier importiert. Und jetzt können wir hier oben auf Kompilieren klicken, oder die F7-Taste drücken. In meinem Fall gibt es hier noch einen Klammerfehler; ich habe hier eine Klammer zu viel gemacht. Nochmal speichern, Hauptmodul, Kompilieren, und jetzt geht’s auch. Und darum kann ich jetzt hier klicken oder F4 drücken, um in den MetaTrader zurückzukehren. Und im MetaTrader klicken wir auf “Ansicht/ Strategietester”, oder drücken die Tastenkombination Strg+R. Das ruft dann hier den Strategietester auf. Und wir wählen als Expertenprogramm das Hauptmodul aus, in meinem Fall das Framework, markieren die Option für die Visualisierung und starten unseren Test.
Und so sieht der Expert Advisor bei der Arbeit aus. Man kann hier auch noch das Diagramm einblenden. Ich beschleunige das mal; wie man sieht funktioniert das Ganze. Und Sie haben in diesem kurzen Video gelernt, wie Sie ein Einstiegsmodul für den Relative Vigor Index programmieren können. Und Sie haben das selbst getan mit diesen paar Zeilen hier in MQL5.

Download “MQL5 TUTORIAL DEUTSCH - FORTGESCHRITTENER RVI EXPERT ADVISOR” FortgeschrittenerRVI.txt – 21-mal heruntergeladen – 1 KB