← Все идеи
#033Возврат к среднемуСвинг

Покупка 5-дневного минимума с выходом над MA5 и фильтром рынка

Rob Hanna: покупать закрытие на 5-дневном минимуме и выходить, когда цена закроется выше 5-дневной средней, если рынок на твоей стороне. Фильтр Hanna описан словами, у Laurens Bensdorp он числовой: S&P 500 выше MA40.

The Algorithmic Advantage · Rob Hanna · Смотреть видео

Рынки

Акции, Индексы

Таймфрейм

D1

Данные

OHLC, Список инструментов

Правила

Частично формализовано

Сложность

Средняя

Статус

Не проверено

Часть правил дописали мы, это помечено в тексте.

TradingView есть ловушки
EasyLanguage есть ловушки
MetaTrader 5 есть ловушки

Идея коротко

Rob Hanna приводит пример самой простой идеи возврата к среднему: покупать каждый 5-дневный минимум и продавать, когда цена закроется выше 5-дневной средней. По его словам, у такой системы может быть около 75% прибыльных сделок, но кривая идёт вверх, вверх и проваливается, и провалы бывают резкими.

Защищается он размером позиции и подтверждением от рынка. Откаты в акциях он не покупает, если рынок перед этим взлетел и сам ждёт отката или если рынок ломается вниз. Решение принимает его индикатор Aggregator, который сводит все его исследования рынка в прогноз на несколько дней. Состав индикатора закрыт. Торгует Hanna такие модели только на крупных компаниях: S&P 500, S&P 100, NASDAQ 100.

Laurens Bensdorp в другом выпуске описывает похожую конструкцию с числами. Бумага должна быть в тренде, например выше 150-дневной EMA. Если S&P 500 закрылся ниже 40-дневной средней, новых входов нет. Выход часто по времени: не вернулась к средней за три дня, продаём. Стоп есть всегда, широкий.

Фильтры двух авторов в карточке не смешаны. Сигнал Hanna один, к нему два отдельных фильтра рынка: A по Hanna в нашей формализации и B по Bensdorp с его числами. Отбор бумаг вынесен в отдельное правило.

Почему это может работать

Hanna объясняет возврат к среднему структурой владельцев. У крупной компании много институциональных акционеров, и при сильной распродаже кто-то из них докупает по выгодной цене. У small caps таких владельцев один-два, и если один решил выйти, бумага может падать долго. Банкротство в S&P 500 тоже менее вероятно. Фильтр рынка он объясняет так: когда рынок на твоей стороне, поднимаются все лодки, и выбирать бумаги можно менее точно.

Bensdorp ставит фильтр рынка не ради лучшего результата отдельной системы. Он исходит из того, что при быстром падении все его лонговые системы теряют одновременно. Фильтр 40-дневной средней автоматически снижает лонговую экспозицию, когда рынок против, а на отскоке включается раньше долгосрочных трендовых фильтров. Этот вывод у него из опыта: после 2008 года он поверил, что лонг на возврат к среднему зарабатывает в медвежьем рынке, а в 2011 году убедился в обратном.

Оговорка: 75% у Hanna это пример того, что можно увидеть в тесте, а не показанный результат. Свои числа Bensdorp называет примерами.

Правила

Сигнал и выход (Rob Hanna)

// дневные бары; акция из S&P 500, S&P 100 или NASDAQ 100, либо индексный ETF
FiveDayLow = Close <= Lowest(Close, 5)      // автор: покупать 5-дневный минимум
// Finetiq: минимум по закрытиям, текущий бар в окне. Вариант: Low <= Lowest(Low, 5)

IF FiveDayLow AND MarketOK AND NOT InPosition
    BUY AT NEXT BAR OPEN                    // Finetiq: исполнение; вариант BUY AT CLOSE
IF Close > SMA(Close, 5)
    EXIT AT NEXT BAR OPEN                   // автор: цена закрылась выше 5-дневной средней
// стопа в простой версии автора нет

Фильтр рынка A: Hanna (формализация Finetiq)

Hanna называет две ситуации, в которых не покупает, но не даёт для них чисел. Его Aggregator недоступен, поэтому ниже простая замена.

SPX = закрытие S&P 500 (второй символ)
Rocket    = SPX >= Highest(SPX, 10)         // автор: рынок взлетел и ждёт отката; Finetiq: 10-дневный максимум
BreakDown = SPX <= Lowest(SPX, 20)          // автор: рынок ломается вниз; Finetiq: 20-дневный минимум
MarketOK  = NOT Rocket AND NOT BreakDown
// автор: фильтр запрещает только новые входы, открытые позиции не закрывает

Если торговать сам индекс, фильтр A превращается в правило «покупать 5-дневные минимумы, которые не 20-дневные». Это уже другая система, её стоит тестировать отдельно.

Фильтр рынка B: Bensdorp (числа автора)

Триггер отката у Bensdorp не назван. Чтобы фильтры можно было сравнить, вход тот же, что у Hanna.

MarketOK   = SPX > SMA(SPX, 40)             // автор: S&P 500 выше 40-дневной средней; Finetiq: простая средняя
StockTrend = Close > EMA(Close, 150)        // автор: «например» 150-дневная EMA

IF FiveDayLow AND StockTrend AND MarketOK AND NOT InPosition
    BUY AT NEXT BAR OPEN                    // Finetiq: триггер Hanna

IF Close > SMA(Close, 5)  THEN EXIT AT NEXT BAR OPEN   // Finetiq: вернулась к средней = выше MA5
IF BarsSinceEntry >= 3    THEN EXIT AT NEXT BAR OPEN   // автор: не вернулась за 3 дня

StopLoss = EntryPrice * 0.80                // автор: стоп всегда, широкий, 20% в его примере
Shares   = Equity * 1% / (EntryPrice - StopLoss)   // автор: размер от расстояния до стопа; Finetiq: риск 1%
Shares   = Min(Shares, Equity * 10% / EntryPrice)  // автор: потолок доли капитала; Finetiq: 10%

Отбор бумаг (отдельное правило)

// Hanna: только крупные компании
UniverseA = члены S&P 500 на дату сигнала   // Finetiq: членство на дату, а не сегодняшний состав
// Bensdorp: все бумаги, включая исключённые из листинга,
// с фильтрами ликвидности, цены и волатильности, пороги не названы
UniverseB = акции США AND AvgVolume > X AND Close > Y AND ATRpct > Z   // Finetiq: X, Y, Z подбирать

Bensdorp поясняет фильтр волатильности: при удержании 1-5 дней бумага, которая ходит на 0.2% в день, ничего не даст. На широкой вселенной сигналов в день бывает больше, чем мест в портфеле. Правило выбора между ними ни один автор для этой системы не назвал.

Параметры

Параметр Значение Откуда
Сигнал закрытие на 5-дневном минимуме автор (Hanna)
База минимума закрытия, текущий бар в окне Finetiq
Выход закрытие выше SMA 5 автор (Hanna)
Вселенная A S&P 500, S&P 100, NASDAQ 100, без small caps автор (Hanna)
Фильтр A: взлёт рынка S&P 500 на 10-дневном максимуме Finetiq
Фильтр A: слом рынка S&P 500 на 20-дневном минимуме Finetiq
Фильтр B: рынок S&P 500 выше 40-дневной средней автор (Bensdorp), тип средней Finetiq
Фильтр B: тренд бумаги выше EMA 150 автор (Bensdorp)
B: выход по времени 3 дня автор (Bensdorp)
B: стоп 20% автор (Bensdorp, пример)
B: риск и потолок позиции 1% и 10% капитала Finetiq
Удержание 1-5 дней автор (Bensdorp)
Вход открытие следующего дня Finetiq

Что проверить

  1. Нужен ли фильтр. Один сигнал на одной вселенной: без фильтра, с A, с B. Смотрите на просадку и число одновременных позиций в 2008, 2011, 2020 и 2022 годах. Bensdorp ставит фильтр ради экспозиции, так что одной доходности для сравнения мало.
  2. Заявление про 75%. Простая версия без фильтра и стопа на крупных компаниях. Кроме процента прибыльных, посмотрите на худшую серию убытков и глубину провалов.
  3. Крупные против мелких. Те же правила на small caps. Hanna говорит, что там возврат к среднему ненадёжен. Если разница есть, это аргумент в пользу его объяснения.
  4. Стоп. Без стопа, 20% и 10%. Bensdorp ожидает, что стоп снизит процент прибыльных, и соглашается на это ради худшего сценария. Меряйте, сколько стоит эта страховка.
  5. Окрестность параметров. Минимум за 4, 5, 7 дней. Выход над SMA 3, 5, 7. Фильтр B: средняя 30, 40, 50, тренд EMA 100, 150, 200. Если результат держится только на исходных числах, это подгонка.
  6. База минимума. По закрытиям против минимумов бара.
  7. Издержки. Удержание несколько дней, сделок на широкой вселенной много. Комиссия и спред на входе по рынку заметно снижают среднюю сделку, прогоните тест с ними.

Особенности платформ

TradingView (Pine Script)

  • Стратегия торгует только символ графика. Портфель из акций S&P 500 в одном тесте не собрать: можно проверить сигнал на отдельных бумагах и сложить результаты вне платформы.
  • S&P 500 подключается через request.security с тикером индекса и таймфреймом "D". Без lookahead_on будущего на истории нет, но проверьте, что даты баров бумаги и индекса совпадают.
  • ta.lowest(close, 5) включает текущий бар, условие close <= ta.lowest(close, 5) это ровно 5-дневный минимум закрытий.
  • Членства в индексе на дату в Pine нет. Тест на сегодняшних членах индекса завышает результат.

MultiCharts и TradeStation (EasyLanguage)

  • Индекс подключается вторым потоком: Close of Data2, Average(Close of Data2, 40). Ордера идут только по Data1.
  • Портфель по вселенной: Portfolio Maestro в TradeStation, Portfolio Trader в MultiCharts. Для честного теста нужны данные с исключёнными из листинга бумагами, иначе результат завышен.
  • EMA 150: XAverage(Close, 150). Средней нужен разогрев 450-600 баров, первые годы истории отбросьте.
  • Выход по времени: If BarsSinceEntry >= 3 then Sell next bar at market. Стоп ценой: Sell next bar at EntryPrice * 0.8 stop.

MetaTrader 5 (MQL5)

  • Акции торгуются через CFD, список бумаг у брокера неполный, истории исключённых из листинга бумаг нет. Тест в MT5 почти всегда содержит ошибку выжившего.
  • Индекс читается через iClose по CFD на S&P 500, имя символа у брокеров разное. Дневной бар CFD строится по серверному времени и закрывается не в 16:00 ET, поэтому 40-дневная средняя будет немного другой.
  • Мультисимвольный режим тестера позволяет вести несколько бумаг в одном советнике, но все символы должны быть в Market Watch.
  • Своп за удержание до пяти ночей учитывайте в тесте.

Где идея может сломаться

  • Ни у Hanna, ни у Bensdorp нет показанного теста этой конструкции. 75% и 60% это их оценки.
  • Отрицательная асимметрия: много мелких выигрышей и редкие резкие провалы. Короткая история без 2008 или 2020 года покажет слишком гладкую кривую.
  • Фильтр A целиком наш. Настоящий фильтр Hanna закрытый и опирается на множество его исследований рынка.
  • Числа Bensdorp (EMA 150, MA 40) он называет примерами, и работают они у него внутри портфеля из десятков систем с разными выходами.
  • Тест на текущих членах S&P 500 без исключённых бумаг завышает результат, особенно для покупки падающих акций.
  • Версия на одном индексе даёт мало сделок и ведёт себя иначе, чем портфель из сотен акций.

Источники

  • 045 - Rob Hanna - Trading the VIX in a Diversified Portfolio

    The Algorithmic Advantage · Rob Hanna · 2025-12-03

    • 18:43Возврат к среднему только на крупных компаниях
    • 19:05Опора возврата: институциональные владельцы
    • 20:41Простая система: 5-дневный минимум, выход над MA5
    • 20:54Около 75% прибыльных сделок и резкие провалы
    • 21:13Риск: размер позиции и подтверждение рынком
    • 21:34Не покупать после взлёта рынка и на сломе вниз
    • 22:17Aggregator: прогноз рынка на несколько дней
    • 23:38Фильтр не закрывает открытые позиции
    • 55:01Исследования S&P 500 и NASDAQ после 5-дневных минимумов
  • 025 - Laurens Bensdorp - Balancing 55 Supermodels

    The Algorithmic Advantage · Laurens Bensdorp · 2024-09-02

    • 09:26Большая вселенная, фильтры ликвидности и цены
    • 10:56Удержание 1-5 дней, нужен фильтр волатильности
    • 11:42Размер по волатильности с потолком доли капитала
    • 23:09Выход по времени: не вернулась за 3 дня
    • 25:432008 и 2011: лонг на возврат в медвежьем рынке
    • 28:34Тренд бумаги: например, EMA 150
    • 29:01Фильтр рынка: S&P 500 выше 40-дневной средней
    • 29:48Зачем фильтр: автоматически срезать экспозицию
    • 31:04Стоп есть всегда
    • 32:32Широкий аварийный стоп, размер позиции от стопа
    • 34:2175% прибыльных без стопа против 60% со стопом

Заявлено автором

Эти цифры и утверждения принадлежат автору. Мы их не проверяли.

  • Rob Hanna: простая система «покупка каждого 5-дневного минимума, выход при закрытии выше 5-дневной средней» в тесте может дать около 75% прибыльных сделок, но кривая идёт ступенями вверх с резкими провалами. Сам тест в интервью не показан.
  • Laurens Bensdorp: без стоп-лосса легко получить систему возврата к среднему, которая права в 75% сделок. Он предпочитает 60% со стопом ради защиты от худшего сценария. Это общее замечание, а не результат конкретной системы.
  • Bensdorp в 2008 году торговал вживую две системы возврата к среднему в лонг и две в шорт, обе стороны отработали отлично. Вывод, что такой лонг зарабатывает в медвежьем рынке, оказался ложным: в 2011 году всё падало.

Похожие идеи

Обновлено: 2026-09-10