Как получить свойства индикатора с помощью iCustom?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
mr_blond97
36
mr_blond97  

Можно скопировать буферы индикатора с помощью iCustom:

int indicator_handle=iCustom(NULL,0,"Indicator_name");

double Label1Buffer[];

int copy=CopyBuffer(indicator_handle,0,0,10,Label1Buffer);

iCustom возвращает handle. Как можно получить свойства индикатора имея handle?

Dmitry Fedoseev
56597
Dmitry Fedoseev  
Документация по MQL5: Доступ к таймсериям и индикаторам / IndicatorParameters
Документация по MQL5: Доступ к таймсериям и индикаторам / IndicatorParameters
  • www.mql5.com
//| Script program start function                                    |                          +                                    p,                                                                        parameters[p].integer_value,                                    parameters[p].double_value...
mr_blond97
36
mr_blond97  

Индикатор должен делать расчеты и записывать результат в переменную (для примера, допустим индикатор посчитал некую переменную int count = 10).

Задача состоит в том, что в советнике нужно получить ссылку на эту переменную в индикаторе, что бы прочитать это значение.

С помощью IndicatorParameters можно получить значения свойств класса input, но это константа, я не смогу индикатором в него записывать нужные данные.

Так что это не решает задачу.

Artyom Trishkin
Модератор
52249
Artyom Trishkin  
mr_blond97:

Индикатор должен делать расчеты и записывать результат в переменную (для примера, допустим индикатор посчитал некую переменную int count = 10).

Задача состоит в том, что в советнике нужно получить ссылку на эту переменную в индикаторе, что бы прочитать это значение.

С помощью IndicatorParameters можно получить значения свойств класса input, но это константа, я не смогу индикатором в него записывать нужные данные.

Так что это не решает задачу.

Вы задали вопрос:

iCustom возвращает handle. Как можно получить свойства индикатора имея handle?

и получили на него абсолютно верный ответ.

Может у вас просто вопрос был совсем иной?

Может вы ходите буферы индикатора прочитать и использовать это значение? Тогда читайте в справке CopyBuffer()

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий