Смотри, как бесплатно скачать роботов
Ищи нас в Twitter!
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Индикаторы

FivePattern - индикатор для MetaTrader 5

Просмотров:
17697
Рейтинг:
(161)
Опубликован:
2014.04.25 11:39
Обновлен:
2016.11.22 07:33
\MQL5\Include\MyObjects\ \MQL5\Include\MyMath\Extremum\ \MQL5\Include\MyArrays\ \MQL5\Include\MyMath\Pattern\
fp.zip (1.24 KB)
MQL5 Фриланс Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

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

M-Wave

W-Wave

Динамический паттерн А. Меррилла - это такой паттерн, который может изменяться во времени. Динамический паттерн находится на первых четырех лучах зигзага справа. В данном индикаторе все паттерны условно считаются динамическими. Чтобы это условие выполнялось почти всегда, искусственно введено понятие мутация волн (см. ниже) и немного изменен алгоритм классического индикатора Zigzag.

Что касается ядра алгоритма поиска экстремумов - Zizag, использование этого алгоритма является "временным (быстрым) решением" и несомненно требует замены. Так как большинство ошибок связанных с обнаружением паттерна NOPATTERN (см. в enum NamePattern в файле MyCPattern.mqh) - это ошибка поискового ядра.

Эволюция и мутация волн

Эволюция - изменение динамического паттерна без перехода в другое семейство волн. Эволюция паттернов M-Wave:

Evolution M Wave

Эволюция паттернов W-Wave:

Evolution W Wave

Мутация - изменение динамического паттерна с обязательным переходом в другое семейство волн. Мутация паттернов M-Wave:

Mutation M in W

Мутация паттернов W-Wave:

Mutation W in M

Обратите внимание: алгоритм прогнозирования считает, что мутация будет в младшую фигуру эволюции, а счетчик эволюций/мутаций знает о возможной не последовательной мутации/эволюции. Например: мутация в среднюю, старшую фигуру. Это обеспечивается за счет выбора особых значений битовой-маски в enum NamePattern (см. MyCPattern.mqh). Если Вы планируете использовать счетчик эволюций/мутаций - не меняйте enum NamePattern.


Работа индикатора:

В ходе своей работы индикатор выводит на график технические фигуры Меррилла (М & W Wave Patterns) и линии поддержки/сопротивления. Перерасчет индикатора происходит только на новом баре истории(экономия процессорного времени на отрисовку объектов). Имена всех объектов-индикатора псевдослучайные. Индикатор производит расчет прогноза движения цены на основании ожидания частной(последовательной) эволюции/мутации волн. Имеет собственный счетчик эффективности паттерной модели.

Five Pattern 2


Текущая версия:

Версия 2.01- торговая (для генерации торговых сигналов).

Поисковое ядро: classic Zigzag;

Модель прогноза: level 0 (последовательная эволюция/мутация);

Счетчик модели: level 0 ;

Индикаторные буферах:

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. Добавил иконку проекту.

TSI_WPR TSI_WPR

Осциллятор TSI, построенный на значениях технического индикатора WPR, выполненный со своей сигнальной линией в виде цветного облака.

BackgroundCandle_HullTrend_HTF BackgroundCandle_HullTrend_HTF

Индикатор, рисующий свечи с более крупного таймфрейма в соответствии с показаниями индикатора HullTrend.

CHashArrayStringString CHashArrayStringString

Пример реализации хеш массива строк со строковым ключем.

Karpenko Karpenko

Трендовый индикатор, выполненный в виде цветного облака.