Dostęp do danych historycznych:   iClose()

Funkcja double iClose() zwraca cenę zamknięcia (close) świecy o określonym indeksie dla odpowiedniego instrumentu finansowego i przedziału czasowego. Więcej informacji można znaleźć w specyfikacji MQL4.


Przykład 1

Skrypt do wyświetlenia ceny close świecy z indeksem 1 dla bieżącego instrumentu finansowego _Symbol i bieżącego przedziału czasowego PERIOD_CURRENT .

#property strict
void OnStart()
  {
//---
   string          symbolName = _Symbol;        // bieżący instrument finansowy
   ENUM_TIMEFRAMES timeFrame  = PERIOD_CURRENT; // bieżący przedział czasowy
   int             indexBar   = 1;              // indeks świecy

//--- znaleźć cenę close
   double closePrice = iClose(symbolName, timeFrame, indexBar);

//--- wyświetlić wynik
   Print("Cena close świecy 1, bieżącego symbolu i timeframe-u = ",closePrice);
  }

Rys. 1. Przykład stosowania funkcji iClose().


Jeśli trzeba znaleźć cenę close świecy na tym wykresie notowań, gdzie program MQL4 został uruchomiony, to zalecane jest stosowanie predefiniowanej tablicy Close[] .


Przykład 2

Skrypt do wyświetlenia cen close świec dla różnych instrumentów finansowych, przedziałów czasowych i indeksów.

#property strict
void OnStart()
  {
//--- znaleźć ceny close
   double closeEURUSD_M5_2  = iClose("EURUSD", PERIOD_M5, 2);
   double closeUSDCHF_H1_3  = iClose("USDCHF", PERIOD_H1, 3);
   double closeCADJPY_D1_10 = iClose("CADJPY", PERIOD_D1, 10);

//--- wyświetlić wynik
   Print("Cena close świecy EURUSD, PERIOD_M5, indeks 2 = ",closeEURUSD_M5_2);
   Print("Cena close świecy USDCHF, PERIOD_H1, indeks 3 = ",closeUSDCHF_H1_3);
   Print("Cena close świecy CADJPY, PERIOD_D1, indeks 10 = ",closeCADJPY_D1_10);
  }

Rys. 2. Przykłady stosowania funkcji iClose().