Wie lässt man Werte in einer MQL4 Funktion berechnen?

video
play-sharp-fill

Wie lässt man sich jetzt von einer selbst geschriebenen Funktion einen Wert berechnen? Wir wollen das in diesem Beispiel mal ganz einfach machen und eine normale Integerzahl verdoppeln lassen. Eine Integer-Zahl ist eine Zahl, die mit dem Datentyp int initialisiert wird und die nur ganze Zahlen aufnehmen kann. Wir möchten in diesem Beispiel mal unseremit dem Wert 2 initialisieren. Ausgeben möchten wir aber den doppelten Wert der in unserer eigenen Funktion verdoppelt wird. Dazu schreiben wir uns eine Funktion die einen Integerwert zurückgeben soll, die den Namen Verdoppeln trägt und die unsere Zahl übergeben bekommt. In unserer eigenen Funktion Verdoppeln() möchten wir jetzt einen Rückgabewert mit dem Begriff return übergeben und der soll die Zahl mit 2 multipliziert an unsere OnTick() Funktion zurück liefern. Und hier geben wir jetzt unsere doppelte Zahl aus. Aber wir schreiben keinen Wert als zweiten Parameter, sondern wir rufen unsere Funktion Verdoppeln() auf. Wie man hier sieht, erwartet unsere Funktion Verdoppeln() noch eine Integer-Variable mit dem Namen zahl. Diesen Integertyp müssen wir übrigens auch hier in der Klammer angeben. Und hinter dem Returnbefehl mit unserer eigentlichen Rechenfunktion fehlte noch ein Semikolon. Jetzt lässt sich alles kompilieren und wir schauen was unser kleines Programm im Metatrader zeigt. Und wie man sieht steht hier oben: Doppelte Zahl 4. Wir haben hier eine Zahl definiert, haben sie als Integer der Variable zahl zugeordnet und übergeben hier der Funktion Verdoppeln diese Zahl. Innerhalb unserer selbst geschriebenen Funktion Verdoppeln() wird die Zahl zurückgegeben nachem sie mit 2 multipliziert wurde. Wer die Funktion Verdoppeln() verstanden hat, ist jetzt auch in der Lage eine Funktion Halbieren() zu erstellen. In der Praxis erden wir hier natürlich deutlich komplexere Berechnungen anstellen. Aber für den Anfang und um die Funktionsweise zu verstehen sollte das ausreichen.