Ваши вопросы по языку MQL4

qqmber

Почетный гражданин
А как же они достигают того,что в тестере стрелка отрисовывается ну ,может,на 1 или 2 бара назад ,от идущей цены?Вот сейчас еще раз глянул - так и есть....

Индикатор в будущее заглядывает, вызывая сам себя на старшем таймфрейме. Тестер такие вызовы не умеет корректно обрабатывать.
 

asers1111

Активный участник
Индикатор в будущее заглядывает, вызывая сам себя на старшем таймфрейме. Тестер такие вызовы не умеет корректно обрабатывать.
Извините за мою приставучесть,а не можете ли вы показать мне строчкой кода,как всеже брать показания с такого индюка?Я бы очень признателен был.....
 

qqmber

Почетный гражданин
Извините за мою приставучесть,а не можете ли вы показать мне строчкой кода,как всеже брать показания с такого индюка?Я бы очень признателен был.....

Мне как кажется, самой меньшей кровью можно обойтись, если добавить в индикатор пару буферов для стрелок вверх/вниз и заполнять эти буфера параллельно с рисованием-стиранием, тогда до них можно будет дотянуться из советника.
 

asers1111

Активный участник
Мне как кажется, самой меньшей кровью можно обойтись, если добавить в индикатор пару буферов для стрелок вверх/вниз и заполнять эти буфера параллельно с рисованием-стиранием, тогда до них можно будет дотянуться из советника.
О-о-о,тут мои знания находятся в полном провале....Мне этого не взять самому.А вас можно попросить такое дело проделать?
 

qqmber

Почетный гражданин
О-о-о,тут мои знания находятся в полном провале....Мне этого не взять самому.А вас можно попросить такое дело проделать?

Да ладно, это ж элементарная операция. Держи, одного дополнительного буфера хватит, если в нем +1 - стрелка вверх, -1 - стрелка вниз.
Посмотреть вложение asers1111.mq4
 

qqmber

Почетный гражданин
Да ладно, это ж элементарная операция. Держи, одного дополнительного буфера хватит, если в нем +1 - стрелка вверх, -1 - стрелка вниз.
Посмотреть вложение 149520

Поспешишь - людей насмешишь :)
В коде надо закомментить IndicatorBuffers(3), иначе четвертый буфер не появится.
 

mak_kam

Новичок форума
Не проблема закодить, проблема в чтобы соответствовало техзаданию. :D
Смысл в сильном профитном движняке, как корекция пошла так и закрываемся по рынку. (N пунктов откатила.)

Да Вы абсолютно правы, работа на новостях - выставляем 2 отложеника, если один зацепило другой удаляем,
следим за ценой ждем отката и закрываемся...
вот что я на (ш)кодил...Посмотреть вложение mak_kam.mq4
ничего не работает:not-good::disappointed:
 

ansol

Местный знаток
А где в названии канал? А при чём тут конверт Боллинжера? А при чём тут Envelopes?
Конверт Боллинжера и Envelopes имеют каналы, так же как канал регрессии, Price Channel...
Ни один из выше приведённых каналов не имеет отношения к ATR, тем более ATR не является каналом.
В конверте Боллинжера есть индикатор волатильности Standart Deviation. Но то что господин Боллинжер собрал свой конверт из МА и Standart Deviation не означает что Standart Deviation или МА это канал.
С использованием ATR то же можно собрать канал, но это совсем не означает что средняя длинна свечей это канал.
Envelopes например состоит из МА, так что теперь МА надо считать каналом?
Да как хошь так и считай. Range - диапазон или ширина канала по-русски. Если у тебя другое видение процесса, то и бог с ним. Тут дело не в стратегии, а в программировании - все индюки получаются из цен хай, лоу, опен, клоз, из них выделяются средние и т.д. Вы можете результат использовать в своих целях или пересчитывать самостоятельно с нуля.
Не вопрос!
Только странно бы волатильность оценивать по ширине канала и при этом отрицать трейлинг по этой же самой ширине. Ну... Бывает :not-bad:
 
Последнее редактирование модератором:

Ugar

Гуру форума
Да как хошь так и считай. Range - диапазон или ширина канала по-русски. Если у тебя другое видение процесса, то и бог с ним. Вон тут еще одын спэц не может из ATR трейлинг получить(не умеет он на Point делить).
Тут дело не в стратегии, а в программировании - все индюки получаются из цен хай, лоу, опен, клоз, из них выделяются средние и т.д. Вы можете результат использовать в своих целях или пересчитывать самостоятельно с нуля.
Не вопрос!
Только странно бы волатильность оценивать по ширине канала и при этом отрицать трейлинг по этой же самой ширине. Ну... Бывает :not-bad:
Диапазон и канал не одно и то же. _http://ru.wikipedia.org/wiki/%C4%E8%E0%EF%E0%E7%EE%ED
Диапазон колебания цены внутри свечи это от high до low, то есть длина свечи. Если есть гэп, он учитывается в диапазоне. Средний диапазон, это средняя длинна свечей, с учётом гэпов. Нет там никакого канала. И индикатор отображает линию, а для канала нужно минимум 2 линии.
Не веришь? Поставь на график ATR с периодом 1 и сравни его показание с длинной свечи. А ещё можешь открыть код индикатора, он есть в терминале.

Кстати, для использования в трейлинге, ATR делить на Point не надо.
 
Последнее редактирование:

ansol

Местный знаток
Диапазон и канал не одно и то же. _http://ru.wikipedia.org/wiki/%C4%E8%E0%EF%E0%E7%EE%ED
Диапазон колебания цены внутри свечи это от high до low, то есть длина свечи. Если есть гэп, он учитывается в диапазоне. Средний диапазон, это средняя длинна свечей, с учётом гэпов. Нет там никакого канала. И индикатор отображает линию, а для канала нужно минимум 2 линии.
Не веришь? Поставь на график ATR с периодом 1 и сравни его показание с длинной свечи. А ещё можешь открыть код индикатора, он есть в терминале.

Кстати, для использования в трейлинге, ATR делить на Point не надо.

Зато словоблудие и википедия - одно и то же!
Оне, видите ли, не могу прибавить к цене ATR, поэтому ATR как трейлингом пользваться нельзя.
У них, кидите ли "канал" обозначает что-то другое, чем "диапазон" :D
 
Последнее редактирование модератором:

Milord

Местный знаток
Вопрос для профи???

я конечно изучал мнимые числа,но чет не могу понять - (даже сон не идет) - каким образом математически вогнали индюки как(RSI,CCI,Stochastik или %R) в диапазон 0...100 или -100...0 или -100...+100, от диапазона и названия индюка суть вопроса не меняется...
как математически обыграли диапазон на выходе индюков, если на входе цена меняется в несколько тысяч пипсов...???
ответьте плиз ясно и понятно для учеников MQL4
ЗАРАНЕЕ СПАСИБО!)
 
Последнее редактирование:

ShadowCandle

Гуру форума
я конечно изучал мнимые числа,но чет не могу понять - (даже сон не идет) - каким образом математически вогнали индюки как(RSI,CCI,Stochastik или %R) в диапазон 0...100 или -100...0 или -100...+100, от диапазона и названия индюка суть вопроса не меняется...
как математически обыграли диапазон на выходе индюков, если на входе цена меняется в несколько тысяч пипсов...???
ответьте плиз ясно и понятно для учеников MQL4
ЗАРАНЕЕ СПАСИБО!)
Хватит пихать "сюда" мнимые числа, тут всё, практически, сделано в обычной математике, для понимания процесса просто взгляните на формулы да хотя бы на сайте разработчиков МТ, к примеру тот же WPercentRange, даже из названия речь о процентах от диапазона, то есть расстояние от максимума до минимума взятых за период расчёта есть 100 процентов, а минус в значениях только из-за взятой точки отсчёта (верхняя граница максимумов) и текущего значения цены закрытия бара относительно этой точки, была бы нижняя граница был бы плюс от 0 до 100, просто "Вильямсу" было, видимо, так удобнее, есть вообще этот индикатор в виде обычного канала на графике с двумя уровнями, поищите на том же MQL5.com в маркете "Larry Williams Percent Range on Chart"
 
Последнее редактирование:

ShadowCandle

Гуру форума
Зато словоблудие и википедия - одно и то же!
Оне, видите ли, не могу прибавить к цене ATR, поэтому ATR как трейлингом пользваться нельзя.
У них, кидите ли "канал" обозначает что-то другое, чем "диапазон" :D
Не стоит всё переводить дословно, значение Range ещё можно перевести и как "ряд", и как "дальность", по сути это среднее значение максимального диапазона разброса цен, смотрите не на название индикатора, а в его суть, то есть формулы, или хотя бы описание расчёта.
Истинный диапазон (True Range) есть наибольшая из следующих трех величин:
-разность между текущими максимумом и минимумом;
-разность между предыдущей ценой закрытия и текущим максимумом;
-разность между предыдущей ценой закрытия и текущим минимумом.
Индикатор Среднего Истинного Диапазона (Average True Range, ATR) представляет собой скользящее среднее значений истинного диапазона.
 
  • Like
Реакции: Ugar

Milord

Местный знаток
Не стоит всё переводить дословно, значение Range ещё можно перевести и как "ряд", и как "дальность", по сути это среднее значение максимального диапазона разброса цен, смотрите не на название индикатора, а в его суть, то есть формулы, или хотя бы описание расчёта.
Истинный диапазон (True Range) есть наибольшая из следующих трех величин:
-разность между текущими максимумом и минимумом;
-разность между предыдущей ценой закрытия и текущим максимумом;
-разность между предыдущей ценой закрытия и текущим минимумом.
Индикатор Среднего Истинного Диапазона (Average True Range, ATR) представляет собой скользящее среднее значений истинного диапазона.
мнимые числа не забуду никогда))ибо на них построены законы Кирхгофа...
а если серьезно, то спасибо за комент, уже нашел формулу RSI, другое дело неясно если известен диапазон минимум-максимум из определенного временного интервала, как тогда учитывается будущие цены, ведь они могут выйти из диапазона...

P.S. думаю на счет диапазона ATR вы малость погорячились..ибо как вы сказали нужно смотреть в суть вещей!

а суть такова - диапазон частот в радиовещании например называется каналом, в телевидении 12 метровых каналов, каждый имеет свой диапазон частот эфира...
аналогично с любым индюком МТ4, его диапазон можно также назвать каналом определенной формы,а кто сказал что канал всегда ровный и параллельный?):)
молния пробивает в воздухе ветвистый канал разряда...)
 
Последнее редактирование:

ShadowCandle

Гуру форума
мнимые числа не забуду никогда))ибо на них построены законы Кирхгофа...
а если серьезно, то спасибо за комент, уже нашел формулу RSI, другое дело неясно если известен диапазон минимум-максимум из определенного временного интервала, как тогда учитывается будущие цены, ведь они могут выйти из диапазона...

P.S. думаю на счет диапазона ATR вы малость погорячились..ибо как вы сказали нужно смотреть в суть вещей!

а суть такова - диапазон частот в радиовещании например называется каналом, в телевидении 12 метровых каналов, каждый имеет свой диапазон частот эфира...
аналогично с любым индюком МТ4, его диапазон можно также назвать каналом определенной формы,а кто сказал что канал всегда ровный и параллельный?):)
А с чего вы взяли, что будущие цены учитываются? Только старые и текущие, не пытайтесь придать индикаторам свойства, которых в них нет. По большому счёту индикатор - это не более чем формула наложенная на значения OHLCV баров графика :)
И причём тут ровный или параллельный, не усложняйте простые вещи, что такое АТР, по хорошему это среднее значение размера баров от H до L взятое за период и ничего больше, то есть амплитуда колебаний цены, но амплитуда ничего не знает о диапазоне, то есть по индикатору АТР применимо к вашему сравнению вы не сможете сказать минимум или максимум диапазона, а знаете только его середину :) Разве можно судить о ширине реки зная только где у неё середина, но не зная где левый или хотя бы правый край?.. Вот об этом и речь, что дело не в википедии, а в смысле слова ATR это не диапазон, а среднее значение диапазона.
Что же касается выхода из канала, то в случае с WPR канал расширяется вместе с расширением диапазона и выхода из него быть не может, поэтому значения всегда 0 - 100. RSI сделан также в виде процентов по простому говоря вы видите отношение приращений Плюс и Минус, то есть может быть две крайности все приращения только положительные 100% или только отрицательные 0%, ну и в случае равенства получите 50/50 или 50% от общего количества.
По поводу CCI, то есть "типичные" цены и чем сильнее от них отклонение, тем сильнее значение в плюс или минус, но "типичная" цена постепенно подтягивается за ценой и поэтому со временем текущая цена снова становится равна "типичной" ну и так далее... Всё просто и понятно, главное вникнуть :)
 
Последнее редактирование:

Milord

Местный знаток
...что такое АТР, по хорошему это среднее значение размера баров от H до L взятое за период и ничего больше, то есть амплитуда колебаний цены, но амплитуда ничего не знает о диапазоне, то есть по индикатору АТР применимо к вашему сравнению вы не сможете сказать минимум или максимум диапазона, а знаете только его середину :) Разве можно судить о ширине реки зная только где у неё середина, но не зная где левый или хотя бы правый край?.. Вот об этом и речь, что дело не в википедии, а в смысле слова ATR это не диапазон, а среднее значение диапазона.
спасибо за подсказки и инфу по моему вопросу индюков(RSI,CCI,%R)...кажется все прояснилось...
теперь что касается индюка ATR, а точнее не самого его, а сути понятия диапазон, канал и среднее значение диапазона, попытаюсь доказать ваше ошибочное мнение...надеюсь без обид, так как тоже могу ошибиться, но тем не менее,дискуссия с аргументами всегда обогащает обе стороны...
так вот, продолжим вашу аналогию реки, река например имеет самое узкое место шириной 10 метров(наша разность High-Low), в самом широком месте 20 метров(разность High-Low), таким образом по двум значениям мы имеем среднюю разность (20+10)/2=15 метров, так вот наша река(канал) имеет среднюю ширину(диапазон)=15 метров, а вы говорите что нам известна середина реки, мы же знаем не середину, а среднее значение ширины(диапазона) реки(канала),а это разные вещи...для примера взял лишь минимум и максимум ширины(диапазона)всей реки(канала) ...
неужели многие забыли великий русский язык, и не могут понять что диапазон,это и есть ширина...:D
 
Последнее редактирование:

AlexeyVik

Программист mql4 mql5
Ну, приходится пользоваться тем, что дают. Работаем по-тихоньку :)

так и есть)):D метаквоты часто пишут "шедевры" не поддающиеся нормальной логике среднего программиста:facepalm:
например, чтобы модифицировать ордер, надо выбрать через OrderSelect, А нах... тогда в OrderModify тикет самого ордера передаём???:facepalm:
в математике это называется избыточная информация, или дублирование функций,параметров,и как следствие неэффективный код и запутывание начинающих осваивать MQL4

Только-что специально для вас проверил, OrderModify() работает БЕЗ выбора ордера функцией OrderSelect()
Так-же без выбора ордера работает удаление отложек OrderDelete()
Всё остальное нет необходимости проверять.
 
Последнее редактирование модератором:

ShadowCandle

Гуру форума
спасибо за подсказки и инфу по моему вопросу индюков(RSI,CCI,%R)...кажется все прояснилось...
теперь что касается индюка ATR, а точнее не самого его, а сути понятия диапазон, канал и среднее значение диапазона, попытаюсь доказать ваше ошибочное мнение...надеюсь без обид, так как тоже могу ошибиться, но тем не менее,дискуссия с аргументами всегда обогащает обе стороны...
так вот, продолжим вашу аналогию реки, река например имеет самое узкое место шириной 10 метров(наша разность High-Low), в самом широком месте 20 метров(разность High-Low), таким образом по двум значениям мы имеем среднюю разность (20+10)/2=15 метров, так вот наша река(канал) имеет среднюю ширину(диапазон)=15 метров, а вы говорите что нам неизвестна середина реки, мы же знаем не середину, а среднее значение ширины(диапазона) реки(канала),а это разные вещи...для примера взял лишь минимум и максимум ширины(диапазона)всей реки(канала) ...
неужели многие забыли великий русский язык, и не могут понять что диапазон,это и есть ширина...:D
В случае с рекой всё просто, но в случае с ценой сложнее, где по вашему находится середина (исходная точка отсчёта) цены для этого канала? АТР - это не канал это амплитуда! Если я вам скажу, что диапазон волн 200Гц, вам будет понятно о какой частоте речь? Сможете построить канал? Или говоря по другому, применимо к реке у вас есть судно шириной 12 метров, сможете проплыть по реке, зная только ширину в 15 метров?.. По идее да, но по факту нет, ведь есть места всего в 10 метров, кроме того изгибы и прочее, то есть становится вопрос в том, как использовать эту информацию... В общем нужен предметный разговор, абстрактно тут рассуждать неправильно, вот об отсутствии точки отсчёта для индикатора АТР и шла речь, там есть среднее значение (амплитуда), но нет верхней и нижней границы, то есть это ну никак не канал, другое дело если за основу взять МА и получить две границы используя отступ равный амплитуде с заданным коэффициентом, то есть канал кельтнера...
 
Последнее редактирование:
Верх