Funkcje wskaźników standardowych:   iCCIOnArray()

Funkcja double iCCIOnArray() zwraca wartość wskaźnika Commodity Channel Index, obliczonego na podstawie danych z własnej tablicy. Więcej informacji można znaleźć w specyfikacji MQL4.


Przykład 1

Skrypt do wyświetlenia wartości wskaźnika iCCI() obliczonego za pomocą iCCIOnArray() na danych z tablicy. Najpierw trzeba przygotować tablicę wartości, na podstawie której będzie liczony Commodity Channel Index. W poniższym przykładzie została utworzona dynamiczna tablica array[], za pomocą ArrayResize() ustawiono jej rozmiar równy ilości świec na wykresie Bars , a za pomocą ArraySetAsSeries() zmieniono kierunek indeksacji elementów tablicy. Następnie, w pętli for kopiuje się ceny close dla bieżącego instrumentu finansowego _Symbol i timeframe’u PERIOD_CURRENT . Dalej funkcja iCCIOnArray() oblicza wartość wskaźnika Commodity Channel Index.

#property strict
void OnStart()
  {
//---
   double array[];                // inicjalizacja dynamicznej tablicy
   ArrayResize(array, Bars);      // ustawienie rozmiaru tablicy równej ilości świec na wykresie
   ArraySetAsSeries(array, true); // odwrócenie indeksacji elementów tablicy

//---
   for(int i=0; i<Bars; i++)
      array[i]=iClose(_Symbol, PERIOD_CURRENT, i); // zapis cen close do tablicy

//---
   int total    = 0;  /* ilość elementów tablicy do obliczenia
                         0 - wszystkie elementy tablicy */
   int period   = 20; // okres uśrednienia
   int indexBar = 2;  // indeks świecy
//---
   double result=iCCIOnArray(array, total, period, indexBar);

//---
   Print("Wartość iCCIOnArray = ",result);
  }

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