Frage zu MQ4 - ermitteln Candle Index der/einer eingezeichneten vertikalen Linie ...

 

Ich möchte auf einem Candlestick-Chart 2 manuell gezeichnete Metatrader-Vertikallinien an beliebiger Stelle einzeichnen.

Der Indikator soll mir dann stets irgendwo am Rand und aktuell die Anzahl der Candles zwischen den manuell gezeichneten Vertikallinien anzeigen.

Welche Anweisung gibt mir den Index der Candles an, durch welche die vertikalen Linien gehen? 


Gruß

Francis

 
Ich würde CopyRates() verwenden.
Dokumentation zu MQL5: Zugang zu Zeitreihen und Indikatoren / CopyRates
Dokumentation zu MQL5: Zugang zu Zeitreihen und Indikatoren / CopyRates
  • www.mql5.com
Abzählen der Elemente von der Startposition wird von der Gegenwart zur Vergangenheit durchgeführt, d. h. Startposition, 0, bedeutet die laufende Bar. Beim Kopieren der im voraus unbekannten Anzahl der Daten ist es empfehlenswert, als Feld-Rezipient ein dynamisches Feld zu verwenden, denn wenn die Anzahl der Daten weniger (oder mehr) ist als ein...
 

Und wie wird erkannt. wo die manuell gezeichneten vertikale Linien liegen.

Nehmen wir an, ich hätte die eine vertikale Linie bei Bar 20 und die andere bei Bar 15 eingesetzt.

Das gewünschte Ergebnis wäre ... 16,17,18,19 - also demnach 4.

Ich benötige daher nur eine MQL-Anweisung, die mir mitteilt, bei welcher Bar die vertikalen Linien liegen. Das wäre doch dann der Index, oder?

 

Du beginnst mit ObjectsTotal() und kannst in einer Schlkeife mit den anderen Funktionen hinter dem Link auf der linken Seite Deine Linie(n) finden).

Alternativ gäbe es auch ObjectFind().

Dokumentation zu MQL5: Graphische Objekte / ObjectsTotal
Dokumentation zu MQL5: Graphische Objekte / ObjectsTotal
  • www.mql5.com
[in]  Nummer des Subfensters des Charts. 0 bedeutet Hauptfenster des Charts,  -1 bedeutet alle Subfenster des Charts, einschliesslich Hauptfenster. Die Funktion verwendet einen synchronen Aufruf, d.h. dass die Funktion auf die Ausführung aller Befehle...
 

Mit ObjectTotal kann ich Anzahl der Objecte mit Vertikaler-Linie abfragen.

Nehmen wir an auf Bar 20 sei eine vertikale Linie manuell eingezeichnet worden. Man gebe ihr den Namen - auch manuell eingetragen über metratrader - LineA.

Mit ObjectTotal weiß ich, dass eine VLine mit dem Namen LineA vorhanden ist. Ich weiß aber nicht, auf welchem Bar sie liegt - hier also 20.


Wie kann ich dann diesen Index oder Bar (index) (hier Index =20) zur weiteren Verarbeitung mit welcher Anweisung abrufen? 

 
Francisco Valles:

Mit ObjectTotal kann ich Anzahl der Objecte mit Vertikaler-Linie abfragen.

Nehmen wir an auf Bar 20 sei eine vertikale Linie manuell eingezeichnet worden. Man gebe ihr den Namen - auch manuell eingetragen über metratrader - LineA.

Mit ObjectTotal weiß ich, dass eine VLine mit dem Namen LineA vorhanden ist. Ich weiß aber nicht, auf welchem Bar sie liegt - hier also 20.


Wie kann ich dann diesen Index oder Bar (index) (hier Index =20) zur weiteren Verarbeitung mit welcher Anweisung abrufen? 

doch, das kannst Du über die Zeit abfragen wo die Linie liegt, Jeder Vertikale Line hat einen Zeitstempel