Индикаторы: FivePattern

 

FivePattern:

Индикатор технических фигур Меррилла. М & W Wave Patterns by A. Merrill.

Технический индикатор выводит на ценовом графике технические фигуры Меррилла (М & W Wave Patterns), линии поддержки/сопротивления, построенные по экстремумам стандартного индикатора ZigZag.

А. Меррилл классифицировал пятиконечные фигуры по порядку следования точек сверху вниз, создав упорядоченную классификационную модель М & W волн, вот они:

M-Wave

W-Wave

Автор: Andrey Emelyanov

 

разработка интересна,

но не понимаю что делаю не так , т.к. при компиляции выдает ошибки

 

 
vspexp 2014.05.22 03:53    RU

разработка интересна,

но не понимаю что делаю не так , т.к. при компиляции выдает ошибки


Проблема в именах закачиваемых файлов, нужно убрать окончания типа __1
 
Ern.CheGevarra:
Проблема в именах закачиваемых файлов, нужно убрать окончания типа __1
Спасибо большое, помог!
 

Уважаемы форумчане! У кого есть идеи, предложения по улучшению кода (особенно касаемо расчета прогноза) ПИШИТЕ В ФОРУМЕ НЕ СТЕСНЯЕМСЯ! ЭТО НЕ ОКОНЧАТЕЛЬНАЯ ВАРИАЦИЯ КОДА, А ТОЛЬКО НАЧАЛО...
 
Насчет алгоритма зигзага - для более корректного расчета идея  брать данные с минутного таймфрейма.
 
Ern.CheGevarra:
Насчет алгоритма зигзага - для более корректного расчета идея  брать данные с минутного таймфрейма.
Ваша идея хороша. Сейчас работаю над алгоритмом Зигзага - где выборка значений производиться не пунктовому фильтру (Deviation), а по процентному фильтру. Таким образом я избавлюсь от жесткой привязки к цене. Но и Вашу идею добавлю, чтобы было с чем сравнивать.
 

Респект и уважуха за индикатор, побольше бы такого осмысленного кода в базе!

 
Выложил в базу свой вариант зигзага. Обошелся без минуток.
 

Доброго времени суток!

Выкладываю новую (вторую) версию индикатора FivePattern. На этот раз данная версия для генерации торговых сигналов(т.е. торговая версия). Имеет на борту 5 индикаторных буферов (много - знаю, думаю как этого избежать, но все они нужны для генерации торговых сигналов). Коротко о буферах:

0  ExtPointE[]    - хранит значения точки Е, если цена находится около этой точки можно ожидать движение в сторону точек Evolution/Mutation;

1  ExtDeltaDE[]  - хранит значение длины волны D-E в пунктах(предполагаю, что данное значение будет полезно в алгоритмах усреднения точки Е);  Пример кода:

double RateRisk; // Процент риска

MqlTick now_tick;

SymbolInfoTick(_Symbol,now_tick);

if((now_tick.ask >= (ExtPointE[rate_total-1]-ExtDeltaDE[rate_total-1]*RateRisk*_Point))&&(now_tick.ask <= (ExtPointE[rate_total-1]+ExtDeltaDE[rate_total-1]*RateRisk*_Point)))

  { ...;// Генерировать сигнал} else ...;// Не генерировать сигнал

2  ExtEvolution[] - хранит значение прогноз движения цены в случае эволюции модели;

3  ExtMutation[]  - хранит значение прогноз движения цены в случае мутации модели;

4  ExtSumModel[] - хранит значение = счетик_эволюций/(счетик_эволюций+счетик_мутаций) . Для получения счетчика_мутаций = 1 - ExtSumModel[rate_total-1] . Необходим для установки динамической весомости торговых сигналов.

 Изменения:

1. Добавлен код "анти-флэтовой" защиты при определении точки E;

2. Добавлен код "проверка размерности волны D-E", т.е. теперь корректирую точку E, если она меньше ожидаемого значения (значительно уменьшилось число перерисовок точки Е, и улучшился прогноз);

3. Переработан код прогнозирования движения цены (Evolution/Mutation level_0);

4. Расчет индикатора проходит на всей доступной истории терминала, т.е. счетчик модели показывает реальное значение, а не погоду на Марсе :-)

5. Исправил отрисовку точек Arrow, теперь они почти всегда по середине, а не снизу как раньше;

6. Добавил иконку проекту.

Что не успел сделать:

1. Добавить возможность выбора методик расчета Zigzag. Очень хотел, но не успел, а плохо отлаженный код не солидно выкладывать в четных версиях ;-)

2. Расчет эволюций/мутаций level_1, его следы в коде есть, но я бы не использовал бы его... пока это проба пера.

Файлы:
 

 

При компиляции выдает ошибки.