Алгоритм(ы) ZZ

Тема в разделе "3. - зиг-заги", создана пользователем wellx, 6 дек 2006.

  1. wellx

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

    OK, как раз тестирую с обратной чисткой - пока вроде работает нормально. Но выйдет 79 - попробую с вставкой твой ZUP
     
  2. tango

    tango Новичок

    Всем привет!
    Пожалста подскажите: есть ли такой вариант зигзага, в котором вычисляется разница между ценой на последнем экстремуме и текущей, желательно в отдельном буфере. Очень нужно!
    Заранее благодарен.
     
  3. wellx

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

    Это вообщето дело МТС, или я чего не понял? Можете описать подробнее?
     
  4. tango

    tango Новичок

    Идея в том, чтобы скормить эту разницу стохастику.
    Вариант примерно следующий:
    x=iCustom(NULL,0,"ZigZag",ExtDepth,ExtDeviation,ExtBackstep,?,i);
    StepK=MaxSpeed/(KPeriod_max-KPeriod_min);
    StepD=MaxSpeed/(DPeriod_max-DPeriod_min);
    StepS=MaxSpeed/(Slowing_max-Slowing_min);
    KPeriod=MathRound(x/StepK)+KPeriod_min;
    DPeriod=MathRound(x/StepD)+DPeriod_min;
    Slowing=MathRound(x/StepS)+Slowing_min;
    Т.е. при изменении значения буфера изменяются параметы индикатора.
     
  5. wellx

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

    Допиленая версия ЗЗ_2L.
     

    Вложения:

    • ZZ_2L_28.zip
      Размер файла:
      2,6 КБ
      Просмотров:
      380
  6. kalkhoff FX

    kalkhoff FX Новичок

    Давно пользую ZUPик=отличная и многофункциональная весчь. :tatice_06: респект разработчикам!!
    Вопрос опять же к ним=
    Давно наблюдаю за угловыми уровнями поддержки/соротивления и заметил одну интересную особенность-если зеркально отрисовывать линию ЗЗ луча на правую сторону экрана (типа проэекция "в будущее"),то она будет являтся наиболее вероятной линией и текущей волны.Можно ,конечно,использовать для этого разные варианты из уже имеющихся фиб,versum и т.п, но
    во первых- сильно забивает график,
    во-вторых-не всегда в стандартных настройках есть данный угол,
    и в-третьих-важен именно угол ЗЗ предыдущей волны ,по принципу оптики- угол падения равен углу отскока.
    Если развивающаяся волна преодолевает данную угловую линию подд\сопротивл,то переходим к ЗЗ старшего ТФа. Поэтому важно,чтоб на графике имелись прорисовки ЗЗ хотябы с 3х смежных ТФов.
    Этот принцип уже реализован в Омеге.Огромная просьба к разработчикам или програмерам-можна ли добавить такую функцию в ZUP,или может можна сделать какой скрипт по прорисовке проекции ЗЗ,например к индикатору мультизигзаг.Пока я это делаю вручную,но на мелких ТФах при перерисовке ЗЗ-кумарит.Если кто заинтересуется,можно и в личку.
     

    Вложения:

    • screen1.png
      screen1.png
      Размер файла:
      202,9 КБ
      Просмотров:
      175
  7. nen

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

    Алгоритм стандартного зигзага сильно тормозит компьютер.
    Потому что он не оптимизирован.

    В мультизигзагах MZZ... произведена максимальная оптимизация алгоритма стандартного зигзага.
    На произведена не полностью.
    В стандартном зигзаге в цикле производится многократный расчет значения <b>Deviation*<!--coloro:#FF0000--><span style="color:#FF0000"><!--/coloro-->Point<!--colorc--></span><!--/colorc--></b> в двух строчках.
    А как известно операция умножения требует несколько десятков тактов процессора.

    Для того чтобы этот пересчет не производить и сильно сэкономить на расчетах в самом начале необходимо создать переменную, например:
    double x=<b>Deviation*<!--coloro:#FF0000--><span style="color:#FF0000"><!--/coloro-->Point<!--colorc--></span><!--/colorc--></b>;

    И заменить в двух строчках операцию умножения на эту переменную...
     
  8. nen

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

    Для ускорения расчетов зигзага для прикладных нужд можно попробовать создавать не индикаторный буфер, а массив ссылок на экстремумы, найденные на истории. Этот массив будет компактным, занимающим в памяти мало места. Но при этом возникает несколько других вопросов.
    1) Заранее не известно количество элементов такого массива. Поэтому у массива придется динамически менять размер.
    2) При зигзаговой фильтрации во втором цикле (стандартного зигзага) некоторые элементы массива ссылок будут обнуляться. Будут возникать пустые ячейки. Потом необходимо при обработке этого массива делать обработчик пустых ячеек, чтобы их игнорировать. Сжимать массив - себе дороже.
    3) При необходимости отрисовки зигзага придется каким-то образом переносить данные в индикаторный буфер.

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

    Это для МТ4. В МТ5 вообще многое изменится. Там появились возможности для быстрого нахождения необходимых данных на истории. Там еще предстоит разбираться.
    ----------------
    Но в МТ5 может быть можно будет организовать структуру, в которой будут храниться ссылки на экстремумы как элементы динамической структуры - вместо массива - а также будет счетчик количества элементов структуры... надо подумать над этим. Счетчик хранится в объекте... Интересно, насколько такая конструкция будет шустрее, чем работа с индикаторными буферами. Такая конструкция уже не будет иметь пустых элементов. Ссылки на пустые элементы просто удаляются из структуры, а в объекте-счетчике уменьшается количество элементов структуры. Есть над чем подумать... Также необходим шустрый алгоритм определения по ссылке номера бара в данных истории, чтобы при необходимости можно было заполнить индикаторный буфер дл отрисовки зигзага.
    ----------------
     
  9. wellx

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

    Если нумерация опять будет обратная (от конца к началу списка) то возникнет задача переписывания массива ссылок. Плюс поиск попадания в интервал и т.д. еще не известно , что лучше..
     
  10. tondaho

    tondaho Новичок

    to wellx
    я тут смотрел твой ZZ_2L_28.ххх и такие ситуации получились
    имхо - с первой мне думается однозначно неправильно, а по поводу второй - можно было бы сделать скидку на "общую направленность" или "шум" и пропустить, но математика штука конкретная и 4 пункта в счет да и случайностей нет, во всем есть смысл, пусть и раскрывается не сразу..
    вот картинка..

    zz_2l.gif
     
  11. wellx

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

    скинь сюда или в личку по 10 баров мест 1 и 2 до баров с ошибкой. Явный глюк, надо поискать.
    Заодно все настройки индикатора..

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

    !!! Посмотрел детально - не, все правильно рисует:
    1. Бар, перед лоу 1.4502 отрисовал уже ЗЗ верх и далее он ищет или ЗЗ вниз или продолжение , но поскольку на том же баре что и указанный низ хай выше прорисованного ЗЗ вверх, то индикатор и прорисовал продолжение. Продолжение сильнее разворота.

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

    2.Тоже самое, более высокий хай не имеет значения , т.к. ЗЗ уже 3 раза подтвердил разворот, а бар с выносом имеет также и более низкий лоу. Опять же - продолжение имеет приоритет. В данном случае - приоритет более низкий лоу.

    А разруливать такие моменты опять же должна система.
     
  12. nen

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

    По поводу алгоритма казахского удава.
    Алгоритм иногда работает с ошибками.
    На приведенном скрине цветом аква выведен казахский удав, красным цветом загзаг со стандартным алгоритмом (ZigZag_new_nen4).

    gbpusd_10_02_06_h4.gif
     
  13. baltik

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

    Цвет аква- он немного в будующее смотрит на 1 бар :)

    что для советника -грааль!!
     
  14. nen

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

    Он на истории в будущене смотрит. А вот как в онлайн этот участок он рисует большой вопрос.
     
  15. Alex_r

    Alex_r Новичок

    этот "грааль" дает сигналы на 2-3м баре:)
     
  16. KEHTyxa

    KEHTyxa Новичок

    чевота удавушку нашего сегодня вообще расплющило под конец дня (на картинке красный).
     

    Вложения:

    • 5.gif
      5.gif
      Размер файла:
      23 КБ
      Просмотров:
      141
  17. tr034

    tr034 Новичок

    Добрый день народ, я в програмировании чайник (только не глумитесь), вопрос таков, а можно ли к индюку Казахский удав прицепить звуковой алерт, чтобы пикал когда рисует новый луч, напишите плиз и если можно простенького советника
     
  18. nen

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

    Забавное пожелание. Где тот гений, который должен понять, по каким сигналам должен работать простенький советник?
     
  19. tr034

    tr034 Новичок

    вот картинка по которой должен работать советник для казахского удава, да длина в настройках у него 18, индюк нарисовал новый луч алерт сработал подал сигнал, а про советника всё на картинке, пусть будет очень простой советник и желательно чтоб переворачивал по сигналу с бэй на сел и наоборот, помогите плиз
     

    Вложения:

  20. AlexSTAL

    AlexSTAL Новичок

    Всем добрый день!

    Сейчас вплотную занимаюсь темой ГВА. Хотел бы посоветоваться с общественностью.
    За основу возьмём следующий кусок графика EURUSD H4 со стандартным ZigZag (параметры по умолчанию) с изображением волны Вульфа:
    zz_01.gif

    Момент 1. Расположение точки 2. Чисто визуально волна <b>2-3</b> начинается на первой белой свечке, но её Low выше Low экстремума зигзага в точке <b>2</b> на 1.3 старых пункта.
    Момент 2. Расположение точки 4. Чисто визуально волна <b>4-5</b> начинается через 9 свечек, но её Low так же незначительно выше Low экстремума зигзага в точке <b>4</b>.

    Построим расширение Фибо через точки <b>1-2n-3</b> и мы получим точное соответствие уровня <b>FE 61.8</b> точке <b>4n</b>:
    zz_02.gif

    Кроме того мы видим, что линию <b>2-4</b> вниз пробивают свечи, а линию <b>2n-4n</b> нет (на участке <b>1-5</b>), что при автоматическом поиске добавляет модели <b>1-2n-3-4n-5</b> больший вес, по сравнению с моделью <b>1-2-3-4-5</b>.

    Тут многое конечно зависит ещё и от поставщика котировок, вот альтернативные 4-х значные, где мы видим, что уровень <b>FE 61.8</b> (построенный по точкам <b>1-2n-3</b>) точно в точке <b>4</b> зигзага:
    zz_03.gif

    а это просто исправленные мною вручную минимумы свечей:
    zz_04.gif

    Мне нужен простой алгоритм поиска альтернативной точки уже сформировавшегося зигзага.

    У кого нибудь если мысли по фильтрации лишних хвостов свечей для приведённого примера?

    <b>p.s. Сдвиг точки на 9 баров вправо влияет на соотношения временных зон исследуемых волн</b>

    p.s.2 вот ещё пример:
    zz_05.gif
     

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