MQL4 TUTORIAL GRUNDLAGEN – 107 SIMPLE ARRAY REFERENZ

video
play-sharp-fill

 

In diesem Video wollen wir uns einmal anschauen, wie man ein komplettes Array als Parameter an eine andere Funktion übergeben kann. Tatsächlich ist das auch mit MQL4 möglich und das ist eine der wenigen Sachen, die in MQL4 genau so funktionieren, wie in MQL5. Also lassen Sie uns einmal schauen, wie man so etwas mit MQL4 umsetzen kann. Um das zu tun klicken Sie 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 SimpleArrayReferenz, klicke auf weiter, weiter und fertigstellen. Jetzt kann alles oberhalb dieser OnTick-Funktion hier gelöscht werden und wir entfernen auch die zwei Kommentarzeilen. Wir starten, in dem wir uns hier ein kleines Array erstellen. Vom Typ integer, mit ganzen Zahlen. Das füllen wir jetzt mit einigen Beispielwerten. Wie gesagt, das ist nur ein einfaches Beispiel und es macht schon Sinn sich solche Programme hin und wieder mal selbst vorzunehmen, um herauszufinden, wie die Dinge so funktionieren. Ein Array fängt immer mit 0 an, also Index 0 entspricht dem ersten Wert. In diesem Fall 8. Man kann sich das so ähnlich vorstellen, wie Schubladen in einem Apothekerschrank oder wie Kisten, die bestimmte Werte aufnehmen können. In unserem Fall sind das ganzzahlige Werte. Mit denen möchten wir jetzt eine einfache Berechnung durchführen und wir möchten das tun, indem wir eine Funktion mit dem Namen AddValues aufrufen, und unser Array möchten wir als Parameter übergeben. Das soll uns dann ein Resultat vom Typ integer zurückliefern und damit wir auf dem Chart auch etwas sehen, nutzen wir hier den Comment-Befehl. Der soll uns hier einen Text ausgeben. Den können wir mal auf Deutsch schreiben. Im Anschluss an den Text hätten wir gerne das berechnete Resultat aus unserer Unterfunktion. Die existiert aber wie gesagt noch nicht, also müssen wir die jetzt erstellen. Und hier arbeiten wir mit einem kleinen Trick. Die Funktion hat den Namen AddValues, soll einen integer-Wert an unsere Hauptfunktion zurückliefern und wir nutzen hier int für integer, gefolgt von diesem kleinen kaufmännischen Und-Symbol. Dieses Symbol sorgt dafür, dass wir das Array komplett als Referenz übergeben können. Und das sollte uns ermöglichen, innerhalb der Funktion jetzt ein Resultat zu ermitteln, in dem wir die Werte für Index 0, Index 1 und Index 2 addieren. Zum Schluss nutzen wir hier den Return-Befehl, um unser ermitteltes Resultat an das Hauptmodul zurückzugeben. Das wars auch schon so weit mit dem Code. Wenn Ihnen das hier zu schnell ging oder wenn Sie keine Ahnung haben, was alle diese Codezeilen hier bewirken sollen, dann möchten Sie sich vielleicht zunächst nochmal ein anderes Video aus dieser Grundlageserie anschauen. Auf unsere Webseite finden Sie jetzt einen Link zu Grundlagen Videokursen, wo auch die Quellcodes enthalten sind. Und natürlich gibt es da auch den Link zum Premiumkurs. Das hier war übrigens wieder eine Idee von einem Premiumkursmitglied. Und wenn Sie bereits Premiummitglied sind und eine Idee für so ein Video haben, dann lassen Sie es mich doch einfach wissen. Für den Moment klicken wir hier 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 die Tastenkombination Steuerung und R. Bitte wählen Sie hier die neu erstelle Datei SimpleArrayReferenz.ex4 aus, markieren Sie die Option für den visuellen Modus und starten Sie Ihren Test. Hier läuft unser Expert Advisor auch schon los und zeigt uns an, das zurückgelieferte Resultat ist 56. Schauen wir nochmal in den Quellcode, dann sehen wir, dass wir hier die ersten drei Elemente aufaddiert haben. Der erste Wert ist 8. Wenn wir den zweiten Wert dazu addieren, haben wir 8 + 16, das wäre 24. Und mit dem dritten Wert, 32, ergibt sich daraus eine Gesamtsumme von 56. Jetzt möchten wir das hier entsprechend erweitern und addieren zu unserem derzeitigen Ergebnis noch den letzten Wert hinzu. Danach klicken wir erneut auf Kompilieren, wechseln in den Metatrader, stoppen den aktuellen Test und starten einen neuen Test. Und diesmal zeigt uns der Metatrader an, jetzt ist das Resultat 120. Und Sie haben in diesem kurzen Video gelernt, wie Sie ein Array als Parameter in eine Unterfunktion als Referenz übergeben können. Und Sie haben das selbst getan, mit diesen paar Zeilen hier in MQL4.