Новое в ZUP со 151 версии и далее. Дневник доработок. Чтобы не забыть.

Discussion in 'Зиг-Заг. Системы с использованием ZigZag.' started by nen, Feb 21, 2015.

Thread Status:
Not open for further replies.
  1. nen

    nen Well-Known Member

    Здесь будут публиковаться некоторые доработки, начиная с 21 февраля 2015 года.
    Это не значит, что будут выкладываться новые версии с данными доработками.
     
    1 person likes this.
  2. nen

    nen Well-Known Member

    21 февраля 2015 г.

    Ранее зигзаги расовались по данным в первом (нулевом) буфере индикатора.
    Это были всегда однобуферные зигзаги.
    Сегодня сделал вывод только двухбуферных зигзагов.
    Буферы, из которых берутся данные для прорисовки зигзагов, - два последних: седьмой и восьмой.
    В первом буфере данные остались те же, что были ранее. Но эти данные не используются для прорисовки зигзагов.
    Удалять их пока не буду. Это сделать в настоящий моменет очень сложно.

    В последних версиях метатрейдера в перечислении возможных таймфреймов задействован 21 таймфрем.
    Это сделано для совместимости с MQL5.
    В параметре Grossperiod заведено значение перечисления, то есть все 21 таймфрейм.
    Но в МТ4 используются стандартные 9 таймфреймов.
    Поэтому для режима DT необходимо выбирать стандартные таймфреймы.
    Остальные 21-9=12 таймфреймов можно использовать, если созданы нестандартные таймфреймы, например, с помощью программы периодконвертор.

    Адаптирован вывод наименований таймфреймов в соответствии с перечислением таймфреймов в текущей (новой) версии языка MQL4 везде, где на графике выводятся наименования таймфреймов.
     
    3 people like this.
  3. nen

    nen Well-Known Member

    24 марта 2015 г.
    Перевел поиск паттернов на двухбуферные зигзаги.
     
    1 person likes this.
  4. nen

    nen Well-Known Member

    Перевел стандартный zigzag на два буфера.
    Оптимиировал (упростил алгоритм) в стандартном зигзаге третий большой цикл - цикл сведения минимумов и максимумов в один буфер.
    Нет предела совершенствованию.

    Исключил первый буфер, использовавшийся для прорисовки однобуферного загзага.
    Далее этот буфер будет использоваться как второй буфер для зигзагов в режиме DT для вывода полосок.

    Двухбуферные стандартные зигзаги необходимы для совместимости с мультизигзагами (MZZ9).
     
    1 person likes this.
  5. nen

    nen Well-Known Member

    11 мая 2015

    Изменил алгоритм обработки внешнего бара в алгоритмах стандартного зигзага в ZUP и MZZ9.

    Обработка внешнего бара в зигзагах остается самой "скользкой" темой.
    По хорошему, надо исследовать поведение цены во внешнем баре чуть ли не до тиков, чтобы правильно отрисовывать зигзаг.
    Возможно, в будущем еще придется улучшать алгоритм обработки внешнего бара.
    Сейчас уже физически не хочется связываться с этой темой.
     
    1 person likes this.
  6. nen

    nen Well-Known Member

    Сегодня, наконец-то, перевел все зигзаги в двухбуферный режим.
    Попутно исправил замеченные ошибки. Надеюсь, не добавил новых ошибок.

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

    Ранее высказывал мнение, что невозможно заранее выставлять цели отработки для сформированных бабочек.
    Склоняюсь к тому, что цели в какой-то степени возможно более менее точно определить для волн Эллиотта.
    Но это отдельная песня. К тому же, на мой взгляд, разметка волн Эллиотта зависит от конкретного человека.
    Иными словами, сколько разметчиков, столько и разметок.
     
    1 person likes this.
  7. nen

    nen Well-Known Member

    В стандартном зигзаге сделал исследование внешнего бара для более правильной прорисовки зигзага.
    Для этого добавлен параметр externalBar

    Для совместимости с однобуферным зигзагом externalBar=0
    В алгоритме стандартного зигзага на внешнем баре всегда выводится максимум.

    Получаем такую картинку:

    USDCADH4_0.png

    При значении externalBar=1 выводится зигзаг совместимый с мультизигзагами (например, с MZZ9)
    MZZ9 также подкорректирую

    USDCADH4_1.png

    При externalBar=2 производится исследование поведение рынка на внешнем баре на таймфреймах более мелких по отношению к текущему.

    Получаем такую картинку:

    USDCADH4_2.png

    На часовом таймфрейме внешний бар для 4-хчасового тф находится в пределах выделенного прямоугольника:

    USDCADH1_0.png

    Видно, что на внешнем баре сначала по времени был минимум, потом максимум.

    Соответственно, в режиме совместимости с мультизигзагами получили неправильную прорисовку зигзага на внешнем баре.
    Не может на внешнем баре быть сначала максимум, а потом минимум.

    Исследование поведения цены внутри внешнего бара позволяет точнее прорисовывать зигзаг.
     
    2 people like this.
  8. nen

    nen Well-Known Member

    Под номером 9 в выборе зигзагов добавлен DT-Zigzag Fractals на основе индикатора фракталов. Алгоритм взял из MZZ9.
    Это стало возможным после перевода ZUP для работы с двухбуферными зигзагами.
    Далее займусь отладкой этого зигзага.
     
  9. nen

    nen Well-Known Member

    Все зигзаги переведены на двухбуферный режим.
    Экстремумы зигзагов заносятся в два буфера : 6 и 7
    В буфере 6 находятся минимумы
    В буфере 7 - максимумы
    В буферах 0 и 5 находятся максимумы и минимумы для вывода полосок DT зигзагов в режимаз с ExtIndicator 6 по 10

    Через вкладку цвета параметры линий зигзага - толщина, цвет и стиль меняются в 6 буфере.
     
  10. nen

    nen Well-Known Member

    Просто картинка.

    EURUSDMonthly_talex.png
     
  11. nen

    nen Well-Known Member

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

    В пятницу 04-09-2015 по евре на M15 во время НФП получили такую свечу:

    EURUSDM15.png

    В версии 150 и ниже прикрепить статические вилы к 4 экстремуму не получалось. И не выводились ценовые метки.
    Некоторое время назад сделал исправления. Вилы стало возможно прикреплять.

    EURUSDM15.png

    Но не выводился канал равновесия.

    Сделал вывод канала на подобной свече.
    До пятницы такая комбинация свечей давала такую картинку:

    EURUSDM15.png

    В пятницу исправил вывод канала равновесия:

    EURUSDM15.png

    И подобных исправлений сделано множество. Но все равно еще иногда выплывают ошибочные картинки.
    Так что еще погоняю в тестовом режиме 151 версию.
     
    6 people like this.
  12. nen

    nen Well-Known Member

    Необходимо ввести в ZUP, как минимум еще одно значение ExtIndicator=15, а, возможно, и больше.
    В ExtIndicator=15 сделать возможность формирования девяти зигзагов в ручном режиме.
    После формирования этих зигзагов создать опцию наложения полученных зигзагов или сопутствующей к данным зигзагам информации на зигзаги во всех остальных ExtIndicator.
    Это для начала.

    Возможно в дальнейшем сделать ExtIndicator=16 с мультизигзагом с подвариантом ручного изменения положения экстремумов.

    Вариантов новшеств с зигзагами много. Сложно выбрать правильный порядок их ввода.
     
    2 people like this.
  13. nen

    nen Well-Known Member

    Сделал в режиме ExtIndicator=15 на чистом графике возможность создания волновой разметки с одновременным созданием 10-ти уровневого зигзаг.
    Каждый зигзаг привязан к определенному волновому уровню. Цвет зигзага соответствует цвету вывода соответствующего уровня волновой разметки.
    Метки волн автоматически выстраиваются в иерархию по вертикали над/под максимумом/минимумом бара. При смене таймфреймов и изменении масштаба графика волновая разметка автоматически позиционируется односительно баров на определенном расстоянии.

    Ниже приведен пример разметки. Не обязательно критиковать данную разметку. Это просто пример. Показано, как все будет выглядеть.

    EURUSDMonthly.png

    Это только начало.
     
    9 people like this.
  14. nen

    nen Well-Known Member

    Исправлена ошибка при привязке вил Эндрюса в режиме привязки к произвольным свечам ExtCustomStaticAP.


    Сделал автоматический вывод только тех зигзагов (волновых вершин) которые выводятся на график без искажений.
    То есть чтобы не лепились волновые вершины друг на друга при увеличении таймфрейма.

    H4:
    EURUSDH4.png

    D1:
    EURUSDDaily.png

    W1:
    EURUSDWeekly.png

    Mn:
    EURUSDMonthly.png
     
    7 people like this.
  15. nen

    nen Well-Known Member

    В продолжение предыдущего поста.
    Разметка волн условная. Сделана просто чтобы показать функционал.

    Волны одного волнового уровня на разных участках графика имеют различный фрактальный размер.
    При изменении таймфрейма волны меньшего фрактального размера "исчезают" раньше волн большего фрактального размера несмотря на то, что они относятся к одному волновому уровню.

    На картинках показано это на примере волнового уровня Minuette :

    D1
    EURUSDDaily.png

    W1
    EURUSDWeekly.png

    Mn
    EURUSDMonthly.png

    При сжатии информации в барах при увеличении таймфрейма возникают искажения.
    Все моноволны одного волнового периода, у которых хотя бы в одной моноволне возникают искажения, не выводятся на график.
    Не выводятся те моноволны, которые входят в одну моноволну старшего волнового периода.
     
    6 people like this.
  16. nen

    nen Well-Known Member

    Сейчас для нанесения символов волновой разметки используется перемещение вертикальной линии.
    1) Выбирается необходимый символ щелчком мыши.
    2) Появляется вертикальная линия, которая перемещается вместе с курсором мыши.
    Если курсор проходит над барами, то вертикальная линия синяя.
    Если под барами, то линия красная.
    Если курсор проходит через тело бара или курсор находится правее первого бара, то линия серая в виде коротких штрихов.
    Если линия проходит над/под экстремумом - над/под баром с экстремумом, то есть справа и слева от экстремума бары ниже/выше, то линия становится сплошной.
    А если линия проходит не над/под экстремумом, то линия состоит из длинных пунктиров.
    И картинки примеров.

    1) Курсор справа и на теле бара. Линия из коротих серых пунктиров.

    EURUSDH1_gray.png EURUSDH1_gray1.png

    2) Курсор над/под баром без экстремума. Линия из длинных синих/красных пунктиров.

    EURUSDH1_h.png EURUSDH1_L.png

    3) Курсор на/под баром с экстремумом. Линия сплошная синяя/красная.
    EURUSDH1_high.png EURUSDH1_low.png

    Таким образом графический образ линии помогает понять, в каком месте находится курсор и
    подсказывает, где лучше нажать левую клавишу мыши, чтобы нанести символ волновой вершины.
     
  17. nen

    nen Well-Known Member

    Сделал возможность "альтернативной" разметки.
    Допустим, непонятно, какой симол прикрепить к волновой вершине.
    Или вообще обозначения волн не интересуют.
    Или просто надо создать зигзаг.

    Эта "альтернативная" разметка выводится так:

    EURUSDMonthly.png

    Несколько дней потратил, чтобы понять, как сделать эту альтернативную разметку.
    Сначала хотел выводить точками (закрашенными кругами) разных размеров.
    Сделал графическую кнопку. Жена сваяла. Но оказалось, что средвста MQL не позволяют это реализовать.
    Пришлось выводить разметку буквой "о". Перелопачивать код заново. Заодно выявляются недоработки - читай, ошибки кода.
    Чтобы отловить эти ошибки, можно мозги вывихнуть. Иногда возникают кажущиеся непроходимыми ситуации.
     
    2 people like this.
  18. nen

    nen Well-Known Member

    Сделал разметку, которая с точки зрения волновиков не выдержит критики.
    Но тут важно другое.
    Последние две волны Minute - [ii] и [iii] и далее две волны младшего волнового уровня Minuette - (i) и (ii).

    EURUSDDaily.png

    При переходе с D1 на W1 сначала исчезают моноволны Minute , а не Minuette .
    Получается как бы подсказка, что что-то в разметке неправильно.

    EURUSDWeekly.png

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

    На второй картинке проявилась странность в разметке. Пусть пока остается такая странность. Пока нет идей, какие внести изменения в алгоритм для устранения этой странности. Сейчас эта странность как бы подсказывает - что-то неправильное в волновой разметке.
     
    3 people like this.
  19. nen

    nen Well-Known Member

    Варианты волновых разметок привязал к значению ExtComplekt.
    То есть сделали волновую разметку при одном значении ExtComplekt.
    Поставила другое значение ExtComplekt. Делаем новый вариант разметки.
    Можно сделать столько вариантов волновых разметок, сколько выдержит жесткий диск компьютера.
    В дальнейшем, чтобы перейти на один из созданных вариантов, достаточно изменить значение ExtComplekt.
     
    2 people like this.
  20. nen

    nen Well-Known Member

    Вчера встроил волновой зигзаг http://www.onix-trad...игзаг-волновой/ в ZUP. Версия 3.9 волнового зигзага.
    Сейчас вылавливаю ошибки, появившиеся при встраивании. Волновой зигзаг можно выводить при любом значении ExtIndicator.
    Но при ExtIndicator=15 он выводится на чистый график. Этот режим ExtIndicator=15 - чисто для волновиков. Остальные режимы ExtIndicator позволяют сверить волновые разметки с выводимым на график зигзагом. Сделал привязку различных вариантов волновой разметки не с параметром ExtComplekt, а с другой внутренней переменной. То есть волновая разметка может быть выбрана любая из имеющихся с любым комплектом ExtComplekt ZUP.

    Наверное, в первую очередь попробую отстроить правильный вывод золотой спирали http://www.onix-trad...лотой-спиралью/
    А потом уже буду организовывать привязку с помощью мыши всех ранее сделанных графических построений к выбранным точкам на графике. Под выбранными точками в данном случае понимаются номера экстремумов зигзагов либо волновые вершины волновой разметки.

    Параллельно ведется отладка поведения разных графических менюшек для работы с мышью. Отлаживается вывод тултипов в зависимости от сложившейся конфигурации выделенных кнопок меню. И идет обдумывание, каким образом грамотно сделать дальнейшее поведение интерфейса и структура базы данных для хранения графических построений.
     
    2 people like this.
Thread Status:
Not open for further replies.

Share This Page