iOpen

Gibt den Open-Preis des Balkens (der durch den Parameter shift vorgegeben wurde) des entsprechenden Charts zurück.

double  iOpen(
   const string        symbol,          // Symbol
   ENUM_TIMEFRAMES     timeframe,       // Zeitrahmen
   int                 shift            // Verschiebung
   );

Parameter

symbol

[in]  Name des Finanzinstruments. NULL bedeutet das aktuelle Symbol.

timeframe

[in]  Zeitrahmen. Der Wert kann einer der Werte der Aufzählung ENUM_TIMEFRAMES sein. 0 bedeutet den Zeitrahmen des aktuellen Charts.

shift

[in]  Index des abgefragten Wertes aus der Zeitreihe (Rückwärtsverschiebung um die angegebenen Anzahl der Balken relativ zum aktuellen Balken).

Rückgabewert

Wert des Eröffnungspreises des Balkens (der durch den Parameter shift vorgegeben wurde) des entsprechenden Charts oder 0 im Fehlerfall. Um zusätzliche Informationen über den Fehler zu erhalten, rufen Sie die Funktion GetLastError() auf.

Hinweis

Die Funktion gibt immer aktuelle Daten zurück, dafür fragt sie die Zeitreihe nach dem angegebenen Symbol/Zeitrahmen bei jedem Aufruf ab. Wenn keine Daten beim ersten Aufruf der Funktion vorhanden sind, kann die Vorbereitung des Ergebnisses der Ausführung einige Zeit in Anspruch nehmen.

Die Funktion speichert die Ergebnisse der vorherigen Aufrufe nicht, es gibt keinen lokalen Cache für eine schnelle Rückgabe des Wertes.

Beispiel:

input int shift=0;
//+------------------------------------------------------------------+
//| Function-event handler "tick"                                    |
//+------------------------------------------------------------------+
void OnTick()
 { 
   datetime time  = iTime(Symbol(),Period(),shift);
   double   open  = iOpen(Symbol(),Period(),shift);
   double   high  = iHigh(Symbol(),Period(),shift);
   double   low   = iLow(Symbol(),Period(),shift);
   double   close = iClose(NULL,PERIOD_CURRENT,shift);
   long     volume= iVolume(Symbol(),0,shift);
   int      bars  = iBars(NULL,0);
 
   Comment(Symbol(),",",EnumToString(Period()),"\n",
           "Time: "  ,TimeToString(time,TIME_DATE|TIME_SECONDS),"\n",
           "Open: "  ,DoubleToString(open,Digits()),"\n",
           "High: "  ,DoubleToString(high,Digits()),"\n",
           "Low: "   ,DoubleToString(low,Digits()),"\n",
           "Close: " ,DoubleToString(close,Digits()),"\n",
           "Volume: ",IntegerToString(volume),"\n",
           "Bars: "  ,IntegerToString(bars),"\n"
           );
  }

Siehe auch

CopyOpen, CopyRates