Dostęp do danych historycznych:   Bars()

Funkcja int Bars() zwraca ilość świec, mówiąc inaczej barów, w historii dla odpowiedniego instrumentu finansowego i przedziału czasowego (przykład 1). Drugi sposób wywołania tej funkcji pozwala uzyskać ilość świec dla odpowiedniego instrumentu finansowego i przedziału czasowego w określonym zakresie czasu (przykład 2). Więcej informacji można znaleźć w specyfikacji MQL4.


Przykład 1

#property strict
void OnStart()
  {
//--- dane do obliczenia ilości świec
   string          symbol_name = "EURUSD";   // instrument finansowy
   ENUM_TIMEFRAMES timeframe   = PERIOD_H1;  // przedział czasowy

//--- znaleźć ilość świec na całym wykresie
   int result_1 = Bars(symbol_name, timeframe);
//--- wyświetlić wynik
   Print("1) Na wykresie EURUSD, H1 jest ",result_1," świec.");

//--- znaleźć i wyświetlić ilość świec na całym wykresie dla USDJPY i M30
   int result_2 = Bars("USDJPY", PERIOD_M30);
   Print("2) Na wykresie USDJPY, M30 jest ",result_2," świec.");

//--- znaleźć i wyświetlić ilość świec na całym wykresie
//--- dla bieżącego instrumentu finansowego i bieżącego przedziału czasowego
   int result_3 = Bars(_Symbol, PERIOD_CURRENT);
   Print("3) Na bieżącym wykresie jest ",result_3," świec.");
  }

Rys. 1. Przykłady stosowania funkcji Bars().


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


Przykład 2

#property strict
void OnStart()
  {
//--- dane do obliczenia ilości świec
   string          symbol_name = "EURUSD";            // instrument finansowy
   ENUM_TIMEFRAMES timeframe   = PERIOD_H1;           // przedział czasowy
   datetime        date_start  = D'2016.08.12 15:00'; // początek
   datetime        date_end    = D'2016.08.12 19:00'; // koniec

//--- znaleźć ilość świec
   int result_1 = Bars(symbol_name, timeframe, date_start, date_end);

//--- wyświetlić wynik
   Print("Na wykresie EURUSD, H1 w dniu 2016.08.12 między 15:00 a 19:00 jest ",result_1," świec.");
  }

Rys. 2. Przykład stosowania funkcji Bars().