Экономный ZigZag - страница 4

 

Сделал. От ZigZag_NK ничего не осталось.

Алгоритм оптимизации простенький. Приснился...

Возможно, еще код можно оптимизировать. А так - все работает.

На картинке из тестера: желтый - ZigZag_NK, магента последний вариант MultiZigZag.

Здесь показана та ошибка, с которой боролся.

Не проверял в работе. Может быть, выплывут какие-нибудь косяки. Но с ними просто. Исправим.

Файлы:
 

Отрихтовал код. Предыдущая версия подвешивала терминал при подкачке истории.

Здесь все оптимально. Исправлены все ошибки...

Это не самый быстрый зигзаг.

Задача была исправить ошибки классического, поставлявшегося с МТ4 2-3 года назад, зигзага.

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

Файлы:
 

Здесь 'MultiZigZag - еще один вариант зигзага. (Экономный зигзаг)' находится окончательная версия от 05 ноября 2008 г.

 
Eugeni Neumoin:

За основу взят зигзаг Николая Косицина.
Но внесены исправления и небольшие дополнения.

1) Исправлена прорисовка зигзага. Переломы зигзага всегда находятся на High
или Low бара. Повисших в воздухе переломов нет.
Также при подкачке истории зигзаг не повисает в "воздухе".

2) Расчет зигзага производится только тогда, когда цена выходит за пределы
уже посчитанной части нулевого бара. То есть не на каждом тике.
3) Введена внешняя переменная, которая задает количество баров,
на которых рассчитывается зигзаг.

Евгений, приветствую !
я посмотрел описание параметров в исходнике:

ExtDepth, ExtDeviation и ExtBackstep - стандартные параметры для зигзага.
Если задать ExtDepth=0, то соответствующий зигзаг выводиться не будет.
ExtMaxBar - количество баров, на которых рассчитывается зигзаг.
GrossPeriod - периоды графиков, по данным с которых строится зигзаг. При записи 0 или нестандарного значения зигзаг выводится на текущем таймфрейме.
ExtReCalculate - количество экстремумов зигзага, начиная с 0, обнуляемых при пересчете в режиме реального времени. Применяется для зигзагов со старших таймфреймов.

... и задался Вопросом: "А ДЛЯ ЧЕГО было дублировать такой параметр как "Depth" (?),
ведь "GrossPeriod" - это по сути - и есть тот-же самый стандартный "Depth" (!)

Получилась "тафтология", которая ... работает ! ... но на сколько корректно - Автору виднее !

//-------------------------------

... я тут позволил себе озадачить ИИ-шку чтобы сконвертировал сей ZZ_MultiZigZag с МТ4 -->> на МТ5 !

Автора прошу проверить на корректность работы - что отрисовует правильно, как в оригиналной версии мт4 !

(ну и прошу Автора - добавить файл .mq5 на страницу Продукта ( https://www.mql5.com/ru/code/8536 )

MultiZigZag - еще один вариант зигзага. (Экономный зигзаг)
MultiZigZag - еще один вариант зигзага. (Экономный зигзаг)
  • 2008.11.01
  • www.mql5.com
Данная версия зигзага может одновременно выводить три зигзага как по данным с текущего таймфрейма, так и по данным с более старших таймфреймов.
Файлы: