iGator Что не так делаю?

 

Добрый день!

Использую индикатор Gator с цветами по умолчанию ( зелёный и красный ) .

int                   gator_handle;

int OnInit()
  {

      gator_handle = iGator( _Symbol, PERIOD_CURRENT, 13, 8, 8, 5, 5, 3, MODE_SMMA, PRICE_MEDIAN );
      if ( gator_handle != INVALID_HANDLE )
        {
          ChartIndicatorAdd( 0, 1, gator_handle );
        } 

 } 

Во время работы эксперта обращаюсь к индикатору с запросом о верхнем цвете: 

double  up_color[1];

CopyBuffer( gator_handle, 1, TimeCurrent(), 1, up_color );

Print( "UP COLOR = ", color( up_color[0] ) ); 

Вместо clrGreen или clrRed получаю clrBlack или 1,0,0 

Что не так? 

С уважением, Михаил 

 

При запросе цветового буфера индикатора вы получаете не цвет, а индекс цвета. Для встроенного гатора индексы следующие

Посмотрите справку по DRAW_COLOR_HISTOGRAM

 
alexvd:

При запросе цветового буфера индикатора вы получаете не цвет, а индекс цвета. Для встроенного гатора индексы следующие

Посмотрите справку по DRAW_COLOR_HISTOGRAM

 

 

 Добрый день!

 

Большое спасибо.

Хорошо бы это добавить в справку -  Справочник MQL5 / Технические индикаторы / iGator  

потому что (0x00BBGGRR) - это тоже индекс цвета, а не сам цвет. Рапример: clrRed - это цвет, а 0х000000FF его индекс(значение). 

Причина обращения: