Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 749

 

Как мне получить данные индикатора (iMA) от цен от буфера этого же индикатора?

iMAOnArray() в 4-ке решало эту задачу. А здесь как быть? Буфер своего же индикатора, причем ненулевой.

 

Тыкните пальцем. Где написанно как на mt5 написать свой график. Как в mt4 автономный график. Полазил почитал. Что- то ничего не могу найти.

 
igorbel:

Как мне получить данные индикатора (iMA) от цен от буфера этого же индикатора?

iMAOnArray() в 4-ке решало эту задачу. А здесь как быть? Буфер своего же индикатора, причем ненулевой.

Внутри самого индикатора только через MovingAverages.mqh

 
igorbel:

Как мне получить данные индикатора (iMA) от цен от буфера этого же индикатора?

iMAOnArray() в 4-ке решало эту задачу. А здесь как быть? Буфер своего же индикатора, причем ненулевой.

https://www.mql5.com/ru/docs/indicators/ima

https://www.mql5.com/ru/docs/indicators/icustom

Документация по MQL5: Технические индикаторы / iMA
Документация по MQL5: Технические индикаторы / iMA
  • www.mql5.com
Технические индикаторы / iMA - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

Как это решает мою задачу? Передать в качестве applied_price мой же индикатор? И отчего он считать среднюю будет? Я так понял от нулевого буфера. Мне же надо среднюю не от нулевого буфера.
 
igorbel:

Как это решает мою задачу? Передать в качестве applied_price мой же индикатор? И отчего он считать среднюю будет? Я так понял от нулевого буфера. Мне же надо среднюю не от нулевого буфера.
Ещё вариант, написать индикатор "недоделку" и его потом подключить ресурсом к новому индикатору. В этом новом индикаторе применить iMA с указанием хендла "недоделки", потом CopyBuffer() всех буферов "недоделки" и буфера iMA. Так получается готовый индикатор работающий как задумано.
 
Alexey Viktorov:
Ещё вариант, написать индикатор "недоделку" и его потом подключить ресурсом к новому индикатору. В этом новом индикаторе применить iMA с указанием хендла "недоделки", потом CopyBuffer() всех буферов "недоделки" и буфера iMA. Так получается готовый индикатор работающий как задумано.

Как страшно вы это описали ). Готового ничего нет?
 
igorbel:

Как страшно вы это описали ). Готового ничего нет?

В очень сыром варианте, даже показывать стыдно. Я давно об этом думал, но вот только сегодня решился проверить.

В принципе ничего страшного нет. О ресурсах достаточно понятно в документации написано в самом конце о подключении индикаторов, а "недоделка", как я понимаю, уже имеется.

Ну если только основными строками

// Подключаем ресурс
#resource "\\Indicators\\подпапка\\test.ex5"

// В OnInit()

   handle = iCustom(_Symbol, PERIOD_CURRENT, "::Indicators\\подпапка\\test.ex5", параметры через запятую);
   handMA = iMA(_Symbol, PERIOD_CURRENT, 21, 0, ENUM_MA_METHOD, handle);

// В OnCalculate
// Для всех буферов "недоделки"
CopyBuffer(handle...
// и для iMA в свой буфер.
CopyBuffer(handMA...

PS; Вот нашёл когда меня посетила мысль подключить индикатор "недоделку" ресурсом

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Обсуждение статьи "Индикатор от индикатора в MQL5"

Alexey Viktorov, 2017.01.31 19:31

По сравнению с iMAOnArray() из mql4 это танцы с бубном.



А вот такая бредовая идея: Если индикатор прицепить в качестве ресурса, можно-ли получить его хендл? Не получится-ли скрестить. Чтобы не таскать два индикатора, сам индикатор и индикатор от этого индикатора. Я не практиковал ресурсы, потому мне трудно проверить, вот и спрашиваю.

Документация по MQL5: Программы MQL5 / Ресурсы
Документация по MQL5: Программы MQL5 / Ресурсы
  • www.mql5.com
Программы MQL5 / Ресурсы - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Vladimir Karputov:


Каким образом осуществляете доступ к истории чужого периода? Какие проверки результата доступа осуществляете? Какие кода ошибок получаете? 

В "жидких" индикаторах есть понятие "базового" периода, на основе которого строится индикатор. Наверное, это вы и называете чужим периодом, как я понимаю.

Никакие коды ошибок в "Экспертах" не выдаются. Просто индикаторы не рисуются и всё.


        Чтобы они начали отрисовываться, пришлось в каждом профиле открыть графики всех недостающих базовых периодов. Но раньше-то всё работало несколько лет

и без этого. Как работало, куда был доступ и как проверялось- без понятия, я не программист.


  Но я же не первый такой в истории, наверное. Должна же быть какая-то процедура, как я понимаю. Я же не могу знать, это результат какого-то глюка обновления

либо там всё правильно, а мои индикаторы просто надо переделывать. Как-то же это нужно определять в конце концов. А у вас один принцип- спасение утопающих дело рук самих утопающих.

 
Agat:

В "жидких" индикаторах есть понятие "базового" периода, на основе которого строится индикатор. Наверное, это вы и называете чужим периодом, как я понимаю.

Никакие коды ошибок в "Экспертах" не выдаются. Просто индикаторы не рисуются и всё.


        Чтобы они начали отрисовываться, пришлось в каждом профиле открыть графики всех недостающих базовых периодов. Но раньше-то всё работало несколько лет

и без этого. Как работало, куда был доступ и как проверялось- без понятия, я не программист.


  Но я же не первый такой в истории, наверное. Должна же быть какая-то процедура, как я понимаю. Я же не могу знать, это результат какого-то глюка обновления

либо там всё правильно, а мои индикаторы просто надо переделывать. Как-то же это нужно определять в конце концов. А у вас один принцип- спасение утопающих дело рук самих утопающих.


Если это не Ваши индикаторы - обратитесь в автору и запросите ответы на вопросы, которые я задал Выше. Без этого нельзя ничего определённо сказать.