В этом посте я расскажу, как сделать симметричный осциллятор для МТ4.
На самом деле это очень просто и делается ценой одного буфера.
Покажу пример на базе индикатора MACD.
Есть два способа сделать его отображение относительно нуля -- очень простой и простой.
1. Задать одинаковые по модулю минимум и максимум у индикатора.
Этот способ очень прост. Но минусов у такого способа немало.
Во-первых их надо постоянно задавать.
Во-вторых амплитуда MACD очень сильно разнится на разных таймфреймах и инструментах. Даже если задавать их программно, это неудобно, потому что амплитуда может сильно отличаться даже на одном инструменте на значительном куске истории. Это значит что гистограмма будет мелкой, что очень неудобно.
Поэтом лучше использовать второй способ.
2. Завести дополнительный буфер у индикатора, который будет симметрично отражать максимальное по модулю значение всех буферов, и сделать его невидимым (стиль DRAW_NONE)
Результат можно увидеть на самой первой картинке. В итоге можно без труда совмещать несколько осцилляторов в одном окне без потери качества их отображения и получая допольнительные бонусы, например возможность их относительного визуального сравнения.
Пример симметричного MACD можно скачать здесь
Первый способ не подходит. Если задать одинаковый минимум и максимум у некоторых индикаторов, то один пропадает, так как он привязан к своим уровням.
ОтветитьУдалитьВторой способ я не понял. Как завести дополнительный буфер?
Если индикатор завязан на уровни, он обычно имеет заданный минимум и максимум.
ОтветитьУдалитьСмысл второго способа -- написать новый индикатор, который будет копировать буферы базового индикатора + дополнительный буфер специально для выравнивания шкалы.
Как этому научиться? У меня есть два осциллятора, которые я бы хотел трансформировать в один.
ОтветитьУдалитьНа самом деле на графике два индикатора, совмещенных в одном окне, МТ это позволяет, а за счет совмещения нулевой оси их удобно просматривать при таком отображении.
УдалитьВозможно ли такое сделать на индикаторе ClusterX_Delta?
ОтветитьУдалитьДа.
УдалитьВы можете попробовать это сделать сами на основе этой статьи :)
Понравился индикатор. Могли бы вы сделать также с индикатором TVI. А то я сам не программист. Ссылка на индикатор https://yadi.sk/d/xtpHe4fpoefMf
ОтветитьУдалитьПоспрашивайте на форумах, думаю найдете человека, который вам все реализует, в крайнем случае есть фриланс на mql5.com
УдалитьМожете помимо шаблона выложить готовый пример с первого скрина?
ОтветитьУдалитьв смысле два индикатора в одном подокне?
Удалитьтак там все просто
- качаете симметричный MACD из статьи и компилируете
- вешаете стохастик
- MACD перетаскиваете мышкой в подокно стохастика
Значит я не понял смысла доработки. Сперва решил, что можно заменить imacd на icustom, вписав второй индикатор и оба индикатора будут построены по одной нулевой линии Но тогда зачем вообще такая симметричность? Ведь шкалы всерно расходятся.
ОтветитьУдалитьдля нескольких индикаторов в одном подокне логично совместить уровни вокруг которых они осциллируют. смысл в картинке в начале статьи - макд и стохастик вполне органично и удобно совмещаются в одном подокне
Удалить