Dostęp do danych historycznych:   iBars()

Funkcja int iBars() zwraca ilość świec, mówiąc inaczej barów, w historii dla odpowiedniego instrumentu finansowego i przedziału czasowego. Więcej informacji można znaleźć w specyfikacji MQL4.


Przykład 1

Skrypt do wyświetlenia ilości świec w historii 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

//--- znaleźć ilość świec
   int currentBars = iBars(symbolName, timeFrame);

//--- wyświetlić wynik
   Print("W historii bieżącego symbolu i timeframe-u jest = ",currentBars," świec.");
  }

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


Jeśli trzeba znaleźć ilość świec na tym wykresie notowań, gdzie program MQL4 został uruchomiony, to zalecane jest stosowanie predefiniowanej zmiennej Bars .


Przykład 2

Skrypt do wyświetlenia ilości świec w historii dla różnych instrumentów finansowych i przedziałów czasowych.

#property strict
void OnStart()
  {
//--- znaleźć ilość świec
   int barsEURUSD_M5 = iBars("EURUSD", PERIOD_M5);
   int barsUSDCHF_H1 = iBars("USDCHF", PERIOD_H1);
   int barsCADJPY_D1 = iBars("CADJPY", PERIOD_D1);

//--- wyświetlić wyniki
   Print("Dla EURUSD, M5 w historii jest = ",barsEURUSD_M5," świec.");
   Print("Dla USDCHF, H1 w historii jest = ",barsUSDCHF_H1," świec.");
   Print("Dla CADJPY, D1 w historii jest = ",barsCADJPY_D1," świec.");
  }

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