
- www.mql5.com
iHigh und iHighest gibt es nicht für MQ5, Du musst https://www.mql5.com/de/docs/series/copyhigh verwenden. Dort gibt es auch Beispiele!
Doch carl, das wurde vor 2 oder 3 Jahren eingeführt
Hallo liebe MQL5er,
ich will mir das Höchste Hoch der letzten 20 Tage auf den Chart anzeigen lassen. Soweit gant einfach. Ich erstelle einfach eine neue Linie mittels ObjectCreate, nehme dort die HLine und sag ihm mittels iHighest und MODE_HIGH das er den höchsten Wert nehmen soll:
So, da wird mir meine Blaue Linie auf die höchste kerze gesetzt. So weit so gut. Aber jetzt möchte ich vom Vortag wieder die letzten 20 Tage betrachten und davon wieder die höchste Kerze nehmen, und dann von dem Vortag, etc.
Ich denke ihr wisst worauf ich hinaus will. und jetzt will ich dann natürlich nicht, das dort 30 Linien sind, welche ich dann nochmal verbinden muss, sondern, es soll eine durchgezogene Linie sein. So wie bei dem Indikator "Bollinger Bands".
Sry, wenn es eine doch einfache Frage evtl. ist, aber ich bin neu im Programmieren
In hu deiner frage,
du musst dir einen indikator bauen, welcher die linie anzeigt
wie kann ich dir nicht genau sagen, bei indikatoren bin ich ganz schlecht, aber such mal in der codebase, das gibts sicher schon
Stimmt - aber wahrscheinlich ist CopyHigh(9 und verwandte schneller als iHigh(iHighest(..));
mag sein, ich nehme an, das wurde aufgrund der einfacheren verwendung von MQL4 implementiert
Also ich hab mir den Code mal angeschaut.
im prizip ist es ja eine Funktion, mit dem Namen iHigh (im Beispiel) mit 3 Überladungen. Dort wird dann die Balken anzahl x geladen und nach größe Sortiert und der Höchste wird dann als wert Double zurück gegeben. Sehe ich das so richtig?
iHigh und iHighest gibt es nicht für MQ5, Du musst https://www.mql5.com/de/docs/series/copyhigh verwenden. Dort gibt es auch Beispiele!
Also ich hab mir den Code mal angeschaut.
im prizip ist es ja eine Funktion, mit dem Namen iHigh (im Beispiel) mit 3 Überladungen. Dort wird dann die Balken anzahl x geladen und nach größe Sortiert und der Höchste wird dann als wert Double zurück gegeben. Sehe ich das so richtig?
Okay das habe ich dann so verstanden. Aber wie bekomme ich jetzt eben die Linie Durchgängig gezeichnet? Ich müsste ja die Funktion mittels einer For-Schleife ausführen und mittels CreateObject dann die besagten Linien zeichen, aber a würde ich ja ständig eine neue Linie dann zeichnen und keine zusammen hängende...
Such einfach mal nach linie.
Da findest Du zB. diesen Artikel: https://www.mql5.com/de/articles/3186
sicherlich mit Beispielen, Du kannst aber auch andere nehmen.
Übrigens ich verwende diese Seite: https://www.mql5.com/de/docs/function_indices
um mit Ctrl+F mit "Schlagworten" nach geeigneten Funktionen zu suchen.

- www.mql5.com
So ich hab jetzt mal bisschen mit dem Code herumprobiert bzw. mich mit der Funktion CopyHigh außeinander gesetzt.
leider gibt er mir, egal wie ich die Funktion einsetzte, mir immer nur den höchststand der Kerze von der 20. Kerze. und nicht aus dem Zeitraum der letzten Zwanzig Kerzen:
Hier erkennt man gut, das die Linie nur auf das höchste Hoch der 20. Kerze gezeichnet worden ist. Und nicht auf Höchste Hoch innerhalb der letzten 20 Kerzen.
Das liegt am Code, den müsstest Du posten.
Übrigens es gibt für Array neben anderen: https://www.mql5.com/de/docs/array/arraymaximum

- www.mql5.com

- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Hallo liebe MQL5er,
ich will mir das Höchste Hoch der letzten 20 Tage auf den Chart anzeigen lassen. Soweit gant einfach. Ich erstelle einfach eine neue Linie mittels ObjectCreate, nehme dort die HLine und sag ihm mittels iHighest und MODE_HIGH das er den höchsten Wert nehmen soll:
So, da wird mir meine Blaue Linie auf die höchste kerze gesetzt. So weit so gut. Aber jetzt möchte ich vom Vortag wieder die letzten 20 Tage betrachten und davon wieder die höchste Kerze nehmen, und dann von dem Vortag, etc.
Ich denke ihr wisst worauf ich hinaus will. und jetzt will ich dann natürlich nicht, das dort 30 Linien sind, welche ich dann nochmal verbinden muss, sondern, es soll eine durchgezogene Linie sein. So wie bei dem Indikator "Bollinger Bands".
Sry, wenn es eine doch einfache Frage evtl. ist, aber ich bin neu im Programmieren