ZUP Проект "Феникс"

Тема в разделе "Зиг-Заг. Системы с использованием ZigZag.", создана пользователем nen, 15 сен 2013.

  1. поручик

    поручик настоящий полковник

    я скачал вчера у него HT, доступ дали только сегодня (но надо откуда то котировки брать)
    так вот, руководство более старое (2003 г.) , чем книга, последнее издание вроде 2010 г.
     
  2. nen

    nen Профи форума

    Здесь буду складывать параметры ZUP, которые пока не находят применения в 137 версии.
    То есть эти параметры до 136 версии включительно применялись, а в 137 версии не применяются.

    Это рабочий момент. Список исключаемых параметров создается только для того, чтобы потом не забыть при них.

    varStrongPatterns - изменяется функциональное значение (или удаляется. еще не решил как лучше)

    RangeForPointD - изменяется функциональное значение

    Нет смысла в двух параметрах ExtDeltaStrongGartley и ExtDeltaGartley. Достаточно одного ExtDeltaGartley.

    При появлении паттерна рамка развития точки D, возможно, будет начинаться раньше, чем уровень точки D, с которого первый раз прорисуется паттерн. Для некоторых паттернов. Это не критично. Главное - уровни ретресментов retXB, retXD, возможно, уровень ABCD. Это точные уровни, на которые ориентируется Скотт Карни. Именно эти уровни будут выводиться вместо тех, что были ранее. Те, что были ранее, можно будет восстановить, если покажется, что они нужны.

    Из литературы. Роберт Фишер, Брайс Гилмор, Хоббс, Джим Кейн, Песавенто и т.д. да и Скотт Карни в своих книгах описывают скопления фиб. Каждый по своему. То есть они каждый своим методом выделяют фибо кластеры. И уже все пляски с бубном у каждого автора идут вокруг этих фибо кластеров.

    Для "размытых" паттернов рамка развития точки D может быть несколько бОльшего размера, чем для точных паттернов. Точный паттерн определяется автоматически в случае, если все 4 основных ретресмета паттерна (retXA-retAC-retBD-retXD) будут находиться в допуске от списка значение фиб.

    В версиях 12*-136 в ZUP была "зашита" база данных ретресментов "точных" паттернов. В этой базе данных был очень большой разброс значений. Соответственно, было слишком много точных паттернов. В 137 версии эта база данных исключается из кода. Точные паттерны определяются по другому принципу (см. выше).

    _50 - удаляется. Поиск паттерна 5-0 включен в общий список пятиточечных паттернов.

    PotencialsLevels_retXD - возможно, будет удален. Потенциальные уровни для найденного паттерна будут выводиться всегда, кроме режима китайская игрушка.
    При этом также будут выведены потенциальные уровни для паттернов, у которых те же точки X-A-B-C, что и у найденного.
    Также отдельно может быть задан вывод потенциальных уровней для нескольких других экстремумов зигзага с помощью параметра PotencialsLevelsNum
     
  3. nen

    nen Профи форума

    Для обсуждения. Вариант вывода названий паттернов.
    Для всех пятиточечных паттернов выводить значения четырех ретресментов в виде [retXD/retXB/retAC/retBD]
    В случае, если текущие ретресменты совпадают в пределах допуска (+ -) ExtDeltaGartley с одним из значений:
    (0.146 - это значение не используется),0.236,0.382,0.447,0.5,0.618,0.707,0.786,0.886,1.128,1.272,1.414,1.618,2.0,2.236,2.618,3.1416,3.618,4.236,
    то будет выведено это значение.
    Если не совпадает, то будет выведена звездочка - (*):

    nzdusdm15.png

    А если для данного паттерна не предусмотрено определение этого ретресмента, то будет выведен минус - (-):

    usdcadh1.png

    usdcadm1.png

    При этом сразу видно все ретресменты. И если все ретресменты,
    предусмотренные для данного паттерна выведены в виде чисел, то это будет точный паттерн.

    Главные ретресменты для паттерна retXD и retBD выводятся первым и последним в списке [retXD/,,,/.../retBD]
    retXD - главный разворотный уровень.
     
  4. поручик

    поручик настоящий полковник

    В принципе согласен.
    Возможно ли название паттерна - шрифт - размер один, а отношения -- другой, более мелкий

    ===============================
    nen

    В надписи крупным шрифтом это можно попробовать сделать. А вот в том, что в левом верхнем углу выводится - нет.

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

    DmitriyX Активный пользователь

    [retXD/retXB/retAC/retBD]
    По мне удобнее было [retXB/retAC/retXB/retBD]. Но хозяин барин, привыкнем.
     
  6. nen

    nen Профи форума

    Можно и так. Только лучше [retXB/retAC/retBD/retXD]. В таком порядке - retXB/retAC/retBD - перечисляются ретресменты у Скотта Карни. А где стоит retXD - можно договориться. Поставил его в начале потому, что это главный разворотный уровень.
     
  7. поручик

    поручик настоящий полковник

    AC/BD - это AB=CD, пусть остается в конце,
    будет взгляд на конец удобнее бросать
     
  8. nen

    nen Профи форума

    Откорректировал построение рамки развития точки D паттерна.
    Изменил алгоритм построения. Сейчас стало точнее.
    Позднее дам описание построения, так как много вопросов задается по поводу этой рамки.

    Было: usdcadh4_136.png

    Стало: usdcadh4_137.png
     
  9. nen

    nen Профи форума

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

    Код:
     nameObj1="_"+ExtComplekt+"Triangle1_" + countGartley + "_" + _Depth + "_" + aXABCD[D] + "_" +vBullBear + " " + vNamePattern; //* + " " + vNameStrongPattern;
    nameObj2="_"+ExtComplekt+"Triangle2_" + countGartley + "_" + _Depth + "_" + aXABCD[D] + "_" +vBullBear + " " + vNamePattern; // + " " + vNameStrongPattern;
    
    Это в 123 версии с номером строк примерно 13020. В более поздних версиях до 14800.

    На строки:

    Код:
     nameObj1=StringSubstr("_"+ExtComplekt+"Triangle1_" + countGartley + "_" + _Depth + "_" + aXABCD[D] + "_" +vBullBear + " " + vNamePattern,0,63); //* + " " + vNameStrongPattern;
    nameObj2=StringSubstr("_"+ExtComplekt+"Triangle2_" + countGartley + "_" + _Depth + "_" + aXABCD[D] + "_" +vBullBear + " " + vNamePattern,0,63); // + " " + vNameStrongPattern;
    
    В конце строк
    Код:
    // + " " + vNameStrongPattern;
    можно удалить.

    И китайская игрушка при этом всегда должна выводиться разноцветной.

    В 137 версии :

    usdcadh4.png

    После исправления вывода рамки развития точки D паттерна линии обратного тренда в режиме китайская игрушка своей кучностью примерно показывают разброс "канала" обратного тренда.
     
  10. nen

    nen Профи форума

    Формирование рамки развития точки D паттерна.
    Рамка формируется следующим образом.
    Изначально имеем для каждого паттерна границы ретресментов retXB и retXD.
    Имея эти границы, а также зная значение параметра ExtDeltaGartley, вычисляются максимальное и минимальное значение цены для ретресментов retXB и retXD.
    Допустим, для retXB получили границы 1.3333-|-1.3345, а для rteXD - 1.3222-|-1.3340.
    Общая область этих границ и будет высотой рамки.
    В нашем примере рамка будет находиться в границах 1.3333-|-1.3340.
    Далее необходимо определить ширину рамки.
    Допустим, паттерн, для которого строим данную рамку, бычий.
    Определяем бар, который пересекает верхняя граница рамки, то есть в пределах тела которого находится цена 1.3340.
    На этом баре будет находиться левая граница рамки.
    Рассчитываем скорость достижения данной цены от точки C паттерна.
    Рассчитываем на основании полученной скорости количество баров (время), за которое рынок пройдет расстояние от верхней границы рамки до нижней границы.
    Отложим полученное количество баров от левой границы. Получим правую границу.
    Все. Рамка построена. Если рынок выходит вверх за рамку, то при дальнейшем развитии рынка отслеживаем новый вход рынка в границы между верхней
    и нижней линиями рамки. Если при этом в пределах данных границ образуется новый экстремум - перерисуется зигзаг - рамка переместится на новый бар.
    При этом расстояние между левой и правой границами может увеличиться.

    Это упрощенное описание алгоритма. Но его основа здесь приведена полностью. Для точных паттернов вертикальный размер рамки может уменьшаться.

    До 135 версии включительно алгоритм построения рамки был проще и грубее.
     
  11. nen

    nen Профи форума

    Можно сделать выбор группы паттернов для поиска, как это было ранее через битовую переменную или через:
    SelectPattern - задает группы 5 точечных паттернов для поиска "размытых" и "точных" паттернов".
    0 - поиск всех паттернов
    1 - поиск только классических паттернов - Gartle, Butterfly, Bat, Crab, кроме TOTAL
    2 - поиск классических и антиклассических паттернов кроме TOTAL
    3 - поиск экзотических паттернов, кроме TOTAL
    4 - поиск только антипаттернов, кроме TOTAL
    5 - поиск всех паттернов, кроме TOTAL
    6 - поиск только TOTAL
    7 - произвольный выбор пятиточечных паттернов для поиска с помощью параметра visiblePattern
    8 - отключен поиск пятиточечных паттернов

    Но необходимо учитывать, что у Скотта Карни было несколько размытое описание некоторых паттернов.
    В 137 версии оставил наиболее точные границы ретресментов для паттернов. Поэтому некоторые паттерны,
    которые ранее определялись под одним именем, например, max Gartley, сейчас выводятся под другим наименованием.
    И следовательно немного теряется смысл выделения групп паттернов. То есть необходимо поработать с новой версией и посмотреть,
    какие паттерны интересуют в бОльшей степени, те паттерны и выделить с помощью битовой переменной.

    Вот примеры паттернов TOTAL с выводом точных ретресментов в 137 версии:

    nzdusdm1.png

    nzdusdm15.png

    nzdusdm30.png

    А здесь работа 136 версии:

    nzdusdm1.png

    nzdusdm15.png

    nzdusdm30.png

    ==================

    Каждый день происходит правка кода 136 и 137 версии.
    Исправляется множество старых мелких недочетов (ошибок), как только на них натыкаюсь.
    В 137 остались самые трудные задачи. Приходится медленно вы(на)правлять код в нужное русло :)
     
  12. nen

    nen Профи форума

    В группу SelectPattern =1 наверное, стоит добавить 5-0 и Shark

    SelectPattern =3 включить экзотику и антиэкзотику
    SelectPattern =8 отключает поиск только пятиточечных паттернов из встроенного в код списка паттернов.
    На пользовательские паттерны параметр SelectPattern не влияет.
     
  13. поручик

    поручик настоящий полковник

    [​IMG]

    можно ли сделать предварительную зону PRZ 0.618 и 0.786 для паттернов с "хорошим" основанием (0.618, 0.786 и т п.)
    Пусть без вывода паттерна (если это сложно), только PRZ

    CAD H4

    Красная PRZ - От А ALT Shark, черным от Штази 618\1272 618 - основание 0.618, 1272 - расширение1.272

    2 томатных PRZ - 0.618 и 0.786 (предлагаемый вариант)
     
  14. nen

    nen Профи форума

    Для режима поиска паттернов ExtIndicator=11 и AlgorithmSearchPatterns=0 (алгоритм страндартного зигзага)
    для значения параметра NumberPattern=0 сделал совмещение поиска паттернов и вывод вил Эндрюса как для режима ExtIndicator=0.
    То есть после поиска паттернов выводится зигзага с параметрами, которые применяются по умолчанию в режиме ExtIndicator=0.

    Картинки.

    1.
    NumberPattern=1 - параметр, стоявший всегда по умолчанию

    Без вил:
    usdcadh4.png

    С вилами:
    usdcadh4.png

    2.
    NumberPattern=0

    Без вил:
    usdcadh4.png

    С вилами:
    usdcadh4.png

    vagul-у, возможно, это понравится...
     
    1 человеку нравится это.
  15. nen

    nen Профи форума

    Алгоритм работы стандартного зигзага в режиме поиска патернов немного изменяется в зависимости от значения параметра NumberPattern.
    Если NumberPattern>0, то все остается как было ранее.
    Если NumberPattern=0, то зигзаг выводится во всех режимах поиска паттернов как в режиме ExtIndicator=0.

    ==============

    В режиме китайская игрушка.

    NumberPattern=0

    usdcadh4.png

    NumberPattern=1

    usdcadh4.png

    NumberPattern=2

    usdcadh4.png


    NumberPattern=5

    usdcadh4.png
     
    1 человеку нравится это.
  16. nen

    nen Профи форума

    Вывод пятиточечных паттернов линиями так сойдет?

    usdcadh4.png

    usdcadm1.png
     
    2 пользователям это понравилось.
  17. поручик

    поручик настоящий полковник

    пойдет, толщина пусть будет пользовательская
    а старый вариант останется?
     
  18. nen

    nen Профи форума

    Зачем старое проверенное удалять? Останется.
     
  19. nen

    nen Профи форума

    Подошел к самому трудному.
    Вывод уровней. С указанием цены уровня.
    От точки C паттерна, для которого существует ретресмент XD (для 5-0 ретресмент XD не задается),
    будет выводиться вертикальная пунктирная линия со следующими уровнями.
    Уровень ретесмента XD для текущего паттерна.
    Или несколько уровней ретесмента XD, если их может быть несколько - задан диапазон для ретресмента XD.

    Также выводить уровни AB=CD, 1.272*AB=CD, 1.618*AB=CD, а также (фибы) уровни ретресмента BD.
    Если эти уровни находятся от уровней ретресмента XD на расстоянии, не превышающем значение ExtDeltaGartley.

    И такие же линеечки для потенциальных паттернов.

    Нужны ли еще какие-то уровни?
     
  20. поручик

    поручик настоящий полковник

    да вроде нормально
    трудно судить без картинок
     

Поделиться этой страницей