Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1036
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Тут: #10338
Спасибо. У компа буду, может гляну.
там в совсем-совсем старом формате индикатор под MQL4 написан, давно не трогал таких, не уверен, что помню как их писали
@zig2003 как вариант, попробуйте убрать из start() IndicatorBuffers(6);
а вверху исправьте #property indicator_buffers 6
Igor Makanu, а после того, как исправлю индюк, мне в советнике что с чем нужно будет сравнить, чтобы запрограммировать разворот?
каждый индикатор состоит из нескольких индикаторных буферов
при вызове индикатора из советника через iCustom() Вы получаете значение одного буфера на конкретном баре, эти значение Вы можете посмотреть в окне данных Ctrl+D
что и с чем сравнивать зависит от Вашей ТС, или значения буферов индикатора или буфер и цену - вариантов много
Вы бы для начала сделали бы советник по МАшке, а потом когда разберетесь вместо МА будете свой индикатор вызывать
в общем не так все просто - написал пару команд и готов советник
ЗЫ: разворот индикатора это сравнение нескольких значений индикаторных буферов, судя по Вашему скрину на баре №2 должны быть значения рядом с ценой буфера №1 и у остальных буферов будут EMPTY_VALUE значения, а на баре №1 наоборот у буфера №1 значение EMPTY_VALUE , а у какого то из 2 или 3 буфера будет значение отличное от EMPTY_VALUE - это все в окне обзор данных нужно смотреть (перемещаете стрелку мыши на барах и видите значения буферов)
Igor, спасибо, поправил индюк, но значение из буфера так и не появилось. Машки давно пройденный этап, там все просто, там две линии - два буфера. А тут одна линия и, похоже, один буфер. Обычно для подобных индикаторов, состоящих из одной линии, но с разными буферами для цвета, я пишу код так:
Но это только если каждому цвету назначен реальный буфер. При смене цвета на первом закрытом баре значение буфера становится больше нуля, а на предыдущем баре оно было либо равно нулю, либо буфер другого цвета был больше нуля. А из этого индюка никак не могу получить значение для второго, селловского цвета и непонятно что с чем сравнить, чтобы поймать разворот. Перепробовал все номера буферов. И это печалька, ибо этот Младеновский индюк, хоть и старенький, но весьма прилично трендит в ручных стратежках....Может кто-то догадается, как вытащить значение из второго буфера и записать формулу разворота?
Igor, спасибо, поправил индюк, но значение из буфера так и не появилось. Машки давно пройденный этап, там все просто, там две линии - два буфера. А тут одна линия и, похоже, один буфер. Обычно для подобных индикаторов, состоящих из одной линии, но с разными буферами для цвета, я пишу код так:
Но это только если каждому цвету назначен реальный буфер. При смене цвета на первом закрытом баре значение буфера становится больше нуля, а на предыдущем баре оно было либо равно нулю, либо буфер другого цвета был больше нуля. А из этого индюка никак не могу получить значение для второго цвета и непонятно что с чем сравнить, чтобы поймать разворот. И это печалька, ибо этот Младеновский индюк, хоть и старенький, но весьма прилично трендит в ручных стратежках....Может кто-то догадается, как записать формулу разворота?
Без всяких правок индикатора.
Что означают данные в двух буферах - в 0 и 1:
Смена направления (цвета) линии:
...
Но можно использовать и только буфер 1:
"Нет значения" здесь это EMPTY_VALUE. Ну или DBL_MAX - не важно, это одно и то же. Т.е., не ноль, а именно EMPTY_VALUE.
Может кто-то догадается, как вытащить значение из второго буфера и записать формулу разворота?
не нужно догадываться, нужно сначала переписать индикатор в нормальный вид соответствующий текущему состоянию языка MQL4
вот немного привел код в порядок, но не уверен, что не будет ошибок, не нравится мне исходник, но увы, что есть с тем и работал
вот вижу значения индикаторных буферов этого индикатора:
не нужно догадываться, нужно сначала переписать индикатор в нормальный вид соответствующий текущему состоянию языка MQL4
вот немного привел код в порядок, но не уверен, что не будет ошибок, не нравится мне исходник, но увы, что есть с тем и работал
вот вижу значения индикаторных буферов этого индикатора:
Он без переписывания работает, и очень просто позволяет получать свои данные. Я выше всё описал - стоило только глянуть на показания его буферов в окне данных (Ctrl+D)
Он без переписывания работает, и очень просто позволяет получать свои данные. Я выше всё описал - стоило только глянуть на показания его буферов в окне данных (Ctrl+D)
я выше писал, что не помню как работают функции IndicatorCounted() в старых индикаторах, новая форма индикаторов с OnCalculate() как то более понятная
ну вопрос вроде решен, ну и ладненько ;)