Gartley Patterns и их модификации

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

?

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

  1. Да, это необходимо

    124 голосов
    62,9%
  2. Нет, не нужно

    21 голосов
    10,7%
  3. А зачем это?

    52 голосов
    26,4%
  1. nen

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

    Закрытие кода не из-за коммерческих побуждений сделано.
    Причин несколько.
    Самая главная - это декларация компании метаквотес, что все старые программы в новой версии МТ4 будут работать.
    А значит, только скомпилированые программы в старых до 509 билда версиях МТ4 должны работать.
    Вторая причина - отсекаются те, кто пытался манипулировать...
    Возможно, часть, связанная с паттернами, будет вырезана из ZUP в малый ZUP с открытым кодом.
    То есть в малый ZUP могут войти паттерны Песавенто, Gartley, Меррилла, фибы...
     
  2. DmitriyX

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

    Я исследовал вариации без названий. Есть свои плюсы. Но пока вернулся к вариантам с названиями. Один не успеваю провести полные исследования. С удовольствием поделился бы, что достиг в данном направлении. Но у Вас на форуме личка забита, а майла не знаю. Думаю пригодилось бы, Вам меньше работы.

    "Возможно, часть, связанная с паттернами, будет вырезана из ZUP в малый ZUP с открытым кодом.
    То есть в малый ZUP могут войти паттерны Песавенто, Gartley, Меррилла, фибы... "

    За облегчённый вариант (если будет!) отдельное спасибо, а то с моими запросами оперативку начинает подъедать...
     
  3. nen

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

    Скопление уровней - линия 1 - Gartley. Отработало.
    Следующее скопление - линия 2 - Crab.
    Возможны промежуточные паттерны с неясной перспективой. Сейчас A Shark.

    usdcadh4.png

    Не понятно сейчас, как относиться к этим скоплениям уровней.
    Только набрав какой-то опыт можно будет говорить что-то определенное.
     
  4. nenzig

    nenzig Новичок

    Здравствуйте, дорогой nen!
    Я занимаюсь разработкой советника где использую ваш индикатор Zigzag_nen. Подскажите пожалуйста как из этого индикатора вывести последние 8 экстремумов с их координатами во времени? Я хочу их использовать в советнике.
     
  5. nen

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

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

    Найти 8 экстремумов можно так:
    double arr[8];
    datetime arrtime[8];
    int k=0;
    For (int i=0;i<Bars && k<8;i++)
    {
    if (zz>0)
    {
    // записываем в массивы найденные пики
    arr[k]=zz; arrtime[k]=Time;
    k++;
    }
    }
     
    1 человеку нравится это.
  6. nenzig

    nenzig Новичок

    Подскажите пожалуста, как эти минимумы с максимумами и их время можно с помощью функции iCustom() вытащить в советник, или существует какойто другой способ?
     
    1 человеку нравится это.
  7. nen

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

    Как Вы собираетесь писать советник, когда такие простые задачи для Вас представляются трудными?

    Вот пример из 137 весрии ZUP, как вытаскиваются в массивы максимумы и минимумы:


    Код:
    while (bigshift<big_limit && i<limit) // начальное заполнение буфера nen-ZigZag ("полоски")
    {
    if (Time[i]>=nen_time)
    {
    if (ExtIndicator==6)
    {
    if (ExtLabel>0)
    {
    ha[i]=iCustom(NULL,GrossPeriod,"ZigZag_nen2",minBars,ExtBackstep,noBackstep,1,RecoverFiltr,1,bigshift);
    la[i]=iCustom(NULL,GrossPeriod,"ZigZag_nen2",minBars,ExtBackstep,noBackstep,1,RecoverFiltr,2,bigshift);
    }
    nen_ZigZag[i]=iCustom(NULL,GrossPeriod,"ZigZag_nen2",minBars,ExtBackstep,noBackstep,0,RecoverFiltr,0,bigshift);
    }
    else if (ExtIndicator==7)
    {
    if (ExtLabel>0)
    {
    ha[i]=iCustom(NULL,GrossPeriod,"DT_ZZ_nen",minBars,1,1,bigshift);
    la[i]=iCustom(NULL,GrossPeriod,"DT_ZZ_nen",minBars,1,2,bigshift);
    }
    nen_ZigZag[i]=iCustom(NULL,GrossPeriod,"DT_ZZ_nen",minBars,0,0,bigshift);
    }
    else if (ExtIndicator==8) nen_ZigZag[i]=iCustom(NULL,GrossPeriod,"CZigZag",minBars,ExtDeviation,0,bigshift);
    else if (ExtIndicator==10)
    {
    if (ExtLabel>0)
    {
    ha[i]=iCustom(NULL,GrossPeriod,"Swing_ZZ_1",minBars,1,1,bigshift);
    la[i]=iCustom(NULL,GrossPeriod,"Swing_ZZ_1",minBars,1,2,bigshift);
    }
    nen_ZigZag[i]=iCustom(NULL,GrossPeriod,"Swing_ZZ_1",minBars,1,0,bigshift);
    }
    i++;
    }
    else {bigshift++;nen_time=iTime(NULL,GrossPeriod,bigshift);}
    }
    
     
  8. DmitriyX

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

    Попытался поразмыслить над 1 и 2.

    [​IMG]

    Оба уровня прекрасно лежат в сопротивлении старшего тайфрема, плюс лежат в уровне волновой разметки межу TZ1,TZ2.
    Первый 1.0, второй 1.414. Сейчас 1.277. Построил канал месячный вот что получилось. Так и просится 1.414......
    Но это только желания и тех анализ. Жалко ждать долго, до апреля 14 года.
    Но интересно, попытаюсь на младших собрать статистику,
    Исходя из всех соображений старшие уровни пока никто не отменял. Поэтому у меня стоят по два ZUP на каждом графике с разными maxDepth 15,55, Если загнать в один так это будет чудо. Хотя это уже Вы сделали, вывели старший таймфрем.

    Это только предположения. Но фибы упрямая вещь!!!! Можно все разложить и в обратную сторону (тоже как вариант), подождем отката от 1.272 с XD 1.0.

    [​IMG]
     
  9. nenzig

    nenzig Новичок

    Евгений, я не собираюсь, а уже пишу, проблема как видите пока только с Zigzag, вот и обратился к Вам как более опытому, не зря же Вы 7 лет на его доработку истратили.

    я сделал примерно что и в вашем примере, только для индикатора ZigZag_nen:
    Код:
    {
       double xx; double yy; int co = 0; double c[8]; double b[8];
    
       int    i, k=iBars(Symbol(), 0);
       for (i=1; i<k; i++)
       {
    	  xx=iCustom(Symbol(),0, "ZigZag_nen", ExtDepth,ExtBackstep,ExtLabel,1,i);
    	  yy=iCustom(Symbol(),0, "ZigZag_nen", ExtDepth,ExtBackstep,ExtLabel,2,i);
    	  if (xx>0 || yy>0)
    	  {
    	  c[co]=xx;
    	  b[co]=yy;
    	 Print("max=",c[co]);
    	 Print("min=",b[co]);
    	 co++;
    	 }
        }
    
    Print ни максимум ни минимум не выводит. Что я делаю не так?
     
  10. nen

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

    Попробуйте так:
    Код:
    double xx; double yy; int co = 0; double c[8]; double b[8];
    
    int i, k=iBars(Symbol(), 0);
    for (i=1; i<k && co<8; i++)
    {
    
    xx=iCustom(Symbol(),0, "ZigZag_nen", ExtDepth,ExtBackstep,ExtLabel,1,0,i);
    yy=iCustom(Symbol(),0, "ZigZag_nen", ExtDepth,ExtBackstep,ExtLabel,2,0,i);
    if (xx>0 || yy>0)
    {
    c[co]=xx;
    b[co]=yy;
    Print("max=",c[co]);
    Print("min=",b[co]);
    co++;
    }
    }
    
    В iCustom( пропущен 0
     
    1 человеку нравится это.
  11. prelest

    prelest Новичок

    поручик
    ________________________________
    Спасибо большое.
     
  12. поручик

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

    аффигеть, что творят канадцы

    подключает несколько терминалов, можно смотреть чарты не перещелкивая ТФ, а "наезжая мышкой"
    делает "фотки"
    Осталось выдачу сигналов от ZUP прикрутить
     

    Вложения:

    • 9кееук.JPG
      9кееук.JPG
      Размер файла:
      65,5 КБ
      Просмотров:
      16
  13. babayka

    babayka Новичок

    А что за софтина такая?
     
  14. поручик

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

  15. babayka

    babayka Новичок

    Спасибо!
     
  16. opel70

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

    Вот у Стива хороший три движения. только он у него как А121. и рамка слишком большая. отрабатывают хорошо. часто разворот ловят. по времени идеальные редко конечно бывают. audnzdh4.png
     
  17. DmitriyX

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

    Валера спасибо, что натолкнули на мысль, проверить почему не видно "3 Drives"

    Это из кода Стива.

    namepatterns[29]="A 121"; minXB_[29]=1.272; maxXB_[29]=2; minAC_[29]=0.5; maxAC_[29]=0.786; minBD_[29]=1.272; maxBD_[29]=2; minXD_[29]=1.272; maxXD_[29]=2.618;
    namepatterns[30]="3 Drives"; minXB_[30]=1.272; maxXB_[30]=1.618; minAC_[30]=0.618; maxAC_[30]=0.786; minBD_[30]=1.272; maxBD_[30]=1.618; minXD_[30]=1.618; maxXD_[30]=2.618;

    "A 121" - полностью забивает его, по всем соотношениям. Естественно компьютер и выбирает "A 121", по многим причинам. То что он первый в списке, какие допуски и т.д.. Поменять местами не думаю, что поможет.

    Вывод один - определиться, что нам важнее, не нужное удалить.
     
  18. DmitriyX

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

    Кручу, Верчу - Фантазией запутать хочу!!!!

    Возьмем ряд Пасеванто 0.128/0.382/0.447/0.5/0.618/0.707/0.786/0.886/1.0/1.128/1.272/1.414/1.618/2.0/2.236/2.618/3.142/3.618/4.236.

    Разложим по чистым фибо:
    по XD -19 вариантов.
    по XD,BD - 19*19=361 вариант.
    по XD,BD,AC - 361*19=6859 вариант.
    по XD,BD,AC,XB - 6859*19=130321 вариант.

    Так у нас все впереди, придумаем новые названия, разложим по всевозможным соотношениям.
    NN, STASI,BG - все это прекрасно. У меня есть паттерн назвал в честь дочери, уж больно хорошо отрабатывает.

    Я называю все 130321 из этого ряда - Демонами (Дьявол), как назовет Евгений их в будущих версиях, паттерны без названий , так и будет.
    Все равно к этому все и придет.

    Но смысл, не названиях, а в реализации. Здесь только Евгений нас может спасти, его детище.....
     
  19. nen

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

    Дмитрий, не уверен, что компьютер, а точнее, метатрейдер, его следующая реинкарнация смогут потянуть 130321 паттерн.
    Слежу за бета тестированием нового МТ4. И часто это навевает грустные мысли.
     
  20. DmitriyX

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

    Да нет Евгений, я просто констатировал факт насчет "Фантазий".

    Вполне 361 вариант хватает для прибыльной торговли, Если разложить SNORM с 45 паттернами получится 600. 200 повторений, наложений.
    Но в этом есть свои прелести. Не отходим от названий стандартных моделей, знаем какие разворотные или продолжение.

    Теперь по машинам - обе прекрасно тянут... У меня открыто, на сегодня 15 валют, по 3 таймфренда - 45, на каждом по 2 ZUP с 600 + 2 с 140-ка моделями - 45*4=180, 180 ЗАПОВ, сказали бы мне это вчера - не поверил бы... Берут оперативы около рубля. Но кому надо тот мирится.

    Для чего, я тут циферки писал - Как же все таки вывести старший таймфрем, в одном ZUP. Гонять по 2 ZUP с разными maxDepth=15,55, накладно, думаю многие согласятся с этим. И это еще не вся задачка, надо что бы выдавал алерт на разные maxDepth. Понимаю сложно, может и не возможно. Наверное сам себе ответил на свой вопрос, что не возможно.......но может есть вариант подумать?

    Боюсь дальше развивать мысль (тут один забегал, предлагал, пошумел, удалили с форума!!!!), возможно тогда облегчим ZUP для начала? Облегчим жизнь компьютеров хоть немного... ну а дальше... дальше будет завтра и мы снова проснемся, будем задавать глупые вопросы, а для Вас, останется только одна головная боль, "КАК ЖЕ ЭТО ВОПЛОТИТЬ" !!!! Рад бы был переволить, хоть 1% процент с Ваших плеч, но не суждено было родиться программистом. :ff:
     

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