RA Mean Reversion Portfolio
RA Mean Reversion Portfolio — мультивалютный советник для MetaTrader 5. Он ищет статистически
растянутые дневные движения по двум валютным парам и торгует в расчёте на то, что такие
движения возвращаются к недавнему среднему. Обе пары торгуются с одного графика и управляются
как один портфель с единым лимитом риска. Каждая сделка защищена стоп-лоссом.
Тип стратегии: мультивалютная портфельная торговля на возврат к среднему по D1 (контртрендовая).
Советник работает только на D1, держит по одной позиции на символ и не использует сетку,
усреднение или мартингейл.
Преимущества
- Простая и полностью детерминированная логика. Сигнал — это z-оценка дневной цены закрытия,
поэтому любое решение можно пересчитать и проверить вручную. Скрытых адаптивных компонентов
нет.
- Один портфель, один лимит риска. Риск на сделку фиксирован, суммарный риск портфеля
ограничен, число одновременных позиций ограничено.
- Фильтр корреляции. Новая сделка по паре, которая сильно коррелирует с уже открытой
позицией, берётся с половинным риском, а две такие коррелированные позиции блокируют
дальнейшие входы.
- Стоп-лосс на каждой сделке, рассчитанный от ATR на момент входа. Он никогда не расширяется,
и тейк-профита, который мешал бы правилам выхода, нет.
- Пропуск вместо превышения риска. Если расчётный объём меньше минимального лота брокера,
сделка не открывается вовсе, поэтому риск на сделку не превышается.
- Модуль защиты. Новые входы приостанавливаются при глубокой просадке от пика эквити и при
большом убытке в течение текущего дня.
- Пауза после стоп-лосса. После срабатывания стоп-лосса советник выжидает и требует, чтобы
z-оценка вернулась внутрь порога входа, прежде чем торговать снова.
- Дружелюбен к брокеру. Имена символов с префиксами и суффиксами находятся автоматически,
свободная маржа проверяется перед каждым ордером, советник работает и на netting-,
и на hedging-счетах.
- Журнал сделок в CSV. Каждая закрытая сделка записывается в файл: направление, цены,
z-оценки, результат и причина выхода — для независимого анализа.
- Все имена входных параметров и сообщения программы на английском языке.
Как это работает
Для каждого символа советник считает z-оценку логарифма дневной цены закрытия на скользящем
окне:
z = (логарифм цены закрытия - среднее по окну) / стандартное отклонение по окну
Окно по умолчанию — 45 дневных баров, и оно не включает бар, на котором появился сигнал.
Поэтому все расчёты идут по закрытым барам и сигнал не перерисовывается.
- Если z больше +2.0, пара считается статистически растянутой вверх, и советник продаёт.
- Если z меньше -2.0, пара считается статистически растянутой вниз, и советник покупает.
- Позиция закрывается, когда z возвращается к 0, когда достигнуто максимальное время удержания
(25 дневных баров) или по стоп-лоссу.
Расстояние стоп-лосса — ATR(14), умноженный на 1.5 на момент входа. Размер позиции
рассчитывается из этого расстояния и заданного процента риска по стоимости тика и шагу цены
символа.
Управление риском
- Риск на сделку: 0.3% баланса счёта по умолчанию.
- Суммарный риск всех открытых позиций: 1.5% баланса по умолчанию.
- Максимальное число одновременных позиций: 3 по умолчанию.
- Аварийная защита: новые входы запрещены, пока просадка от пика эквити превышает 15%, или
после убытка 3% в течение текущего дня.
- Открытые позиции всегда управляются по своим правилам; модуль защиты останавливает только
новые входы.
Поддерживаемые символы и счета
- Символы по умолчанию: EURGBP и AUDUSD на таймфрейме D1 — пары, на которых параметры
подбирались и тестировались.
- Другие валютные пары можно перечислить во входных параметрах, они будут торговаться, но
модель для них не оптимизировалась.
- Имена символов сопоставляются только по буквам и цифрам, поэтому EURGBP, EURGBP.a или
EURGBPm находятся автоматически. Если ни одного из указанных символов на счёте нет, советник
торгует символ графика, а не отказывается запускаться.
- Счета: поддерживаются и netting, и hedging. Позиции открываются по одной на символ,
закрываются по своему тикету и фильтруются по magic-номеру, поэтому ручные сделки и сделки
других советников не затрагиваются.
- Таймфрейм: прикрепите советник к любому графику D1. Торгуемые пары берутся из входных
параметров.
Чего советник не делает
- Не использует сетку, усреднение, мартингейл и увеличение лота после убытка.
- Не использует трейлинг-стоп и перевод в безубыток: стоп-лосс ставится при входе и остаётся
на месте.
- Не использует тейк-профит: выход — возврат z-оценки, максимальное время удержания или
стоп-лосс.
- Не фильтрует новости и экономический календарь.
- Не использует мультитаймфреймовую логику: модель работает только на D1.
- Никогда не открывает позицию против уже открытой позиции по тому же символу.
Требования
- MetaTrader 5 с включённой автоматической торговлей в терминале и разрешением для советника.
- Рекомендуемый депозит: от 5000 USD/EUR; тест ниже выполнен на 10000 EUR. Советник пропускает
сделку, если 0.3% баланса не покрывают минимальный лот 0.01. При типичных дневных стопах по
ATR этот порог составляет около 2900 EUR для EURGBP и около 4400 USD для AUDUSD.
- Плечо: достаточно 1:30 и выше, так как используется лишь небольшая часть доступной маржи.
- История D1: не менее 47 баров на символ; фильтр корреляции использует 90 баров.
Результаты тестов
Цифры ниже получены в тестере стратегий MetaTrader 5 (build 6241) на настройках по умолчанию.
Это результат исторической симуляции, а не реальной торговли.
- Период: 2020.01.01 - 2026.10.09, около 6.75 лет
- Символы: EURGBP D1 и AUDUSD D1, торгуются с одного графика EURGBP D1
- Модель: every tick; депозит 10000 EUR; плечо 1:100
- Итог: +887.09 EUR, конечный баланс 10887.09 EUR
- Сделок: 124; профит-фактор 1.59; прибыльных сделок около 57%
- Максимальная просадка по балансу: 1.58% (174 EUR); по эквити: 1.78% (197 EUR)
- Коэффициент Шарпа на сделку: 1.13
- AUDUSD: 65 сделок, +272 EUR, профит-фактор 1.30
- EURGBP: 58 сделок, +610 EUR, профит-фактор 2.06
- По годам: 2020 +98.66 EUR (17 сделок), 2021 +219.40 (18), 2022 +147.65 (18),
2023 +329.10 (20), 2024 +41.47 (20), 2025 +130.26 (19), 2026 до 09.10 -85.25 (11)
Как читать эти цифры
- Результат распределён по времени неравномерно. Лучший год (2023) даёт около трети всего
итога, 2024 был почти нулевым, а неполный 2026 год отрицательный. Модель возврата к среднему
лучше работает на боковом рынке и, как ожидается, будет слабее в сильном тренде.
- Тест использует историю спредов, свопы и настройки комиссии тестового счёта. У другого
брокера результат будет отличаться.
- Результаты бэктеста и прошлые результаты не гарантируют будущих.
Входные параметры
Портфель:
- InpPairs = EURGBP,AUDUSD - торгуемые символы через запятую
- InpMaxPositions = 3 - максимальное число одновременных позиций
- InpRiskPct = 0.3 - риск на сделку, % баланса
- InpMaxPortfolioRiskPct = 1.5 - максимальный суммарный риск открытых позиций, % баланса
Модуль корреляции:
- InpUseCorr = true - включить фильтр корреляции
- InpCorrWindow = 90 - окно корреляции, дневные бары
- InpCorrMax = 0.7 - порог корреляции, при котором риск новой сделки делится вдвое
Ядро (z-оценка на D1):
- InpZWin = 45 - окно z-оценки, дневные бары
- InpEntry = 2.0 - порог входа по модулю z
- InpExitZ = 0.0 - уровень z, при котором позиция закрывается
- InpMaxHold = 25 - максимальное время удержания, дневные бары
- InpATRPeriod = 14 - период ATR для стоп-лосса
- InpATRMult = 1.5 - множитель ATR для стоп-лосса
Защита:
- InpMaxDDStopPct = 15.0 - блокировка новых входов выше этой просадки от пика эквити, %
- InpDailyLossStopPct = 3.0 - блокировка новых входов выше этого убытка за текущий день, %
- InpSLCooldownBars = 5 - пауза после стоп-лосса, дневные бары (0 = выключено)
Сервис:
- InpRequireNeutralReset = true - после стоп-лосса ждать, пока модуль z вернётся внутрь порога
входа
- InpMagic = 1544010 - magic-номер, должен быть уникальным для графика
- InpSlippage = 30 - допустимое проскальзывание, пункты
- InpJournal = true - записывать журнал сделок в CSV
- InpJournalFile = AI_Portfolio_trades.csv - имя файла журнала
- InpJournalCommon = false - писать журнал в общую папку вместо папки данных терминала
Установка
1. Установите советник из Market или скопируйте файл в папку Experts терминала.
2. Прикрепите его к любому графику D1 и разрешите автоматическую торговлю для советника.
3. Убедитесь, что автоматическая торговля включена в терминале.
4. Проверьте журнал "Эксперты": советник выводит разрешённые символы, режим маржи счёта и
активные настройки при старте.
Отказ от ответственности
Торговля на финансовых рынках связана с риском убытка.
Советник реализует определённую торговую логику. Он не предсказывает рынок и не обещает
прибыль.
Результаты, полученные в тестере стратегий MetaTrader 5, являются результатом исторической
симуляции и не являются результатами реальной торговли.
Прошлые результаты не гарантируют будущих.
Проверьте продукт на демо-счёте перед использованием на реальном счёте и никогда не рискуйте
деньгами, потерю которых не можете себе позволить.