ZUP - зигзаг универсальный с паттернами Песавенто. Поиск паттернов
Введение
Поиск паттернов на ценовых графиках интересен многим трейдерам. Это можно делать в индикаторной платформе ZUP. Есть несколько вариантов работы с платформой. Во-первых, можно искать уже известные паттерны, параметры которых жестко заданы. Во-вторых, можно подстраивать параметры под свои требования. И, в-третьих, можно создавать собственные паттерны с помощью графического интерфейса ZUP и сохранять их параметры в файл. Это дает возможность быстро проверить, встречаются ли такие новые паттерны на графиках.
Паттерны описывали многие авторы. Среди них не упомянуть Гарольда Гартли. Еще в 1935 году он опубликовал книгу "Доход на фондовом рынке". На одной из ее страниц была приведена картинка с паттерном и краткое описание, как его можно использовать для торговли. Эту тему начали широко развивать только через несколько десятилетий: было описано множество новых паттернов. Среди всех их авторов один из наиболее известных — Скотт Карни. Он разработал паттерны the Gartley, the Bat, the Butterfly, the Crab и другие. На все из них Скотт Карни оформил авторское право в 2016 году.
Есть множество алгоритмов поиска паттернов. Например, можно выбирать экстремумы на графике, "натягивать" между ними сетку Фибоначчи и определять возникновение паттерна по достижению рынком характерных уровней. Этот алгоритм используется и при ручном поиске, и в некоторых программах. Другой вариант — чисто программный. Алгоритм, заложенный в программе, находит экстремумы, проверяет их взаимное расположение, и если оно соответствует какому-то паттерну, выводится сообщение о том, что он найден.
В индикаторной платформе ZUP реализовано множество возможностей для поиска паттернов. Можно строить их вручную. Но основной алгоритм — автоматизированный поиск паттернов на экстремумах рынка, определенных с помощью различных зигзагов. В версиях ZUP до 151 включительно режимы поиска паттернов задавались с помощью параметров. Но параметров, которые могут повлиять на поиск паттернов, более 100, и такое их обилие затрудняет работу. В версии 152 появилась возможность работать с помощью графического интерфейса. Базовые настройки задаются с помощью параметров, а быстрое подключение паттернов к поиску теперь происходит с помощью графического интерфейса.
Все параметры для простоты использования разделены по группам. Перечислю группы параметров, которые влияют на поиск паттернов.
- Параметры настройки зигзагов.
- Параметры настройки уровней Фибоначчи (1 - Parameters for fibo Levels).
- Параметры для паттернов Песавенто (2 - Parameters for Pesavento Patterns).
- Параметры для паттернов Гартли (3 - Parameters for Gartley Patterns).
- Общие параметры (15 - Common Parameters).
Также есть множество встроенных графических инструментов, которые помогают в поиске паттернов.
В первой части статьи мы поговорим о том, каким образом в 152 версии ZUP реализовано подключение к поиску паттернов с помощью графического интерфейса. Затем я расскажу о параметрах для поиска паттернов Гартли, и в заключении статьи мы вкратце пройдемся по другим паттернам.
Часть первая. Графический интерфейс для работы с паттернами
В версию 152 были добавлены элементы графического интерфейса для работы с паттернами. С помощью графического интерфейса стало возможным:
- подключать к поиску или отключать от него различные паттерны;
- просматривать картинки с шаблонами пятиточечных паттернов;
- создавать новые пятиточечные паттерны;
- редактировать параметры пятиточечных паттернов;
- сохранять отредактированный паттерн на место старого или в отдельный *.CSV файл;
- сохранять вновь созданный паттерн в новый или в выбранный *.CSV файлы;
- подключать к поиску паттерны из выбранного файла;
- создавать списки паттернов для поиска.
Для работы с графическим интерфейсом ZUP в конце списка параметров индикаторной платформы имеется параметр ExtPanel. ExtPanel=true разрешает работу с графическим интерфейсом.
Если при задании параметра ExtPanel=true графический интерфейс не появляется или он был удален нажатием на клавишу ESC, то комбинация клавиш SHIFT-Z выведет его панель на экран.
Далее нажимаем на кнопку Insert. В следующем меню кликаем на символ "бабочки" — . Появляетcя меню работы с паттернами:
В него, по сравнению с версией 151, добавлена кнопка Select. Если на нее нажать, то появится меню со списком:
С его помощью можно подключить к поиску или отключить от него паттерны из списка, не используя панель параметров индикатора. Для этого достаточно кликнуть на соответствующую кнопку. Значения параметров подключаемых паттернов будут заданы в списке параметров ZUP.
Кнопка Vieving of 5 dot patterns вызывает панель для работы с пятиточечными паттернами. Кликнув на нее, вы увидите такой экран с графиком:
Учтите, что картинка с шаблоном паттерна выводится с помощью языка MQL4. Координаты точек паттерна — XABCD — используют время условных баров на графике. Предельное время, которое можно задать, ограничивается примерно 2033 годом. Поэтому при работе с этим элементом интерфейса не рекомендуется предельно сжимать график на месячном таймфрейме. Время условных баров, к которым "привязываются" паттерны, при сжатии графика может стать больше 2033 года. Это вызывает ошибку. При максимально сжатом графике шаблон паттерна будет либо искажен, либо вообще не выведется.
Что можно делать с помощью полученного окна?
Строка дублирует/ заменяет значение параметра SelectPattern, который задает группы 5 точечных паттернов для поиска.
При работе с графическим интерфейсом будут использоваться значения параметров, заданные с помощью этого графического интерфейса. Если же графический интерфейс отключен ExtPanel=false, то будут использоваться значения, заданные через вкладку изменения параметров индикатора. При этом на каждом графике будут свои настройки параметров.
Кнопка Bullish в строке задает вывод картинки с шаблоном паттерна в бычьей или медвежьей интерпретации (в первый раз по умолчанию выводится бычья) и название отображаемого паттерна.
Строка соответствует параметру visiblePattern, который задает список подключенных к поиску паттернов.
Каждая позиция в данной строке соответствует одному из 33 встроенных в код ZUP паттернов. Если в позиции выбранного паттерна задана цифра 1, то паттерн подключен к поиску, если 0 — то отключен.
Изменять список паттернов, подключенных к поиску, можно несколькими способами.- Подводим курсор к выбранной позиции и щелкаем левой кнопкой мыши. Первое нажатие выводит на экран картинку с шаблоном паттерна. Второе нажатие меняет 1 на 0 или 0 на 1.
С помощью строки . В ней 1 of 33 показывает, на какой из 33 позиций установлен розовый курсор. Курсор также показывает, какой паттерн выбран для манипуляций. Стрелками можно выбрать новое положение этого курсора. Кнопкой Yes/No можно поменять 1 на 0 и наоборот — 0 на 1.
Кнопкой Hide все позиции переводятся в значение 0, то есть от поиска отключаются все паттерны. Здесь сразу отмечу следующее. Паттернов может быть подключено и больше, чем 33. Но линейка из единиц и нулей имеет только 33 позиции. При подведении розового курсора к крайней позиции слева и нажатии на стрелки << будут вызваны предыдущие 33 паттерна. При подведении розового курсора к правой (33-ей) позиции и нажатии на стрелки >> будут вызваны следующие 33 паттерна.
Для отладки программы был подключен файл с примерно 265 паттернами, созданными одним из пользователей ZUP в более ранних версиях индикатора и использовавшимися только при поиске. Ранее паттерны создавались с помощью внешних программ для создания файлов в формате *.CSV. Это достаточно непростая работа. Сейчас можно создавать паттерны с помощью записи их параметров в файл формата CSV. Но всё же проще использовать графический интерфейс.
- С помощью стрелок в строке можно выбрать группы паттернов, заданные в коде ZUP с помощью параметра SelectPattern, для подключения к поиску. Но работа данного параметра зависит от того, подключены ли к поиску только паттерны из ZUP, или еще и из внешнего файла. С помощью стрелок в строке выбирается значение параметра readFromFileListPatterns - "Patterns from ZUP/"Patterns from external file"/"Patterns from ZUP and from file". С помощью этого параметра выбирается место хранения паттернов. Стрелками в строке выбирается внешний файл с параметрами паттернов. В данной строке показывается, что можно подключить файл 1 из двух 1/2, который называется M. Это файл с параметрами паттернов Меррилла.
Кнопка New позволяет включить создание нового паттерна. Если подключены паттерны из внешнего файла, то могут появиться кнопки Edit и Delete в зависимости от значения, выбранного в строке . Если внешних файлов нет, то может подключиться кнопка Edit и для паттернов, встроенных в ZUP. Это сделано для того, чтобы на основе одного из 33-х паттернов создать какие-то свои, просто подредактировав параметры.
Ниже могут появиться одна или несколько строк со значениями дополнительных параметров, характерных для паттерна, показанного на картинке справа.
Нажатие на кнопку New выводит список из 8 строк с параметрами, которые можно задать для пятиточечных паттернов.
Повторное нажатие на кнопку New вернет предыдущее значение экрана. В графическом интерфейсе ZUP отменить действие любых кнопок можно повторным нажатием на ту же кнопку или нажатием на клавишу ESC.
Нажатие на одну из строк со списком параметров вызовет следующее окно:
В данном случае мы нажали на пятую строку. На картинке показан пример паттерна, который можно создать с помощью выбранных параметров. Причем при его создании будут по умолчанию браться значения параметров от паттерна из примера. Параметры можно изменить. В частности, из данного паттерна был в шутку создан новый, с названием А баба яга против:
Повторное нажатие на пятую строку вызывает следующую картинку:
Строка показывает, какие параметры можно изменить.
Строка показывает выбранное значение параметра. Стрелками выбирается новое значение параметра. Его можно отредактировать вручную, нажав на кнопку 0.382 и отредактировав значение параметра. При изменении значения параметра меняется и графическое представление паттерна.
Кнопка Next фиксирует выбранное значение, и мы переходим к заданию значения следующего параметра.
При этом в строке уменьшится количество еще не заданных параметров и появляется следующий элемент паттерна — BC.
После первой фиксации значения параметра с помощью кнопки Next появляется кнопка Back, позволяющая откатить назад и отредактировать предыдущие значения параметров.
Две кнопки позволяют в любой момент подключить параметры: фильтр линии XB и соотношение длин крыльев паттерна. Это соотношение задается с помощью стрелок. При нажатии на число, выбранное с помощью стрелок, можно вручную задать свое соотношение. ВНИМАНИЕ! Чтобы отключить его, нужно ввести значение 0.
По окончанию создания нового паттерна будет предложено задать его название:
Назовем его, например, AA.
Далее будет предложено выбрать название файла, в который будет сохранен вновь созданный паттерн. По умолчанию будет выбран тот файл, который был подключен в качестве внешнего файла с паттернами. Но можно и отредактировать название файла — тогда паттерн будет сохранен в файл с отредактированным названием. Если такой файл уже был ранее создан, то паттерн допишется в конец списка. Если же файла с выбранным названием нет, то будет создан новый.
Редактирование параметров паттернов происходит аналогично созданию нового паттерна. В конце редактирования будет предложено сохранить полученный паттерн на месте редактируемого, либо сохранить как новый в заданном файле *.csv. Или, если мы редактировали паттерн из списка встроенных в ZUP, будет предложено сохранить паттерн как новый в выбранный файл.
Файлы *.csv сохраняютсятся в папке MQL4\Files\ZUP\ListPatterns.
Пропускаю подробное описание некоторых кнопок. Их действие понятно из вышеизложенного.
При создании/редактировании некоторых параметров может быть выведено предельно возможное значение параметра. В дальнейшем изменить его будет невозможно. Это сделано для того, чтобы исключить задание значений параметров, при которых для выбранного значения допуска ExtDeltaGartley и с уже заданными значениями параметров паттерн не будет иметь смысла. То есть, паттернов с такими значениями мы все равно никогда не найдем на графике. Появляется кнопка Ignore. Кнопка разрешает задание любых значений параметра: ведь вдруг в дальнейшем нам, например, захочется увеличить значение ExtDeltaGartley, после чего запрещенные ныне значения параметров будут работать.
Часть вторая. Параметры для поиска паттернов Гартли
Включение поиска паттернов Gartley производится с помощью параметра ExtIndicator=11. При этом происходит сканирование графика на расстоянии ExtMaxBar баров. Это первый вариант поиска. Он называется "Поиск паттернов с помощью сканера".
Возможен поиск паттернов и при других значениях параметра ExtIndicator. Для этого включается параметр ExtGartleyOnOff и производится поиск на одном зигзаге, заданном параметром ExtIndicator. Это второй вариант поиска — "Поиск паттернов на зигзаге".
При переходе на другие таймфреймы паттерны, найденные с помощью первых двух вариантов, будут удалены с графика, и поиск начнется заново.
Есть и третий вариант поиска паттернов. Этот вариант описан в статье "ZUP - зигзаг универсальный с паттернами Песавенто. Графический интерфейс".
Паттерны, выведенные на график с помощью третьего варианта, сохраняются при переключении на другие таймфреймы. Но на некоторых таймфреймах фрактальная фильтрация может "запретить" их вывод.
Паттерны, созданные с помощью графического интерфейса, можно использовать во всех трех вариантах поиска.
Приведу полный список параметров, используемых при поиске паттернов Gartley и при работе с графическим интерфейсом, описанным в первой части статьи.
- AlgorithmSearchPatterns — выбор алгоритма сканера поиска паттернов для режима поиска паттернов ExtIndicator=11:
- 0 - соответствует алгоритму ExtIndicator=0 – стандартный зигзаг;
- 1 - соответствует алгоритму ExtIndicator=1 - зигзаг Алекса, размер луча задается в пунктах;
- 2 - соответствует алгоритму ExtIndicator=1 - зигзаг Алекса, размер луча задается в процентах;
- 3 - соответствует алгоритму ExtIndicator=2;
- 4 - соответствует алгоритму ExtIndicator=4;
- 5 - соответствует алгоритму ExtIndicator=5;
- 6 - соответствует алгоритму ExtIndicator=12.
- PotencialsLevels_retXD - разрешает вывод уровней ретресмента XD потенциальных пятиточечных паттернов. В режиме ExtIndicator=11 применяется, только если найден паттерн, и дальше уровни выводятся от его точки С:
- 0 - отключен вывод потенциальных уровней;
- 1 - потенциальные уровни выводятся совместно с паттернами при ExtGartleyOnOff=true;
- 2 - потенциальные уровни выводятся. При этом отключается вывод паттернов.
- visibleLevelsABCD - задает различные варианты показа уровней потенциальной точки D потенциальных пятиточечных паттернов:
- 0 - не показываются дополнительные уровни;
- 1 - выводятся на график все варианты уровней ретрейсмента BD;
- 2 - выводятся на график все уровни разных вариантов AB=CD;
- 3 - выводятся совместно уровни ретрейсмента BD и варианты AB=CD.
- maxDepth - максимальное значение Depth (minBars), до которого может изменяться параметр Depth зигзага при активном сканировании для поиска паттернов Gartley. Применяется при AlgorithmSearchPatterns=0.
- minDepth - задает минимальное значение Depth для поиска паттернов Gartley.
- FiboStep - включает при поиске паттернов вычисление значения параметра Backstep по формуле Backstep=Depth*1.618.
- IterationStepDepth - шаг изменения параметра зигзага Depth при поиске паттернов Gartley.
- maxSize_ - максимальное значение размера луча в пунктах. Используется в сканере паттернов при значениях параметра AlgorithmSearchPatterns=1, AlgorithmSearchPatterns=3, AlgorithmSearchPatterns=4, AlgorithmSearchPatterns=6.
- minSize_ - минимальное значение размера луча в пунктах.
- IterationStepSize - шаг изменения параметра зигзага Size при поиске паттернов Gartley.
- maxPercent_ - максимальное значение процента для расчета зигзага Алекса. Используется в сканере паттернов при значении параметра AlgorithmSearchPatterns=2.
- minPercent_ - минимальное значение процента для расчета зигзага Алекса.
- IterationStepPercent - шаг (процент) изменения параметра зигзага Percent.
- DirectionOfSearchMaxMin - задает направление поиска паттернов:
- false - от minDepth к maxDepth;
- true - от maxDepth к minDepth;
- SelectPattern - выбирает пятиточечные паттерны для поиска:
- 0 - поиск всех паттернов;
- 1 - поиск только классических паттернов - Gartle, Butterfly, Bat, Crab, кроме TOTAL;
- 2 - поиск классических и антиклассических паттернов, кроме TOTAL;
- 3 - поиск экзотических паттернов и экзотических антипаттернов, кроме TOTAL;
- 4 - поиск только антипаттернов, кроме TOTAL;
- 5 - поиск всех паттернов, кроме TOTAL;
- 6 - поиск только TOTAL;
- 7 - произвольный выбор пятиточечных паттернов для поиска с помощью параметра visiblePattern;
- 8 - отключен поиск пятиточечных паттернов;
- "Gartley";
- "Bat";
- "Alternate Bat";
- "Butterfly";
- "Crab";
- "Deep Crab";
- "Leonardo";
- "Shark";
- "Cypher";
- "Nen STAR";
- "5-0";
- "A Gartley";
- "A Bat";
- "A Alternate Bat";
- "A Butterfly";
- "A Crab";
- "A Deep Crab";
- "A Leonardo";
- "A Shark";
- "A Cypher";
- "A Nen STAR";
- "A 5-0";
- "Black Swan";
- "White Swan";
- "Navarro 200";
- "max Bat";
- "max Gartley";
- "max Butterfly";
- "TOTAL 1";
- "TOTAL 2";
- "TOTAL 3";
- "TOTAL 4";
- "TOTAL".
- visiblePattern - задает, какие паттерны искать. По умолчанию выключен поиск всех паттернов.
- NumberPattern - номер паттерна, по которому калибруется зигзаг и параметры которого выводятся через InfoTF. При NumberPattern = 0 выводится зигзаг с параметрами как в режиме ExtIndicator=0.
- ExtGartleyTypeSearch - режим поиска паттернов:
- 0 - поиск заканчивается после первого найденного паттерна;
- 1 - выводятся все паттерны на участке, заданном параметром maxBarToD. Поиск повторяется при каждом пересчете зигзага. Режим "Китайская игрушка 1";
- 2 - выводятся все паттерны на участке, заданном параметром maxBarToD. Поиск производится только один раз. Режим "Китайская игрушка 2";
- ExtHiddenPP - режим отображения зигзага для ExtIndicator=11:
- 0 - зигзаг не выводится. Выводятся только точки вершин зигзага. Паттерны Песавенто не выводятся;
- 1 - выводится зигзаг откалиброванный паттерном, заданным параметром NumberPattern. Паттерны Песавенто выводятся обычным образом;
- 2 - зигзаг не выводится. Выводятся только точки у вершин зигзага. Паттерны Песавенто выводятся только для вершин паттернов Gartley.
- ExtGartleyOnOff - включает показ паттернов Gartley. Не в режиме сканера.
- maxBarToD - задает максимальное количество баров от нулевого до точки D паттерна.
- patternInfluence:
- 0 - выводятся паттерны, у которых от нулевого бара до бара с точкой D не более maxBarToD баров;
- 1 - учитывается влияние паттерна при этом отменяется действие параметра maxBarToD;
- 2 - поиск паттернов осуществляется на всей разметке зигзага.
- patternTrue = true - выводятся паттерны, удовлетворяющие условию:
для медвежьих паттернов на участке от точки D до нулевого бара не должно быть баров, у которых максимум бара выше максимума рамки зоны развития точки D;
для бычьих паттернов на участке от точки D до нулевого бара не должно быть баров, у которых минимум бара ниже минимума рамки зоны развития точки D.
- AllowedBandPatternInfluence - задается коэффициент от величины расстояния между точками X и D паттерна. Этот коэффициент задает расстояние от точки D до точки где влияние паттерна предположительно заканчивается.
- RangeForPointD - разрешает показ зоны развития точки D.
- OldNewRangeForPointD - выбор варианта построения зоны развития точки паттерна.
- ExtColorRangeForPointD - цвет рамки зоны развития точки D.
- VectorOfAMirrorTrend = 1 выводится Вектор тренда.
- VectorOfAMirrorTrend = 2 выводится Вектор зеркального тренда.
- VectorOfAMirrorTrendColor - задает цвет линии обратного тренда.
- VectorOfAMirrorTrendStyle - задает стиль линии обратного тренда.
- shortNamePatterns - разрешает вывод коротких наименований паттернов.
- visibleLineOrTriangle - разрешает вывод паттернов в виде линии или в виде треугольников, кроме паттернов AB=CD.
- PatternLineStyle - задает стиль линии пятиточечных паттернов и AB=CD.
- PatternLineWidth - задает толщину линии пятиточечных паттернов и AB=CD.
- ExtColorPatternsBullish - цвет бычьих паттернов.
- ExtColorPatternsBearish - цвет медвежьих паттернов.
- ExtColorPatternList - задается список цветов для закраски паттернов Gartley для режима "Китайская игрушка". Названия цветов перечислены через запятую. Если какой-либо цвет будет записан с ошибкой, то для этого цвета выбирается красный.
- ExtDeltaGartley - допуск на отклонение цены для поиска паттернов по умолчанию 9% - 0.09.
- ExtDeltaGartleyPRZ - специальный допуск для построения рамки развития точки D паттерна.
- levelD - включает вывод на график уровней ретресментов XD возможных вариантов точных паттернов для текущей комбинации.
- colorLevelD - задает цвет уровней ретрейсментов XD.
- Equilibrium - включает вывод линий Equilibrium, Reaction1 и Reaction2.
- ReactionType — задает тип линий реакции.
- EquilibriumStyle — задает стиль линий.
- EquilibriumWidth — задает толщину линий.
- ColorEquilibrium — задает цвет для Equilibrium.
- ColorReaction — задает цвет для Reaction1 и Reaction2.
- Ext_3Drives - разрешает вывод паттерна 3 Drives.
- Ext_xO - задает коэффициент для поиска 7-точечного паттерна 3 Drives.
- Dragon — разрешает вывод паттерна Dragon.
- PeakZZDragon — задает номер экстремума зигзага, до которого производится поиск паттерна Dragon.
- Ext_4PointPattern - разрешает поиск 4-точечного паттерна продолжения.
- _maxXB - задает максимальное значение ретрейсмента XB для паттерна The 4 Point Pattern. Узнать об этом паттерне можно у автора здесь: http://kanetrading.com/.
- ABCD — разрешает поиск паттернов AB=CD:
- 0 - паттерны AB=CD не выводятся;
- 1 - выводятся любые AB=CD;
- 2 - выводятся только гармоничные AB=CD, у которых соотношения в пределах допуска соответствуют ряду Фибоначчи.
- searchABCDAlternate — разрешает вывод альтернативных паттернов AB=CD.
- ABCDAlternate — задает список альтернативных паттернов AB=CD. В данном списке через запятую перечисляются коэффициенты X из формулы X*AB=CD.
- visibleABCDrayZZ — разрешает вывод паттернов AB=CD в виде линии.
- Ext_noname - разрешает поиск неизвестных пятиточечных паттернов, у которых все четыре ретрейсмента равны какому-то фибо-уровню.
- CustomPattern — определяет, выводить или нет пользовательские паттерны:
- 0 - не выводится пользовательский паттерн;
- 1 - выводится вместе с другими паттернами;
- 2 - выводится только пользовательский паттерн.
- NameCustomPattern — название пользовательского паттерна.
- minXB — задает минимальное значение ретрейсмента XB.
- maxXB — задает максимальное значение ретрейсмента XB.
- minAC — задает минимальное значение ретрейсмента AC.
- maxAC — задает максимальное значение ретрейсмента AC.
- minBD — задает минимальное значение ретрейсмента BD.
- maxBD — задает максимальное значение ретрейсмента BD.
- minXD — задает минимальное значение ретрейсмента XD.
- maxXD — задает максимальное значение Equilibrium ретрейсмента XD.
Минимум и максимум ретрейсмента задают диапазон для поиска.
- filtrEquilibrium — включает в качестве фильтра линию, проходящую через точки X и B паттерна. Если фильтр включен, то паттерн будет прорисован, когда цена пробьет эту линию при движении от точки C паттерна в сторону точки D. Работает только с пользовательскими паттернами и паттернами noname.
- readFromFileListPatterns — задает чтение списка паттернов из файла \\ZUP\ListPatterns\listpatterns.csv:
- 0 - чтение списка паттернов из файла запрещено;
- 1 - используется для поиска пятиточечных паттернов только тех паттернов, список которых загружен из файла;
- 2 - к встроенному в ZUP списку пятиточечных паттернов дописывается список паттернов из файла. В этом случае получается составной список паттернов.
Файлы *.csv находятся в папке MQL4\Files\ZUP\ListPatterns.
- NameFileListPatterns — задает название .csv файла, из которого читается список параметров паттернов.
- writeToFileListPatterns — разрешает запись списка пятиточечных паттернов:
- 0 - запись осуществляется в файл \\ZUP\ListPatterns\listpatternsdefault.csv;
- 1 - запись осуществляется в файл \\ZUP\ListPatterns\listpatternscustom.csv;
- 2 - запись осуществляется в файл \\ZUP\ListPatterns\listpatternsmixt.csv.
- picture — разрешает вывод в файл картинки графика с паттерном.
Файлы с картинкой найденного паттерна находятся в папке MQL4\Files\ZUP\PicturePatterns.
- writeInfoPatternsToFileXML — разрешает вывод в файл .XML параметров текущего пятиточечного паттерна:
- 0 - запрещен вывод параметров в файл;
- 1 - параметры времени выводятся в развернутом виде;
- 2 - параметры времени выводятся в виде количества секунд.
Файлы *.xml с параметрами найденного паттерна находятся в папке MQL4\Files\ZUP\XML.
- writeInfoPatternsToFileCSV — разрешает вывод в файл .CSV параметров текущего пятиточечного паттерна:
- 0 - запрещен вывод параметров в файл;
- 1 - параметры времени выводятся в развернутом виде;
- 2 - параметры времени выводятся в виде количества секунд.
Файлы *.csv с параметрами найденного паттерна находятся в папке MQL4\Files\ZUP\CSV.
- namefileSymbolPeriod = true — задается название файлов с картинками паттернов и с параметрами в виде Symbol()+"_"+Period()+"_Patterns.
- InfoPointD — разрешает вывод информации о точке D паттерна крупным шрифтом.
- MonitorPatterns — включает монитор паттернов.
- TextSize — задает размер шрифта в мониторе паттернов.
- ExtGlobalVariableSet — разрешает запись информации о паттернах в глобальные переменные терминала.
Информация о найденном паттерне может выводиться в глобальную переменную с названием "ZUP"+_Symbol+_Period . Пример названия глобальной переммной — ZUPGBPUSD240. Если паттерн найден, то в переменную будет записана цифра 1.
Пояснение некоторых возможностей ZUP, реализованных в режимах поиска паттернов Gartley
Монитор паттернов
Ниже показана работа Монитора паттернов на примере режима "китайская игрушка". В этом режиме на график выводится множество найденных паттернов:
Строки в левом верхнем углу графика и есть монитор. Каждая строка соответствует одному из паттернов, выведенных на график. Цвет первых трех колонок соответствует цвету соответствующего паттерна. Цвет четвертой колонки: синий — паттерн бычий и задан параметром ExtColorPatternsBullish, красный — паттерн медвежий и задан параметром ExtColorPatternsBearish .
В первой колонке выводится номер бара, на котором находится точка D паттерна.
Во второй колонке выводятся параметры minBars/ExtBackstep зигзага, на котором найден соответствующий паттерн.
В третьей колонке выводится условное отклонение ретрейсментов XC-XB-AD-CD от идеального значения. Разберем это подробнее на примере паттерна Bullish Butterfly [1.414/.786/.786/2.0] в пятой строке монитора паттернов. Идеальные значения ретрейсментов показаны в квадратных скобках после названия паттерна. Каким образом формируются условные отклонения? И что означают условные отклонения?
Чем больше число, тем больше отклонение от идеального значения.
- Значение 0: отклонение должно быть меньше заданного параметром ExtDeltaGartleyPRZ. По умолчанию значение параметра равно 2%.
- Значение 1: отклонение должно быть меньше заданного параметром ExtDelta. По умолчанию - 4%.
- Значение 2: отклонение должно быть меньше, заданного параметром ExtDeltaGartley. По умолчанию - 9%.
- Значение * : отклонение больше, чем при значении 2. Найденный паттерн будет соответствовать паттерну, который был бы найден первыми версиями ZUP.
Линия равновесия и линия вектора зеркального тренда
Параметр Equilibrium включает вывод линии равновесия, проходящей через точки XB паттерна и двух линий реакции (красные пунктирные линии):
Линия реакции 1 параллельна линии равновесия и находится от нее на расстоянии, равном расстоянию точки C паттерна до линии равновесия.
Линия реакции 2 параллельна линии равновесия и находится от нее на расстоянии, равном расстоянию точки A паттерна до линии равновесия.
При подходе к линиям реакции можно ожидать либо коррекции, либо окончания формирования паттерна.
Вектор зеркального тренда включается параметром VectorOfAMirrorTrend . После этого начинает выводиться пунктирная линия. На вышеприведенной картинке линия вектора зеркального тренда бледно-зеленая. Она проведена через диагональ потенциальной разворотной зоны, показанной в виде красного прямоугольника у точки D паттерна.
Часть третья. Кратко о других паттернах
Кроме паттернов Гартли, ZUP позволяет работать с паттернами Песавенто и с другими видами.
Существуют, например, так называемые паттерны Меррилла. Они используются совместно с полосами Боллинджера. ZUP позволяется идентифицировать их на уже построенном зигзаге. На графиках они не отображаются: выводится только их название. На четырех первых справа лучах зигзага будут динамические паттерны Меррилла, на лучах со второго по пятый — статические.
Информация о паттернах Меррилла включается с помощью параметра infoMerrillPattern=true. Информация о паттерне выводится в строке в левом верхнем углу экрана мелким шрифтом. Можно вывести название паттерна крупным шрифтом с помощью параметра bigText=true. Крупным шрифтом название выводится в правом верхнем углу экрана.
На первых четырех лучах образовался динамический паттерн Меррилла, который называется Треугольник.
На лучах со второго по пятый видим статический паттерн под названием M13.
Паттерны Меррилла — пятиточечные. Можно создать их графическое представление с помощью графического интерфейса. Например, это уже сделал участник форума Станислав Тривайло под ником поручик.
При включении параметра bigText=true крупным шрифтом может выводиться также информация о найденном паттерне Гартли. Эта информация и монитор могут быть выведены только для первых двух вариантов поиска паттернов.
Заключение
Приведенное краткое описание позволит понять, как использовать ZUP для поиска паттернов.
Скачать индикаторную платформу ZUP можно в Маркете: https://www.mql5.com/ru/market/product/19758
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Тема паттернов для меня была интересна 10 лет назад. И примерно тогда же на форуме ОНИКС обсуждались варианты передачи параметров паттернов в советники и для внешнего использования.
Я в эту тему особо не вникал. НО сделал несколько вариантов вывода информации о паттернах.
Спасибо за содержательный ответ!
ys_mql5:
Меня, как, думаю, и многих других трейдеров, кто только начинает знакомство с вашим индикатором, очень интересует какой же всё-таки алгоритм зигзага наиболее оптимален для работы. Или так - могли бы вы описать плюсы/минусы каждого имеющегося алгоритма, т.к. уверен, что они все не зря были добавлены в индикатор. Понимаю, что в одних случаях предпочтительнее применение одного зигзага, а в других - другого.
Может быть, вы могли бы дать некоторые рекомендации? Возможно, есть какой-то более универсальный алгоритм и его базовые настройки (с которого могли бы начать все), которые подошли бы для старта, чтобы не приходилсь мучительно и многократно "рыскать" по параметрам, меняя их и исследуя график в поисках изменений в работе индикатора с очередным набором настроек?
PS Да, я имею ввиду исключительно работу с индикатором в режиме поиска паттернов (ExtIndicator = 11)
Спасибо.
1. Есть ли в индикаторе опция, которая выводит буквенные обозначения вершин паттернов в цвете паттерна (а ещё лучше прямо с названием на графике)? Мне кажется, так было бы удобнее ориентироваться по сформировавшемуся или формирующемуся паттерну.
2. Чем отличаются паттерны имеющие одно название без префикса и с префиксами "А" и "max", например - "Gartley", "A Gartley" и "max Gartley"?
3. Что за группа паттернов "TOTAL" - это пользовательские паттерны?
4. Если использовать параметр "ExtGartleyTypeSearch - режим поиска паттернов" в Режиме "Китайская игрушка 1", то на последних зигзагах присутствуют паттерны - _http://prntscr.com/inkjnc, а если переключиться в режим "0 - поиск заканчивается после первого найденного паттерна", то паттернов, которые были в режиме китайской игрушки не будет - _http://prntscr.com/inkkfx. Скорее всего будет 1-2 паттерна уже давно завершившихся. Вопрос, почему в режиме поиска первого найденного паттерна не отображается ближайший паттерн к текущему бару?
В режиме ExtIndicator = 11 используется алгоритм стандартного зигзага. Что такое паттерны. Луч XA - это импульсная волна. А структура ABCD является коррекционной волной. То есть в теории патерны являются частью волновой структуры по Эллиотту. Более 10 лет назад Putnik исследовал параметры стандартного зигзага и предложил настройки параметров, которые не всегда но достаточно часто выявляют волновые модели по Эллиотту. Putnik специализируется на волновом анализе. Вот эти его настройки и выбраны по умолчанию. На самом деле вариантов настроек может быть множество. Поговорите на эту тему с поручиком. Он специализируется на паттернах.
Я же, как написал выше, чаще применяю вилы Эндрюса. Если их привязать к вершинам волн, то вилы волшебным образом подсказывают места, где произойдет разворот рынка задолго до того, как туда придет рынок.
Вот текущий пример по йене:
Посмотрите, как точно рынок отбивается от линий, представленных в комплекте вил Эндрюса. Я не представляю, что это возможно с помощью паттернов.
Это просто какое-то чудо. У меня есть объяснение почему это происходит. Но оставим эту тему.
По вопросам.
1) Нет возможности вывода буквенных обозначений вершин паттернов (XABCD).
2 и 3) Буква "A" обозначает антипаттерны. Посмотрите, например, A Gartley и Gartley. Их как паттерны и TOTAL придумал поручик. Приставка max используется для паттернов, которые были в первых версиях ZUP, в которых был создан поиск паттернов. В этих паттернах использовался наиболее широкий диапазон ретресментов. В текущей версии встроен, скажем так, классический Gartley и max Gartley. Отличаются параметрами. Отличия небольшие.
4) Для режима китайская игрушка используются значения параметра ExtGartleyTypeSearch 1 или 2. В одном случае производится одноразовый поиск паттернов. В другом случае поиск паттернов производится при каждом изменении нулевого бара. В пределе поиск осуществляется на каждом тике, когда нулевой бар изменяет свой размер на каждом тике. Это накладно для метатрейдера.
В режиме ExtIndicator = 11 используется алгоритм стандартного зигзага. Что такое паттерны. Луч XA - это импульсная волна. А структура ABCD является коррекционной волной. То есть в теории патерны являются частью волновой структуры по Эллиотту. Более 10 лет назад Putnik исследовал параметры стандартного зигзага и предложил настройки параметров, которые не всегда но достаточно часто выявляют волновые модели по Эллиотту. Putnik специализируется на волновом анализе. Вот эти его настройки и выбраны по умолчанию. На самом деле вариантов настроек может быть множество. Поговорите на эту тему с поручиком. Он специализируется на паттернах.
Я же, как написал выше, чаще применяю вилы Эндрюса. Если их привязать к вершинам волн, то вилы волшебным образом подсказывают места, где произойдет разворот рынка задолго до того, как туда придет рынок.
Вот текущий пример по йене:
Посмотрите, как точно рынок отбивается от линий, представленных в комплекте вил Эндрюса. Я не представляю, что это возможно с помощью паттернов.
Это просто какое-то чудо. У меня есть объяснение почему это происходит. Но оставим эту тему.
По вопросам.
1) Нет возможности вывода буквенных обозначений вершин паттернов (XABCD).
2 и 3) Буква "A" обозначает антипаттерны. Посмотрите, например, A Gartley и Gartley. Их как паттерны и TOTAL придумал поручик. Приставка max используется для паттернов, которые были в первых версиях ZUP, в которых был создан поиск паттернов. В этих паттернах использовался наиболее широкий диапазон ретресментов. В текущей версии встроен, скажем так, классический Gartley и max Gartley. Отличаются параметрами. Отличия небольшие.
4) Для режима китайская игрушка используются значения параметра ExtGartleyTypeSearch 1 или 2. В одном случае производится одноразовый поиск паттернов. В другом случае поиск паттернов производится при каждом изменении нулевого бара. В пределе поиск осуществляется на каждом тике, когда нулевой бар изменяет свой размер на каждом тике. Это накладно для метатрейдера.
Евгений, спасибо за комментарий.
А вилы вы строите вручную или вы пользуетесь автоматическим построением индикатора? И если так, то алгоритм постоения вил использует экстремумы, найденные зигзагом. И всё равно приходим к тому, что нужно понимать, какой зигзаг с какой целью внедрялся. Можете дать рекомендацию, какой с какого зигзага оптимальнее начать, может быть там есть какой-то специальный для лучшей работы алгоитма построения вил?
Евгений, спасибо за комментарий.
А вилы вы строите вручную или вы пользуетесь автоматическим построением индикатора? И если так, то алгоритм постоения вил использует экстремумы, найденные зигзагом. И всё равно приходим к тому, что нужно понимать, какой зигзаг с какой целью внедрялся. Можете дать рекомендацию, какой с какого зигзага оптимальнее начать, может быть там есть какой-то специальный для лучшей работы алгоитма построения вил?
Используется стандартный зигзаг ExtIndicator=0. По умолчанию.
Можно делать с помощью волнового зигзага ручную волновую разметку. Описание в статье про версию 151.
Привязываются вилы либо к экстремумам стандартноеп зигзага, либо к волновому зигзагу.
Нужен определенный навык. Можно поступить проще.. Включайте статические вилы. Пстроения будут проводиться на автомате. На форуме forexdengi так все и делают. Строят вилы на автомате.
Но эти вилы н всегда пригодны. Понимание приходит со временем. Полезно изучить волновой анализ. Для начала можно хотя бы посмотреть вебинары от РОмана Павелко. Его вебинары транслирует периодически FxPro. На ютюбе поищите.
А можно поискать вебинары Putnika на ютюбе. Наберите в поиске DML@EWA. Там есть много информации по применению вил Эндрюса из ZUP
Используется стандартный зигзаг ExtIndicator=0. По умолчанию.
Можно делать с помощью волнового зигзага ручную волновую разметку. Описание в статье про версию 151.
Привязываются вилы либо к экстремумам стандартноеп зигзага, либо к волновому зигзагу.
Нужен определенный навык. Можно поступить проще.. Включайте статические вилы. Пстроения будут проводиться на автомате. На форуме forexdengi так все и делают. Строят вилы на автомате.
Но эти вилы н всегда пригодны. Понимание приходит со временем. Полезно изучить волновой анализ. Для начала можно хотя бы посмотреть вебинары от РОмана Павелко. Его вебинары транслирует периодически FxPro. На ютюбе поищите.
А можно поискать вебинары Putnika на ютюбе. Наберите в поиске DML@EWA. Там есть много информации по применению вил Эндрюса из ZUP
Отлично, спасибо. Это будет хорошей стартовой точкой для изучения этой методики анализа.
Посмотрел я анализ рынка от Gelox на сайте forexdengi, конечно, сразу не разберёшься (даже если и понимаешь в общих чертах принципы волнового анализа), нужно начинать с малого - с изучения основ данного подхода. Кроме того, как я понимаю, конкретно учебных материалов по DML&EWA нет, т.к. Putnik, насколько я понял, проводит (или проводил?) платные семинары на эту тему. А значит, если информация и есть в открытом доступе, то разбросанная по крупицам или вообще исключительно в практическом применении при анализе рынка.
Евгений, могли бы вы посоветовать хорошую литературу и/или ресурсы на тему анализа рынка с помощью вил Эндрюса? Я нашёл у себя в загашнике книгу Патрика Микулы "Лучшие методы линий тренда Алана Эндрюса плюс пять новых техник". Думаю, базовое понимание работы с ВЭ оттуда можно получить.
И ещё один момент - какая конфигурация для работы с ZUP в МТ4 наиболее актуальна сейчас: