In diesem Video wollen wir uns einmal anschauen, wie man einen Expert Advisor erstellen kann, der in der Lage ist, aufgrund von extremen Werten in einem Oszillator Kaufen und Verkaufen Positionen zu eröffnen. Also lassen Sie uns einmal schauen, wie man so etwas in MQL4 programmieren kann. Um das zu tun, klicken Sie bitte hier oben auf dieses kleine Symbol oder drücken Sie die F4 Taste. Das ruft hier dann den Metaeditor auf. Und hier klicken wir auf Datei, Neue Datei, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier einmal den Namen SimplerIOBVEA, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser OnTick Funktion hier gelöscht werden. Und auch die zwei Kommentarzeilen werden entfernt. Wir starten damit, dass wir uns hier eine Signal Variable erstellen. Die ist vom Typ string. Aber wir weisen hier noch keinen Wert zu, denn den möchten wir gleich noch ermitteln. Außerdem benötigen wir noch ein Array. Das soll für 100 Kerzen die Werte aufnehmen. Und um es zu füllen gehen wir hier mit einer for Schleife alle Werte durch. Denn jetzt füllen wir unser Array mit Hilfe dieser Funktion. Die wird uns die Werte für den On Balance Volume Indicator geben. Und zwar für das aktuelle Währungspaar auf dem Chart und die auf dem Chart ausgewählte Zeiteinheit. Wir hätten gerne die Preise für die Schlusskurse für die jeweilige Kerze beziehungsweise den jeweiligen Wert des Schleifenzählers. Danach fügen wir den ermittelten Wert dem jeweiligen Speicherplatz in unserem Array hinzu. Mit unserer Schleife sind wir jetzt soweit fertig. Jetzt geht es darum, ein paar Werte zu berechnen. Der erste Wert ist der aktuelle Wert für Kerze null. Den ermitteln wir mit der Funktion iOBV für das aktuelle Währungspaar auf dem Chart und die aktuell auf dem Chart ausgewählte Zeiteinheit hätten wir gerne den Schlusspreis für Kerze null. Danach ermitteln wir die Nummer der Kerze mit dem höchsten Preis. Über die Funktion ArrayMaximum möchten wir nämlich das aktuelle Array komplett durchsuchen und zwar angefangen von Kerze null. Der Wert der höchsten Kerze wird dann dieser Variable hier zugewiesen. Natürlich gibt es die entsprechende Funktion auch, um den Wert der niedrigsten Kerze in einem Array zu ermitteln. Dazu nutzen wir ArrayMinimum. Der Rest ist in etwas gleich bis auf den Namen der Variable. Und da wir jetzt die Nummer der jeweiligen Kerze ermittelt haben, können wir auch den Wert berechnen. Den Maximalwert berechnen wir, indem wir einfach für die Nummer der Kerze, die wir eben ermittelt haben, den Wert aus unserem Array holen. Und für den Minimalwert geht das ebenso. Auch hier greifen wir einfach auf die entsprechende Nummer der Kerze in unserem Array zu und weisen den Wert dieser Variable hier zu. Weiter geht es mit der Signalermittlung. Wenn der aktuelle Wert größer oder gleich dem bisherigen Maximalwert der letzten 100 Kerzen ist, dann ist das für uns ein Kaufsignal. Und dann weisen wir den Begriff buy unserer Signal Variable zu. Im anderen Fall, wenn der aktuelle Wert für Kerze null kleiner oder gleich dem bisherigen Minimalwert ist, dann ist das ein Verkaufen Signal und dann weisen wir den Begriff sell unserem Signal zu. Denn, wenn unser Signal auf Kaufen steht und wir keine geöffneten Orders haben, das wäre der Fall, wenn OrdersTotal einen Wert von null zurückgibt, dann möchten wir gerne mittels OrderSend eine Kaufposition für zehn Mikrolot eröffnen. Andernfalls, wenn das Signal den Wert sell, also verkaufen hat und wir ebenfalls keine geöffnete Position haben, dann nutzen wir OrderSend um eine Verkaufsposition für zehn Mikrolot zu eröffnen. Und damit wir auch etwas sehen, nutzen wir hier den Comment Befehl, um uns den aktuellen, den maximalen, den minimalen und den Signalwert auf dem Chart anzeigen zu lassen. Hier unten ist noch irgendwo die schließende Klammer. Und das war es soweit. Wenn Ihnen das hier zu schnell ging oder wenn Sie keine Ahnung haben, was alle diese Codezeilen hier bedeuten,