FX Chaos Pyramid — это порт MetaTrader 4 советника «FX-CHAOS» из каталога MQL/8055. Стратегия использует связку дневного фильтра и рабочей 4-часовой разметки: входы совершаются на Н4, при этом дневные уровни задают контекст для прорыва. Первая сделка открывается только при подтверждении индикатором Awesome Oscillator, а дальнейшие сигналы усиливают позицию по принципу пирамидинга.
Реализация полностью базируется на высокоуровневом API StockSharp: подписки на свечи, привязка индикатора и стандартные помощники для заявок. Поэтому стратегию можно сразу использовать как в тестере, так и в онлайн-торговле.
Логика торговли
Дневной фильтр
Подписка на дневные свечи и вычисление последнего подтверждённого фрактала с помощью окна из пяти свечей.
Сохранение максимума и минимума предыдущего дня. Перед проверкой пробоя к уровням добавляется пользовательский буфер в шагах цены.
Основной таймфрейм
Подписка на 4-часовые свечи и привязка Awesome Oscillator (по умолчанию периоды 5 и 34).
Определение последнего фрактала на 4-часовом ряду — таким образом воссоздаётся работа оригинального индикатора zzf.
Для каждого нового торгового дня фиксируется цена открытия первой 4-часовой свечи, что соответствует вызову iOpen(NULL, 1440, 0).
Сигналы на вход
Покупка (этап 1): текущий день открылся ниже буферизированного максимума прошлого дня, 4-часовая свеча закрылась выше этого уровня, цена остаётся ниже последнего дневного восходящего фрактала, а значение AO отрицательное. Перед входом закрываются открытые продажи.
Продажа (этап 1): зеркальные условия с использованием минимума и положительного AO.
Пирамидинг
После открытия первой позиции каждая завершённая 4-часовая свеча проверяет возможность добавления:
Для продолжения покупок свеча должна открытьcя ниже и закрыться выше буферизированного максимума предыдущей 4-часовой свечи, оставаясь ниже последнего восходящего фрактала на Н4.
Для продолжения продаж используются минимум и нисходящий фрактал.
Дополнительно можно требовать, чтобы текущая стоимость портфеля превышала баланс (AccountEquity() > AccountBalance()), как это сделано в МТ4.
Количество ступеней ограничивается параметром (до пяти, как в исходнике). Счётчики сбрасываются при закрытии позиции или смене направления.
Управление объёмом
Советник на MT4 выбирает один из заранее заданных наборов объёмов в зависимости от величины MAX_Lots, которая растёт ступенчато по мере увеличения баланса. Порт использует те же таблицы и добавляет параметры для базового баланса, шага роста и общего множителя объёмов.
Диапазон MAX_Lots
Этап 1
Этап 2
Этап 3
Этап 4
Этап 5
< 2
0.10
0.50
0.40
0.30
0.20
[2, 4)
0.20
1.00
0.80
0.60
0.40
[4, 5)
0.30
1.50
1.20
0.90
0.60
[5, 7)
0.40
2.00
1.60
1.20
0.80
[7, 8)
0.50
2.50
2.00
1.50
1.00
[8, 10)
0.60
3.00
2.40
1.80
1.20
[10, 11)
0.70
3.50
2.80
2.10
1.40
[11, 13)
0.80
4.00
3.20
2.40
1.60
[13, 14)
0.90
4.50
3.60
2.70
1.80
≥ 14
1.00
5.00
4.00
3.00
2.00
Параметр VolumeScale масштабирует весь набор, что удобно при смене инструмента или брокера.
Параметры
Название
Описание
Primary Candle
Рабочий таймфрейм для сигналов (по умолчанию 4 часа).
Daily Candle
Таймфрейм старшего уровня для расчёта уровней (по умолчанию сутки).
AO Fast / AO Slow
Быстрый и медленный периоды Awesome Oscillator.
Breakout Buffer
Буфер в шагах цены, добавляемый к максимумам и минимумам.
Max Stages
Максимальное число ступеней пирамиды (1–5).
Require Profit
Требовать ли положительную плавающую прибыль перед добавлением.