IndicatorCreate

 

Хотелось бы примерчик создания индикаторов с помощью этой функции. На первый взгляд она выглядит сложнее первого варианта. Как-то не совсем понятен её смысл и преимущества.

 

А у меня в справке ее нет, может обновить надо?

 
vasya_vasya :

А у меня в справке ее нет, может обновить надо?

Да, нужно обновить. Кроме того, можно посмотреть справку прямо на сайте IndicatorCreate:

IndicatorCreate

Возвращает хэндл указанного технического индикатора, созданного на основе массива параметров типа MqlParam.

int  IndicatorCreate(
   string           symbol,                            // имя символа
   ENUM_TIMEFRAMES  period,                            // период
   ENUM_INDICATOR   indicator_id,                      // тип индикатора из перечисления ENUM_INDICATOR
   int              parameters_cnt=0,                  // количество параметров
   MqlParam[]       &parameters_array=NULL,            // массив параметров
   );

Параметры

symbol

[in]  Символьное имя инструмента, на данных которого будет вычисляться индикатор. NULL означает текущий символ.

period

[in]  Значение периода может быть одним из значений перечисления ENUM_TIMEFRAMES, 0 означает текущий таймфрейм.

indicator_id

[in]  Тип индикатора, может принимать одно из значений перечисления ENUM_INDICATOR.

parameters_cnt

[in]  Количество параметров, передаваемых в массиве parameters_array[]. Элементы массива имеют специальный тип структуры MqlParam. По умолчанию нулевое значение - параметры не передаются. Если указано ненулевое количество параметров, то параметр parameters_array является обязательным. Можно передавать не более 256 параметров.

parameters_array

[in]  Массив типа MqlParam, элементы которого содержат тип и значение каждого входного параметра технического индикатора.

Примечание

Если создается хэндл индикатора типа IND_CUSTOM, то поле type первого элемента массива входных параметров parameters_array обязательно должен иметь значение TYPE_STRING из перечисления ENUM_DATATYPE, а поле string_value первого элемента должно содержать имя пользовательского индикатора. Пользовательский индикатор должен быть скомпилирован (файл с расширением EX5) и находиться в директории MQL5/Indicators клиентского терминала или вложенной поддиректории.

Если в пользовательском индикаторе используется первая форма вызова, то при передаче входных параметров последним параметром можно дополнительно указать на каких данных он будет рассчитываться. Если параметр "Apply to" не указан явно, то по умолчанию расчет производится по значениям PRICE_CLOSE.

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