In diesem Video wollen wir uns einmal anschauen, wie man eine Linie zeichnen kann, von der höchsten Kerze auf dem Chart bis zum Höchstpunkt der aktuellen Kerze, um einen groben Trend zu bestimmen. Es handelt sich hier um einen Objekttypen, also lassen Sie uns einmal schauen, wie man so etwas mit MQL5 programmieren kann. Um das zu tun, klicken Sie bitte hier oben auf dieses kleine Symbol oder drücken Sie die F4-Taste. Das öffnet dann hier den Metaeditor und wir klicken auf Datei, neue Datei, Expert Advisor aus Vorlage, weiter. Ich vergebe hier einmal den Namen SimpleHighPriceLinie, klicke auf weiter, weiter und fertigstellen. Jetzt kann alles gelöscht werden was oberhalb der OnTick-Funktion ist und auch die zwei Kommentarzeilen werden gelöscht. Je nachdem wie viel Kerzen wir hier auf dem Chart angezeigt bekommen, bekommen wir andere Ausgaben0. Das bedeutet, zunächst einmal müsse wir die Anzahl der Kerzen auf dem Chart ermitteln. Denn nur für die sichtbaren Kerzen möchten wir gerne die höchste Kerze ermitteln. Das übernimmt die Funktion ChartGetInteger für uns. Die wird für das aktuelle Chart, die Eigenschaft CHART_FIRST_VISIBLE_BAR ermitteln. Die weisen wir hier der Variable CandlesOnChart, also Kerzen auf dem Chart zu. Außerdem brauchen wir eine Variable für die höchste Kerze. Die habe ich hier HighestCandle genannt. Und wir möchten ja alle Höchstpreise der sichtbaren Kerzen miteinander vergleichen, darum erstellen wir uns hier noch ein Array mit dem Namen High. Dieses Array sortieren wir jetzt mit der Funktion ArraySetAsSeries von der aktuellen Kerze an abwärts. Und jetzt holen wir uns die Höchstpreise für die Kerzen. Das übernimmt die Funktion CopyHigh. Die hat einige Parameter. Der erste Parameter steht für das aktuelle Währungspaar auf dem Chart. Der zweite Parameter für die Zeiteinheit, die wir auf dem Chart verwenden. Wir starten von der aktuellen Kerze 0 und möchten gerne für die Anzahl der Kerzen auf dem Chart alle Daten in unser HighArray kopieren. Und jetzt ermitteln wir die höchste Kerze mit der Funktion ArrayMaximum. Die wird in unserem Array alle Kerzen überprüfen und auch hier von der aktuellen Kerze 0 für alle auf dem Chart sichtbaren Kerzen die Werte durchgehen und den höchsten Wert dieser Variable hier zuweisen. Jetzt brauchen wir noch ein Array. Diesmal nutzen wir MqlRates, um uns die Preisinformationen für alle Kerzen zu holen. Auch dieses Array wird mit ArraySetAsSeries von der aktuellen Kerze an abwärts sortiert. Und mit CopyRates kopieren wir, für das aktuelle Chart und die auf dem Chart eingestellte Zeiteinheit, von Kerze 0 für alle auf dem Chart sichtbaren Kerzen die Preisdaten und speichern diese in unserem PriceInformations-Array. Im nächsten Schritt möchten wir gerne mit ObjectDelete alle vielleicht bereits vorher gezeichneten Linien auf dem Chart löschen. Und zwar tun wir das für das aktuelle Chart und für Linien, die diesen Namen hier haben, SimpleHIghLineTrend, denn dafür möchten wir jetzt ein neues Objekt erstellen. Das geht mit der Funktion ObjectCreate. Auch hier müssen wir eine ganze Menge Parameter übergeben. Der erste Parameter steht für das aktuelle Chart. Der zweite Parameter ist der Name des Objektes. Ich hab hier den Namen SimpleHighLineTrend gewählt, aber vom Prinzip ist der Name egal. Sie müssen Ihn nur immer gleich schreiben. Parameter Nummer drei steht für den Objekttypen. Wir nutzen hier OBJ_TREND. Parameter Nummer vier steht für unser Hauptfenster. Das Hauptfenster mit den Kerzen ist Fenster 0. Der Startpunkt für unsere Linie soll bei der höchsten ermittelten Kerze auf dem Chart liegen. Dazu übergeben wir hier die Zeitangabe von dieser Kerze. Und wir möchten gerne, dass die Linie vom höchsten Punkt dieser Kerze gezeichnet wird, also übergeben wir als zweiten Parameter hier den Höchstpreis. Wir könnten für jede Kerze auch den Schlusskurs angeben, aber uns interessiert in diesem Fall halt der Höchstpreis. Jetzt müssen wir noch die Endpunkte für unsere Linie festlegen.