Скорость изменения цены.

 

Добрый день. У меня вопрос по программированию на mql4.

Как написать код в советнике, который бы мерил скорость изменения цены на разных таймфреймах?

Я прочитал статью https://book.mql4.com/ru/samples/iroc, но как сделать это в советнике не понял.

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

Так что помогите!

 
nuan:

Добрый день. У меня вопрос по программированию на mql4.

Как написать код в советнике, который бы мерил скорость изменения цены на разных таймфреймах?

Я прочитал статью https://book.mql4.com/ru/samples/iroc, но как сделать это в советнике не понял.

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

Так что помогите!

https://book.mql4.com/ru/samples/shared (iCustom)
 

Можете написать простой пример применения?
 
nuan:

Можете написать простой пример применения?
Здесь можно найти массу примеров.
 
nuan:

Можете написать простой пример применения?

Если файл индикатора ROC называется roc.mq4, то вызов

iCustom(Symbol(), Period(), "roc", 5000, 13, 21, 13, 5, 2, 0, i);

5000, 13, 21, 13, 5, 2 - параметры индикатора

0 - номер линии, из которой мы берем значение (с 0 по 5)

i - номер бара, на котором берем значение линии


 
Я сильно извиняюсь. Допустим в индикаторе была переменная v1, а как ее получить в эксперте?
 
nuan:
Я сильно извиняюсь. Допустим в индикаторе была переменная v1, а как ее получить в эксперте?

именно переменные никак, да и смысла в этом нет чаще всего.

Из индикаторов можно получить значения их буферов.

Ну или в индикаторе дописать сохранение необходимых Вам значений в GlobalVariable (глобальные переменные)

 
iCustom(Symbol(), Period(), "roc", 5000, 13, 21, 13, 5, 2, 0, i); т.е. я беру из 0 линии значение? в тот момент времени как к нему обращаюсь? i- номер бара это понятно, но как получить номер текущего бара?
 
nuan:
iCustom(Symbol(), Period(), "roc", 5000, 13, 21, 13, 5, 2, 0, i); т.е. я беру из 0 линии значение? в тот момент времени как к нему обращаюсь? i- номер бара это понятно, но как получить номер текущего бара?

текущий бар - нулевой (i = 0)

i = 1 - это значение на прошлом баре

и так далее в историю

 
Огромное спасибо за разъяснение.
Причина обращения: