Funkcje tablicowe:   ArrayCopySeries()

Funkcja int ArrayCopySeries() kopiuję zawartość tablicy danych historycznych (timeseries) do innej tablicy i zwraca ilość skopiowanych elementów. Więcej informacji można znaleźć w specyfikacji MQL4.


Przykład 1

Przykład skryptu do kopiowania cen open MODE_OPEN dla bieżącego instrumentu finansowego _Symbol i bieżącego przedziału czasowego PERIOD_CURRENT .

#property strict
void OnStart()
  {
//---
   double          arrayOpen[];  // tablica, do której zostaną skopiowane dane
   int             seriesMode = MODE_OPEN;      // typ danych, ceny open
   string          symbolName = _Symbol;        // bieżący instrument finansowy
   ENUM_TIMEFRAMES timeFrame  = PERIOD_CURRENT; // bieżący przedział czasowy

//--- skopiować dane do tablicy arrayOpen
   ArrayCopySeries(arrayOpen, seriesMode, symbolName, timeFrame);

//--- wyświetlić wynik
   Print("Dane dla bieżącego instrumentu finansowego i timeframe-u:");
   for(int i = 0; i < 3; i++)
      Print("Cena close świecy z indeksem ",i," = ",arrayOpen[i]);
  }

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


W przypadku kopiowania czasu otwarcia świec MODE_TIME tablica, do której zostaną skopiowane te dane, powinna mieć typ datetime .