Идея коротко
Pavel Kycek (Robuxio) управляет алгоритмическими фондами и сводит торговые подходы к трём движениям: пробой, возврат к среднему и тренд. Для возврата к среднему он рисует на доске минимальную конструкцию. Средняя это 5-дневная MA. Каждый день меряется, насколько закрытие ушло от неё. У этого расстояния есть обычная величина, в его примере около 2%. Если за один день расстояние стало намного больше, например 6-7%, цена склонна вернуться. Входим против движения, выходим через несколько дней или у средней.
Второе правило касается момента входа. Розничные трейдеры ждут подтверждения разворота. Kycek говорит, что в возврате к среднему чем ниже ушла цена, тем выше вероятность выигрыша, поэтому входить нужно в само движение.
Числа 2% и 6-7% это иллюстрация на доске, а не результат теста. Как считать обычное отклонение, автор не говорит. Ниже оно определено на барах и помечено как наше.
Почему это может работать
Kycek ссылается на исследования, не показывая их: сильное отклонение от средней за день на дневках чаще откатывается, и такие сделки живут от одного до трёх-четырёх дней. Там же он говорит, что уход сделки против позиции входит в нормальную работу подхода.
Где применять, он раскладывает по классам активов. На акциях, особенно крупных, и на широких индексах работает возврат к среднему в лонг: фондовый рынок на длинной дистанции растёт. Small caps менее эффективны, там возврат к среднему можно торговать и в шорт. Форекс, по его словам, склонен возвращаться к среднему и на коротком, и на длинном горизонте. На сырье и крипте работают все подходы.
Отдельный аргумент про издержки. Чем старше таймфрейм, тем больше средняя сделка относительно комиссии и проскальзывания. На дневках, по словам автора, издержки съедают заметно меньшую долю ожидания, чем на часовых барах.
Правило «без подтверждения» Kycek произносит в части про вход на коррекции после пробоя, но формулирует как свойство возврата к среднему вообще. Для чистой версии без тренда его стоит проверить отдельно.
Правила
Мера отклонения
MA5 = SMA(Close, 5) // автор: 5-дневная средняя; Finetiq: простая
Dev = Close / MA5 - 1 // автор: насколько закрытие ушло от средней
// обычное отклонение: у автора около 2% в примере, расчёт не назван
NormDev = SMA(Abs(Dev), 50)[1] // Finetiq: среднее модуля отклонения за 50 дней, без текущего бара
Z = Dev / NormDev // во сколько раз сегодня дальше обычного
// Finetiq: текущее закрытие входит в MA5, поэтому
// Close - MA5 = 0.8 * (Close - среднее четырёх прошлых закрытий).
// Сжатие одинаково в Dev и в NormDev, на Z оно не влияет
// вариант прочтения автора: обычный дневной ход
// NormDev2 = SMA(Abs(Close / Close[1] - 1), 50)[1]
// с ним сжатие на 0.8 уже влияет, порог подбирать заново
Вход
// акции и индексы: только лонг (автор)
IF Z <= -3 // автор: 6-7% при обычных 2%; Finetiq: порог 3
BUY AT NEXT BAR OPEN // автор: не ждать подтверждения разворота
// Finetiq: пока позиция открыта, новые сигналы не добавляем
// форекс, сырьё, крипта, small caps: и шорт (автор)
IF Z >= +3
SELL SHORT AT NEXT BAR OPEN
Выход
Автор перечисляет три способа и не говорит, какой основной. Берём тот, что сработает первым.
IF BarsSinceEntry >= 3 THEN EXIT AT NEXT BAR OPEN // автор: сделки живут 1-4 дня; Finetiq: 3
IF Long AND Close >= MA5 THEN EXIT AT NEXT BAR OPEN // автор: возврат к средней
IF Long AND RSI(Close, 2) >= 70 THEN EXIT AT NEXT BAR OPEN // автор: RSI с коротким периодом; Finetiq: 2 и 70
// шорт зеркально: Close <= MA5, RSI(2) <= 30
// стоп: автор не называет
StopLoss = EntryPrice - 3 * ATR(20) // Finetiq: аварийный стоп для лонга, проверить с ним и без
Вариант. Коррекция в тренде (тот же автор)
Kycek соединяет этот модуль с трендовым пробоем. Рынок пробил 100-дневный максимум и откатывает. Откат меряется той же мерой, вход во время отката без подтверждения продолжения. Выход для этой связки в видео не назван.
Breakout = High > Highest(High, 100)[1] // автор: пробой 100-дневного максимума
Fresh = Breakout был за последние 20 баров // Finetiq: окно свежести пробоя
IF Fresh AND Z <= -2 // Finetiq: откат в тренде, порог мягче
BUY AT NEXT BAR OPEN
IF Close < SMA(Close, 10) THEN EXIT AT NEXT BAR OPEN // Finetiq: трендовый выход из того же видео
Параметры
| Параметр | Значение | Откуда |
|---|---|---|
| Средняя | SMA 5 по закрытиям | автор (тип Finetiq) |
| Мера отклонения | Close / MA5 − 1 | автор |
| Обычное отклонение | среднее модуля за 50 дней без текущего бара | Finetiq |
| Порог входа | 3 обычных отклонения | Finetiq (из примера автора: 6-7% при 2%) |
| Подтверждение разворота | не ждать | автор |
| Направление на акциях и индексах | только лонг | автор |
| Выход по времени | 3 дня | Finetiq (автор: 1-4 дня) |
| Выход у средней | закрытие за MA5 | автор |
| Выход по RSI | RSI(2), 70 и 30 | Finetiq (автор: короткий RSI) |
| Аварийный стоп | 3 × ATR(20) | Finetiq |
| Вариант: пробой | 100-дневный максимум | автор |
| Вариант: свежесть и порог | 20 баров, Z ≤ −2 | Finetiq |
Что проверить
- Порог. 2, 2.5, 3, 3.5, 4 обычных отклонения. С ростом порога сделок резко меньше. Если результат держится только около одного значения, это подгонка.
- Окно обычного отклонения. 20, 50, 100, 250 дней. Короткое окно быстро подстраивается: после обвала обычное отклонение растёт, и сигналы пропадают. Длинное окно в начале кризиса даёт пачку сигналов подряд. Сравните просадки, а не только среднюю сделку.
- Два прочтения обычного. Среднее отклонение от MA5 против среднего дневного хода. Порог для второго подбирайте отдельно.
- Подтверждение. Вход сразу против входа после первого закрытия в сторону возврата и против покупки выше максимума сигнального бара. Это главное утверждение автора, проверять его нужно на версии без тренда.
- Выходы по отдельности. 1, 2, 3, 4 дня, возврат к MA5, RSI(2). Посмотрите, какой выход даёт больше прибыли, а какой уменьшает худшую сделку.
- Стоп. Без стопа против 3 и 5 ATR. Во входах без подтверждения стоп часто ухудшает тест, но без него одна сделка в обвал может перечеркнуть год.
- Раскладка по рынкам. Лонг и шорт отдельно на индексах, крупных акциях, форексе и крипте. Автор утверждает, что шорт на крупных акциях хуже.
- Издержки. На форексе и CFD учтите спред и своп за 1-4 ночи, на крипте комиссию и фандинг бессрочных контрактов.
Особенности платформ
TradingView (Pine Script)
- Мера в две строки:
dev = close / ta.sma(close, 5) - 1иz = dev / ta.sma(math.abs(dev), 50)[1]. - Вход по умолчанию на открытии следующего бара (
process_orders_on_close = false), это совпадает с правилами. - Выход по времени:
bar_index - strategy.opentrades.entry_bar_index(0) >= 3. - RSI на всех трёх платформах считается по Уайлдеру, расхождения здесь не будет. Разойтись могут первые бары истории: отбросьте разогрев 150-200 баров для окна 50.
MultiCharts и TradeStation (EasyLanguage)
Average(Close, 5)это простая средняя. Отклонение храните переменной и усредняйте:Average(AbsValue(Dev), 50)[1].- На непрерывных фьючерсах со склейкой вычитанием цена может уйти к нулю и в минус.
Close / MA5 - 1на таком ряду теряет смысл. Меряйте отклонение в долях ATR,(Close - MA5) / AvgTrueRange(20), или берите несклеенный ряд. - В TradeStation дневной бар фьючерса закрывается по settlement. Отклонение по settlement и по последней сделке различается, бэктест и торговлю ведите на одном виде бара.
- Выход:
If BarsSinceEntry >= 3 then Sell next bar at market.
MetaTrader 5 (MQL5)
- Дневной бар строится по серверному времени брокера. У брокеров с сервером не в GMT+2/+3 бывают короткие воскресные бары. Для MA5 это особенно вредно: воскресный бар занимает одно из пяти мест в средней и сам даёт ложное отклонение.
- Среднюю берите из
iMA(..., 5, 0, MODE_SMA, PRICE_CLOSE), обычное отклонение считайте циклом по закрытым барам со сдвигом 1. - Сигнал считайте на закрытом баре (индекс 1) и проверяйте появление нового дневного бара, иначе вход повторится на каждом тике.
- При удержании 1-4 ночи своп у CFD и форекса становится заметной частью средней сделки.
Где идея может сломаться
- В видео нет бэктеста. 2% и 6-7% это пример на доске, порог и окно здесь наши.
- Вход без подтверждения означает покупку в падающий рынок. В обвалы сигналы на акциях приходят пачкой, позиции открываются одна за другой. Без ограничения числа одновременных позиций портфель превращается в одну большую ставку.
- Обычное отклонение зависит от окна. При смене режима волатильности частота сигналов меняется в разы.
- Правило «чем ниже, тем лучше» автор произносит про коррекцию в тренде. На рынке без тренда оно может не выполняться.
- Фраза про короткий RSI допускает два прочтения: мера перепроданности для входа или выход. Мы взяли выход.
- На склеенных фьючерсах проценты искажаются, нужна мера в ATR.