Индикаторы: Идеальный ЗигЗаг

 

Идеальный ЗигЗаг:

Ультрабыстрый зигзаг на максимально простом принципе. Без висящих вершин. С поддержкой оптимизированного по времени нахождения вершин.

Достоинства:

  1. Самая тяжелая функция в расчетах - iBarShift, которая полностью замещает ненужные циклы для поиска вершин, была заменена на ArrayBSearch, а это значит, индикатор будет работать еще эффективнее аналога на MQL4;
  2. Вся необходимая информация для каждого бара не только доступна в любой момент истории, но и также доступна советнику для любого момента истории;
  3. Никаких висящих вершин;
  4. Возможность эффективного поиска вершин без перебора значений индикатора;
  5. Очень быстрая работа;
  6. Корректная обработка вставки истории и переключения таймфреймов;
  7. Незаменим для работы в советниках.

Недостатки:

  1. Затраты памяти. Для корректной отрисовки зигзагу надо 2 буфера (1 мало, будут висяки), здесь используется 5. Полностью компенсируется (имхо) достоинством № 6. Ни один быстрый зигзаг по определению не может корректно обрабатывать вставку истории на двух буферах.
  2. Рисование дополнительных линий. Нужно для того, чтобы они были видны советнику. Значения порядка таких величин, которые не должны быть видны ни при каком раскладе.

Идеальный ЗигЗаг

Автор: Андрей

 

Спасибо! По графику видно, что очень правильно рисует! А есть у Вас версия для 4етвёрки? Хотелось бы попробовать! Успехов!

 
borilunad:

Спасибо! По графику видно, что очень правильно рисует! А есть у Вас версия для 4етвёрки? Хотелось бы попробовать! Успехов!

Да, конечно, тут -- https://www.mql5.com/ru/code/10671
 
TheXpert:
Да, конечно, тут -- https://www.mql5.com/ru/code/10671
Большое спасибо! Только не сердитесь, пожалуйста! Всё обойдётся! Удачи!
 

Извините, беспокою Вас тут, т.к. на 4етвёрке я забанен! Это "Взятие вершин" версия индикатора или нужно использовать вместе с основным? Мне неясно, как их совмещать? И если совмещать, или нет, то как вызывать их советником? В общем, надеюсь на Вашу помощь! Спасибо!

 
borilunad:

Это "Взятие вершин" версия индикатора или нужно использовать вместе с основным? Мне неясно, как их совмещать?

Нет, взятие вершин это именно взятие вершин.

Если работать с индикатором (в советнике например), то узнать информацию по вершинам корректно можно только предложенным способом.

Т.е. цикл с пробегом по истории для нахождения вершин не канает. Это было сделано осознанно и специально.

Это особенность индикатора. Не сказать чтобы плохая :) .

 
TheXpert:

Нет, взятие вершин это именно взятие вершин.

Если работать с индикатором (в советнике например), то узнать информацию по вершинам корректно можно только предложенным способом.

Т.е. цикл с пробегом по истории для нахождения вершин не канает. Это было сделано осознанно и специально.

Это особенность индикатора. Не сказать чтобы плохая :) .

Что-то я затупился! Что я должен сделать? В индикаторе основном нет в коде названия, по которому вызвать в советнике. Во "Взятии вершин" есть, но как это всё соединить с советником? Извините, случай не типичный! Можете объяснить пошагово, пожалуйста!
 

Вызывать по имени файла в директории.

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

 
Karlson:

Вызывать по имени файла в директории.

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

Спасибо! Но я на 4етвёрке!
 
borilunad:
Спасибо! Но я на 4етвёрке!
Там примерно то же самое.
 
TheXpert:
Там примерно то же самое.
Я знаю это! Прошу Вас объяснить: Основной индикатор нужен? Если да, как его вызвать, если в коде нет названия или это пишут только для отдельных окон? И "Взятие вершин", если необходимо, вставлять фрагмент кода в советник или также использовать, как отдельный индикатор, и также вызывать его советником? Использовать 2 индикатора или один? Для меня этот случай нетипичный, потому что-то путаю. Для Вас просто и для меня будет просто с Вашим объяснением! Не обессудьте! Может, моему советнику не хватает как раз Ваш индикатор!
Причина обращения: