немного изменить Zigzag

 

сделайте кто нибудь небольшие изменения в Зигзаге. Суть в следующем:

в стандартном ЗЗ меня интересует только 1, 2 или 3 последних отрезка. как сделать, чтоб он только их обсчитвал? Количество отрезков для обсчета вынесите в extern

Если не сложно сделайте сразу готовый измененный индикатор.

 

Запихните алгоритм ЗигЗага в советник, с запоминанием его крайних значений.

Будет обсчитывать вообще только крайний отрезок. Скорость максимально-возможная.

 
а пример можно ?
 

Talex такой зигзаг делал.

Также поищите здесь на форуме kharko предложил алгоритм быстрого зигзага. Считает только последние экстремумы. Красивый алгоритм.

 
 

я не просил усовершенствованный ZZ. Предложенный ZZ расчитывает отрезки только с предпоследненго бара.

Вообщем просьба в силе... Сам пытался разобраться, но что-то тяжело идет... Непонятно, что нужно ограничить...

 
dimeon:

сделайте кто нибудь небольшие изменения в Зигзаге. Суть в следующем:

в стандартном ЗЗ меня интересует только 1, 2 или 3 последних отрезка. как сделать, чтоб он только их обсчитвал? Количество отрезков для обсчета вынесите в extern

Если не сложно сделайте сразу готовый измененный индикатор.

Стандартный ЗигЗаг только их и обсчитывает - он не считает каждый раз по всей истории

есть даже переменная в коде, которая за это отвечает:

int level=3; // recounting's depth 
 
AlexSTAL:

Стандартный ЗигЗаг только их и обсчитывает - он не считает каждый раз по всей истории

есть даже переменная в коде, которая за это отвечает:


Это что-то новое. Где такой код?
 
nen:

Это что-то новое. Где такой код?

Этому новенькому уже 4 года

Мы с тобой этот вопрос уже обсуждали... зря я удалил переписку...

С какого-то числа 2007 года в стандартной поставке идёт оптимизированный ЗигЗаг: Zigzag R вот его шапка:

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Red
//---- indicator parameters
extern int ExtDepth=12;
extern int ExtDeviation=5;
extern int ExtBackstep=3;
//---- indicator buffers
double ZigzagBuffer[];
double HighMapBuffer[];
double LowMapBuffer[];
int level=3; // recounting's depth 
bool downloadhistory=false;
Вот здесь тоже можно что-то прочитать: https://www.mql5.com/ru/code/10074
 

А вот этот Zigzag2 R не соответствует описанию... Рош по моей просьбе поискал в архивах, но так и не смог найти исходников того, что планировалось опубликовать...

P.S. Оригинальная (из MT3) неоптимизированная версия лежит здесь: ZigZag

Причина обращения: