Signal Pilot
🔴 Продвинутый уровень • Урок 63 из 82

Статистический арбитраж: количественный возврат к среднему

Время чтения ~18-22 мин • Парный трейдинг и анализ коинтеграции
Signal Pilot
Профессиональное обучение трейдингу
0%
Вы продвигаетесь!
Читайте дальше, чтобы завершить урок

Два актива заходят в бар. Исторически они коррелированы: когда растёт один, обычно следует второй. А сегодня? Один прибавляет 5 %, второй теряет 3 %.

Паниковать? Шортить сильный? Покупать слабый?

Или вы видите здесь золото статистического арбитража — временное отклонение от долгосрочного равновесия, которое рано или поздно вернётся? Если связь коинтегрирована (а не просто коррелирована), спред можно торговать с посчитанным edge.

🚨 Это не «покупаем просадки» и надеемся

Статистический арбитраж требует строгой математической проверки. Нельзя просто посмотреть на два графика и решить, что они сойдутся. Нужны тесты на коинтеграцию, модели z-score и настоящий риск-менеджмент — потому что спреды умеют расходиться ещё дальше, прежде чем сойтись.

Без количественной проверки? Тогда вы играете, а не арбитражируете.

🎯 Чем вы овладеете

К концу этого урока вы будете понимать:

  • Разницу между корреляцией и коинтеграцией (это критично!)
  • Как находить рабочие пары с помощью расширенного теста Дики — Фуллера
  • Модели входа и выхода по z-score со статистическим edge
  • Расчёт объёма по волатильности спреда и периоду полураспада
  • Стратегии stat arb, которые реально применяют хедж-фонды
⚡ Быстрые шаги на завтра (нажмите, чтобы раскрыть)
  1. Проверьте сегодня вечером первую пару на коинтеграцию — На Python: `from statsmodels.tsa.stattools import coint; score, pvalue, _ = coint(spy, qqq)`. p-value ниже 0,05 означает, что нулевую гипотезу «коинтеграции нет» можно отвергнуть на уровне 5 %; выше 0,05 — нельзя, значит не торгуем. Высокая корреляция ≠ коинтеграция. Одна оговорка важнее, чем кажется: если прогнать через фильтр 100 пар на уровне 5 %, около 5 пройдут чисто случайно. Тестируйте короткий список, для которого у вас есть экономическая причина, а не весь рынок.
  2. Соберите таблицу z-score — Z = (текущий спред - средний спред) / стандартное отклонение. Вход: |z| > 2,0 (2 стандартных отклонения от среднего). Выход: z возвращается к 0. Стоп: |z| > 3,0 (расходится слишком далеко). Объём позиции: 2 % на пару.
  3. Отторгуйте ОДНУ пару 30 дней на демо — Возьмите коинтегрированную пару (SPY-IWM, KO-PEP). Вход при z ≥ 2,0, выход при z ≤ 0,5. Запишите 10-15 сделок. Будьте честны насчёт того, что даёт такая выборка: 12 сделок не устанавливают винрейт — погрешность на 12 бросках монеты около ±14 пунктов. Что она ДЕЙСТВИТЕЛЬНО проверяет, так это исполнение: залились ли обе ноги, во сколько реально обошёлся круг, вёл ли себя спред так, как обещала модель?
Часть 1: почему корреляция ≠ коинтеграция

Самое опасное заблуждение в парном трейдинге

Частные трейдеры обожают искать «коррелированные пары» и торговать расхождение. SPY и QQQ ведь ходят вместе? Tesla и Lucid? Bitcoin и Ethereum?

Вот в чём ловушка: корреляция не гарантирует возврата к среднему.

Два актива могут быть сильно коррелированы и всё равно разойтись навсегда. Почему? Потому что корреляция измеряет направление, а не равновесие.

Корреляция: ходят вместе, может быть

Определение: Измеряет, насколько два актива движутся в одну сторону

Диапазон: от -1 (идеально обратная) до +1 (идеально прямая)

Проблема: Высокая корреляция не значит, что они вернутся к какому-то конкретному соотношению. Пример:

  • Акция A: 100 $ → 150 $ (+50 %)
  • Акция B: 50 $ → 75 $ (+50 %)
  • Корреляция: идеальная 1,0
  • Спред: 50 $ → 75 $. Он расширился вдвое и никогда не вернулся.

Опасность: Спред, который не возвращается, торговать нельзя. Именно поэтому пары на одной корреляции проваливаются.

Коинтеграция: равновесие с возвратом к среднему

Определение: Статистически устойчивая долгосрочная связь, в которой отклонения временны

Тест: расширенный тест Дики — Фуллера (ADF) по спреду

Что это значит: Когда спред отклоняется, его тянет обратно к равновесию. Пример:

  • Актив A / Актив B = обычное соотношение 2,0
  • Сегодня: соотношение = 2,4 (спред расширился)
  • Коинтегрированные пары: соотношение возвращается к 2,0
  • Edge: продать дорогое, купить дешёвое

Вот это работает: возврат к среднему подтверждён статистически, а не просто ожидается.

💡 Ключевая мысль

Корреляция = «они движутся вместе»
Коинтеграция = «у их связи есть гравитация»

Как статистический арбитраж торгуются только коинтегрированные пары. Всё остальное — спекуляция.

Часть 1.5: урок ценой 31 400 $ — корреляционная ловушка Дерека

Корреляционная ловушка Дерека на 31 400 $: когда коррелированные пары не возвращаются

Дерек Мартинес (собирательный пример) — количественный трейдер, счёт 220 000 $.

Февраль 2024 года: Дерек торговал пару ARKK/QQQ, опираясь на корреляцию 0,89. «Разойдутся — снова сойдутся.» На коинтеграцию он не проверял ни разу.

К маю 2024 года: 3 сделки за 3 месяца. Общий убыток: -$31,400 (-14.3%).

🚨 Что Дерек понял тяжёлым путём

«Корреляция измеряет ПРОШЛОЕ. Коинтеграция предсказывает БУДУЩЕЕ. Я потерял 31 400 $ на ARKK/QQQ, потому что они были „сильно коррелированы“. Но корреляция говорит лишь о том, что раньше они двигались похоже. Она не говорит, что они вернутся.»

— Дерек Мартинес, собирательный пример

📉 Три месяца катастрофы у Дерека: февраль-май 2024

Всего сделок 3
Доля прибыльных 0%
Общий убыток -$31,400
Фатальные ошибки: нет ADF-теста (спред не был стационарным), нет расчёта полураспада (держал 25+ дней без статистического основания), проигнорированы структурные изменения (ARKK развернулся в биотех).

Три катастрофы

Сделка 1 (12 фев.-8 мар.): Купил ARKK, решив, что он «дёшев относительно QQQ». Спред расширился вместо возврата. Убыток: -$7,800.

Сделка 2 (15 мар.-19 апр.): Зашортил ARKK как «перетянутый». ARKK взлетел на 13,5 % на геномном хайпе. Маржин-колл. Убыток: -$15,200.

Сделка 3 (25 апр.-10 мая): Сделка на эмоциях. В какой-то момент был в плюсе на 3 900 $, потом шорт-сквиз на 10,5 %. Держал, надеясь на восстановление. Убыток: -$8,400. Три сделки, -7 800 $ -15 200 $ -8 400 $ = -$31,400.

🚨 Посмотрите на размеры позиций раньше, чем на анализ

Расхождение в 12,4 пункта между ARKK и QQQ, дающее 15 200 $ убытка, означает, что у Дерека в одной паре работало около $123,000 — 56 % счёта на 220 000 $. Правило этого же урока — 2-5 % на пару. Даже при корректном тесте на коинтеграцию такой размер превращает обычный выход спреда за границы в маржин-колл.

Здесь наложились две отдельные ошибки: он торговал пару без статистического основания и он взял такой объём, будто она не может проиграть. Исправить только первую — значит остаться таким же беззащитным.

Восстановление: февраль-октябрь 2025

Новый процесс:

  1. ADF-тест для КАЖДОЙ пары — p-value должен быть <0,05, чтобы спред был стационарным
  2. Считать период полураспада — торговать только если возврат к среднему занимает <20 дней
  3. Вход по z-score — |Z| > 2,0 (2+ стандартных отклонения от среднего)
  4. Стоп по декоинтеграции — если ADF-p-value поднялся выше >0,10, выходить немедленно

Торгуемые пары: KO/PEP, XOM/CVX, JPM/BAC (все проверены на коинтеграцию).

📈 Девять месяцев перелома у Дерека

Доля прибыльных 0% → 69.6%
Профит-фактор 3.2
Восстановление +$23,094
Перемена: Счёт: 188 600 $ → 211 700 $ (+23 094 $, +12,2 %). Винрейт 69,6 % (16 сделок из 23). Sharpe около 1,9 — на девяти месяцах и 23 сделках считайте это порядком величины, а не измеренной константой. Торгует только пары с ADF-p-value <0,05. Лучшая сделка: +4 120 $ на JPM/BAC (вход при z-score 2,8).

💡 Урок Дерека

Корреляция = «они движутся вместе». Коинтеграция = «у их связи есть гравитация».

  • ADF-p-value <0,05 = спред стационарен, торговать можно
  • ADF-p-value >0,05 = НЕ коинтегрирована, не трогайте
  • Посчитайте период полураспада чтобы знать, сколько занимает возврат

Винрейт вырос с 0 % до 69,6 %, потому что он стал проверять коинтеграцию, а не только корреляцию.

Викторина по разбору: Дерек потерял 31 400 $ (-14,3 %) за 3 месяца на парах ARKK/QQQ. Он был уверен, потому что корреляция была 0,89 — исторически они двигались вместе. Сделка 2 его разнесла: он зашортил ARKK как «перетянутый относительно QQQ», но ARKK взлетел на 13,5 %, тогда как QQQ прибавил всего 1,1 %, — маржин-колл и убыток 15 200 $. В третьей сделке он к тому же был в плюсе на 3 900 $, прежде чем спред ушёл, а он остался в позиции. В чём была фатальная ошибка Дерека?

A) Он взял слишком большое плечо в парной сделке, из-за чего при временном расширении спредов пришли маржин-коллы
B) Он держал позиции слишком мало (менее 10 дней) и не дал возврату к среднему случиться
C) Он НИ РАЗУ не проверил коинтеграцию — перепутал корреляцию (0,89 = сходство в прошлом) с коинтеграцией (спред, возвращающийся к среднему). Ни ADF-теста (p-value), ни расчёта полураспада. Спред НЕ был стационарным, поэтому возврат так и не наступил
D) Он входил на неверных z-score (z=1,0 вместо z=2,0), поэтому у сделок не было статистического edge

Верно: C. Дерек перепутал корреляцию (сходство в прошлом) с коинтеграцией (спред, возвращающийся к среднему). Он ни разу не сделал ADF-тест. ARKK развернулся в биотех и разорвал историческую связь с QQQ — корреляция осталась, коинтеграция умерла. Восстановление: ADF-тест для каждой пары (p<0,05), расчёт полураспада, вход по z-score. Итог: 69,6 % винрейта после того, как он освоил настоящий stat arb.

Часть 2: проверка коинтеграции — расширенный тест Дики — Фуллера

Расширенный тест Дики — Фуллера

Чтобы подтвердить коинтеграцию, нужно проверить, является ли спред (или соотношение) стационарным— то есть имеет ли он постоянное среднее, к которому возвращается.

Стандартный тест: расширенный тест Дики — Фуллера (ADF).

📐 Что делает ADF-тест

ADF-тест проверяет, является ли временной ряд (например, спред между двумя активами) стационарным или у него есть единичный корень (случайное блуждание, нестационарность).

  • Стационарный спред: постоянные среднее и дисперсия. Отклонения от среднего временны → возврата к среднему стоит ожидать.
  • Нестационарный спред: дрейфует со временем без равновесия. Отклонения могут держаться сколь угодно долго → надёжного возврата нет.

Нулевая гипотеза (H₀): у спреда есть единичный корень (НЕ стационарен, НЕ коинтегрирован)

Альтернативная гипотеза (H₁): спред стационарен (коинтегрирован, возвращается к среднему)

Как читать результаты ADF-теста

ADF-тест выдаёт p-value. Читайте внимательно, потому что почти каждый трейдерский блог понимает это наоборот.

🚨 Что такое p-value — и что им не является

p-value — это вероятность увидеть тестовую статистику как минимум такой же экстремальной, если бы спред действительно был случайным блужданием. Это НЕ «вероятность того, что спред нестационарен», и 1 минус p-value — это НЕ «вероятность того, что пара коинтегрирована».

Это различие не буквоедство. p-value 0,02 не означает, что вы с вероятностью 98 % правы насчёт этой пары. Оно означает: если бы у спреда вовсе не было возврата к среднему, столь же убедительные данные всё равно появлялись бы примерно в 2 % случаев — и именно поэтому прогон 100 пар через фильтр на уровне 5 % бесплатно дарит вам около 5 ложных срабатываний.

Рабочее правило не меняется (отвергаем единичный корень ниже 0,05, выше — не торгуем). Меняется то, сколько доверия вы вкладываете в один пройденный тест.

p-value Толкование Торговое решение
< 0,01 Единичный корень отвергнут на уровне 1 % ✅ ТОРГУЕМАЯ (сильная коинтеграция)
0.01 - 0.05 Единичный корень отвергнут на уровне 5 % ✅ ТОРГУЕМАЯ (приемлемая коинтеграция)
0.05 - 0.10 Отвергнут только на уровне 10 % ⚠️ НА ГРАНИ (рискованно, следить пристально)
> 0,10 Нестационарен (случайное блуждание) ❌ НЕ ТОРГОВАТЬ (не коинтегрирована)

✅ Правило большого пальца

Торгуйте только пары с ADF-p-value < 0,05. Это общепринятый порог для отклонения нулевой гипотезы о случайном блуждании, а не 95-процентная гарантия того, что именно этот спред вернётся.

Если p-value > 0,05, вы торгуете корреляцию, а не коинтеграцию, — и это азартная игра.

Расчёт коэффициента хеджирования

Перед ADF-тестом нужно определить коэффициент хеджирования (β)— оптимальную пропорцию, чтобы сбалансировать два актива в паре.

Метод: Постройте регрессию методом наименьших квадратов (МНК):

Актив A = β × Актив B + ε

β (бета) = коэффициент хеджирования

Пример: KO против PEP

Шаг 1: собрать исторические цены
KO (Coca-Cola): цены закрытия за последние 252 дня
PEP (PepsiCo): цены закрытия за последние 252 дня

Шаг 2: построить МНК-регрессию (KO = β × PEP)
На Python statsmodels или функцией ЛИНЕЙН в Excel
Результат: β = 0,30

Чтение:
Одна акция KO хеджируется 0,30 акции PEP. Обратите внимание: β
берётся из регрессии по ЦЕНАМ и потому отражает соотношение цен
(PEP торгуется примерно втрое дороже KO), а не правило «1 к 1».

Шаг 3: посчитать спред
Спред = KO - (0,30 × PEP)

Пример значений:
- KO = 60,50 $
- PEP = 180,20 $
- Спред = 60,50 $ - (0,30 × 180,20 $) = 60,50 $ - 54,06 $ = 6,44 $

Это примерно нейтрально по деньгам: 60,50 $ в KO против 54,06 $
в PEP. Если ваш коэффициент хеджирования даёт спред -141 $, вы
не сбалансировали ноги и стоите в лонге или шорте по рынку, а
не по спреду.

Шаг 4: прогнать ADF-тест по спреду
Результат ADF-теста: p-value = 0,018 ✅
Толкование: единичный корень отвергнут на уровне 5 % - на этой
            выборке спред ведёт себя как ряд, возвращающийся к
            среднему. (НЕ «уверенность 98 %».)
Вывод: KO/PEP — торгуемая пара
      

Реальный пример: тест коинтеграции SPY/IWM

Шаг Процесс Результат
1. Сбор данных Скачать год дневных цен по SPY и IWM 252 торговых дня
2. Проверка корреляции Посчитать корреляцию Пирсона r = 0,94 (высокая корреляция)
3. МНК-регрессия SPY = β × IWM + ε β = 2,68 (коэффициент хеджирования)
4. Расчёт спреда Спред = SPY - (2,68 × IWM) 252 значения спреда
5. ADF-тест Проверить, стационарен ли спред p = 0,0082 ✅ КОИНТЕГРИРОВАНА
6. Полураспад Сколько занимает 50 % возврата? 8,2 дня (быстрый возврат)
7. Вывод Торгуема ли эта пара? ДА - торгуем спред

🚨 Частые ошибки при проверке коинтеграции

  • Слишком короткая история: для надёжного ADF-теста нужно минимум 6-12 месяцев данных. 1-3 месяца = ненадёжно.
  • Не пересчитывать β регулярно: коэффициенты хеджирования дрейфуют. Пересчитывайте ежемесячно, иначе будете торговать не тот спред.
  • Игнорировать дрейф p-value: пара, коинтегрированная в январе, к июню может декоинтегрироваться. Перепроверяйте ежемесячно.
  • Проверить один раз: коинтеграция динамична, а не статична. Тесты на скользящем окне (6 месяцев) обязательны.
  • Прогнать тысячи пар и оставить победителей: один только S&P 500 даёт 124 750 возможных пар. На уровне 5 % можно ожидать, что около 6 000 из них «пройдут» просто из-за шума. Начинайте с пар, у которых есть экономическая причина быть связанными (одна отрасль, одни издержки, одни клиенты), и только потом тестируйте — а не наоборот.
Часть 3: торговые модели z-score — сигналы входа и выхода

Z-score: торговый сигнал

Как только коинтеграция подтверждена (ADF p < 0,05), нужен торговый сигнал который скажет, КОГДА входить и выходить. Этот сигнал — z-score.

📐 Формула z-score

Z = (текущий спред - средний спред) / стандартное отклонение спреда

Что измеряет: На сколько стандартных отклонений текущий спред отстоит от своего исторического среднего.

  • Z = 0: Спред на своём среднем (сделки нет)
  • Z = +2: Спред на 2 стандартных отклонения ВЫШЕ среднего (актив A дорог, актив B дёшев)
  • Z = -2: Спред на 2 стандартных отклонения НИЖЕ среднего (актив A дёшев, актив B дорог)

Торговые схемы по z-score

Консервативная модель z-score

  • Вход: |Z| > 2,0 (спред на 2+ стандартных отклонения от среднего)
  • Выход: Z пересекает 0 обратно (возврат к среднему)
  • Стоп-лосс: |Z| > 3,5 (спред расширяется, режем убыток)

Почему консервативная:

  • При нормальном распределении лишь ~5 % наблюдений лежат за пределами ±2σ. У распределений спреда хвосты толще нормальных, поэтому относитесь к ±2 как к порогу, отсекающему шум, а не как к 95-процентной вероятности возврата
  • Меньше ложных сигналов, выше винрейт
  • Ниже частота (меньше сделок)

Агрессивная модель z-score

  • Вход: |Z| > 1,5 (сигналы чаще)
  • Частичный выход: Z пересекает 0,5 (фиксируем часть прибыли)
  • Полный выход: Z пересекает 0 (среднее)
  • Стоп-лосс: |Z| > 3.0

Почему агрессивная:

  • Больше сделок = больше возможностей
  • Ниже порог = более ранние входы
  • Требует более жёсткого риск-менеджмента

💡 Применение на практике

Спред = 5,20 $
Средний спред = 5,00 $
Стандартное отклонение = 0,10 $

Z-score = (5,20 $ - 5,00 $) / 0,10 $ = 2,0

Действие: Актив A относительно дорог, актив B относительно дёшев

Сделка: Шорт по активу A, лонг по активу B (ждём схождения)

Полураспад: сколько ждать возврата?

Период полураспада говорит, за сколько периодов спред проходит половину пути обратно к среднему. Из него и получается ваш срок удержания.

На этом закончена «опознавательная» половина работы: какие пары торгуемы и как выглядит сигнал.

Оставшаяся часть урока решает, удержите ли вы edge: объём, стопы, построение портфеля и то, во сколько реально обходится исполнение.

📖 Расчёт полураспада

Используйте модель AR(1) (авторегрессия) по спреду:

Спредt = θ × Спредt-1 + ε

Полураспад = -log(2) / log(θ)

Пример: При θ = 0,95 полураспад ≈ 14 дней

Что это значит: Ждите возврата к среднему примерно за 14 дней. Если уходит 30+ дней, ваша модель, возможно, разваливается.

Часть 4: объём позиции и риск-менеджмент

Сколько выделять на сделку

Статистический арбитраж — это НЕ «поставил и забыл». Спреды умеют расширяться до схождения (drawdowns), а часть пар со временем декоинтегрируется.

Критерий Келли для stat arb

Используйте модифицированный подход Келли:

f* = (p × b - q) / b

Где:

  • p = винрейт (историческая доля прибыльных возвратов)
  • q = доля убытков (1 - p)
  • b = средняя прибыль / средний убыток
  • f* = оптимальная доля капитала под риском

🚨 Никогда не рискуйте больше 2-5 % на пару

Даже если Келли подсказывает 10 %, модели stat arb способны ломаться (декоинтеграция, смена режима). Для надёжности берите половину или четверть Келли:

Половина Келли: f* / 2
Четверть Келли: f* / 4

Это защищает вас от поломки модели и всё равно позволяет собирать edge.

Портфель пар: диверсификация

Не торгуйте одну пару. Соберите портфель из 5-10 коинтегрированных пар по разным отраслям, чтобы снизить идиосинкратический риск.

Пример портфеля: KO/PEP (потребительский сектор), XOM/CVX (энергетика), JPM/BAC (финансы), AAPL/MSFT (техи), UNH/CVS (здравоохранение). 2 % на пару, 10 % общего риска, диверсифицировано на случай декоинтеграции одной из них.

Часть 5: когда stat arb не работает

Смена режима и декоинтеграция

Статистический арбитраж работает — пока не перестаёт. Пары могут декоинтегрироваться из-за:

  • Корпоративных действий: слияния, выделения, изменения дивидендов
  • Структурных сдвигов: компания меняет бизнес-модель
  • Смены макрорежима: шоки по ставкам, ротация секторов
  • Пересыхания ликвидности: из позиции не выйти без slippage

🚨 Крах LTCM (1998)

Long-Term Capital Management — фонд relative value, среди партнёров которого были два нобелевских лауреата по экономике, — за четыре месяца 1998 года потерял около 4,6 млрд долларов после того, как Россия объявила дефолт по внутреннему долгу. Его позиции были в основном облигационным схождением, а не парами акций, но механизм провала — ровно тот, что убивает книги stat arb.

Что сломалось на самом деле: не то, что один спред ушёл дальше ожидаемого, а то, что спреды, смоделированные как независимые, разом двинулись в одну сторону. Диверсификация по 20 парам ничего не стоит, если шок ликвидности коррелирует все 20. К тому же модели были откалиброваны на выборке без единого суверенного дефолта: они не могли оценить событие, которого никогда не видели.

Урок: считайте объём под ту корреляцию, которую получите в кризис, а не под ту, что в вашем backtest, и всегда ставьте стопы.

Правила стоп-лоссов для stat arb

  • Стоп по z-score: выходить, если |Z| > 3,5 (спред расширяется, а не возвращается)
  • Стоп по времени: выходить, если позиция открыта дольше 2× полураспада (модель ломается)
  • Стоп по деньгам: выходить, если drawdown превысил 50 % ожидаемой прибыли
  • Корреляция рушится: выходить, если ADF-p-value поднялся выше 0,10 (коинтеграция теряется)
Часть 6: практическая реализация

Построение вашей системы stat arb

Пошаговый процесс работы со статистическим арбитражем:

Шаг 1 - Поиск: отфильтруйте акции одной отрасли с похожей капитализацией и корреляцией >0,7.

Шаг 2 - Тест: ADF-тест по спреду (6-12 месяцев данных). p<0,05 = прошла, p>0,05 = отклонить.

Шаг 3 - Backtest: вход |Z|>2, выход Z=0. Цель: винрейт >55 %, профит-фактор >1,5, Sharpe >1,2, полураспад 5-30 дней — те же пороги, что и в части 9. За вычетом комиссий и slippage, а не брутто.

Шаг 4 - Мониторинг: ежедневный z-score, волатильность спреда, корреляция. ADF пересчитывать ежемесячно.

Совет профессионала: Используйте скользящее 6-месячное окно, чтобы пересчитывать β ежемесячно. Выходите, если p-value дрейфует выше 0,10 (декоинтеграция).

Часть 7: продвинутые стратегии — внутридневной статистический арбитраж

Высокочастотный возврат к среднему (для активных трейдеров)

Большая часть stat arb — это свинг-трейдинг (удержание 5-30 дней), но коинтеграция работает и на внутридневных таймфреймах — если у вас есть инфраструктура.

Требования для внутридневного stat arb

  • Исполнение с низкой задержкой: нужны заливки меньше секунды (DMA или спонсируемый доступ)
  • Высоколиквидные пары: только SPY/IWM, QQQ/DIA, секторные ETF
  • Узкие спреды: комиссия + slippage должны быть <0,02 % на сделку
  • Автоматизированная система: ручная торговля слишком медленна при полураспаде в 5 минут
Пример: SPY против IWM как внутридневная пара

Расстановка: SPY/IWM, корреляция 0,92 (5 мин), ADF p=0,009✅, полураспад 12 баров (60 мин)

Правила: вход |Z| > 1,8, выход при пересечении Z нуля ИЛИ через 90 мин

Пример (15 нояб. 2024): 10:35 z=-1,95 → лонг 200 SPY, шорт 530 IWM (около 116 000 $ на ногу, почти нейтрально по деньгам при коэффициенте хеджирования 2,68) → 11:20 z=+0,12 → выход +142 $ за 45 минут, то есть 0,12 % от ноги SPY.

Теперь посчитайте трение, потому что оно решает всё:

Акций за круг: (200 + 530) x 2 ноги = 1 460
Комиссия по 0,005 $/акцию:              7,30 $
Slippage по 0,01 $/акцию:              14,60 $
Трение за круг:                       ~21,90 $

...против выигрыша в 142 $. Это 15 % от брутто.
И это ровно на потолке «<0,02 % на сделку»
выше: 0,02 % от 116 000 $ = 23,20 $.

Теперь посчитайте убыточные. Панель рисков ниже оценивает долю ложных внутридневных сигналов в 40-50 %. Допустим, 55 % сделок дают 142 $, а 45 % упираются во временной стоп на 90 минут при -120 $:

Валовое матожидание: 0,55(142) - 0,45(120) = +24,10 $
Минус трение:                                 -21,90 $
ЧИСТЫМИ на сделку:                             +2,20 $

Вот честный ответ. При розничных комиссиях и slippage внутридневной stat arb на этой паре — примерно безубыточное занятие: edge реален, но издержки его съедают. Уменьшите slippage вдвое профессиональной маршрутизацией, и та же сделка оставит около 9 $ чистыми; именно поэтому это профессиональная игра, а не розничная. Тот, кто обещает вам 3-5 % в месяц на внутридневных парах, называет валовые цифры — до двух строк выше.

Риски внутридневного stat arb

Почему у частных трейдеров не выходит: вес комиссий (0,005 $/акцию × 2 ноги), slippage на большом объёме, 40-50 % ложных сигналов из-за внутридневного шума, нужна алго-платформа.

Требования: более 100 000 $ капитала, профессиональная маршрутизация (IBKR Pro, Lightspeed), автоматическое исполнение.

Не беритесь, если: вы новичок, пользуетесь Robinhood/Webull или торгуете вручную.

Часть 8: построение портфеля для stat arb

Сборка диверсифицированной книги stat arb

Торговать одну пару рискованно (декоинтеграция способна вас обнулить). Профессионалы stat arb ведут портфели из 10-30 пар одновременно.

Пример распределения портфеля

Консервативный (100 000 $)

5 пар, по 2 %: KO/PEP, JPM/BAC, XOM/CVX, UNH/CVS, WMT/TGT

Общий риск: 10% | Sharpe: 0.8-1.2 | Доходность: 6-10 % в год | Макс. drawdown: -8 % до -12 %

Умеренный (100 000 $)

10 пар, по 1,5 %: Дневные (6): консервативный + MA/V, DIS/CMCSA | Внутридневные (4): SPY/IWM, QQQ/DIA, XLF/XLK, XLE/XLU

Общий риск: 15% | Sharpe: 1.0-1.5 | Доходность: 10-18 % в год | Макс. drawdown: -12 % до -18 %

Агрессивный (100 000 $)

20+ пар, по 1 %: 8 дневных голубых фишек + 12 внутридневных ETF | плечо 1,5×

Общий риск: 20-30% | Sharpe: 1.2-1.8 | Доходность: 18-30 % в год | Макс. drawdown: -20 % до -30 %

Предупреждение: Требует круглосуточного контроля и профессионального исполнения

📐 Замечание об этих значениях Sharpe

Все три цифры годовые, после издержек и намеренно ниже тех, что вам назовут в другом месте. Устойчивый Sharpe выше 2 — задокументированная особенность горстки фирм с колокацией, собственными десками заимствования и издержками исполнения, к которым у вас доступа нет. Розничная книга stat arb, которая реально даёт Sharpe 1,0-1,5 несколько лет подряд, работает хорошо.

Проверьте и соотношение: стратегия, заявляющая 40 % доходности при 30 % drawdown, — не стратегия со Sharpe 3, что бы ни говорил маркетинг. Здесь доходность, делённая на максимальный drawdown, во всех вариантах около 0,8-1,0, и именно это такие уровни риска и способны нести.

🚨 Корреляция между парами (скрытый риск)

Плохо: KO/PEP, MDLZ/GIS, K/CPB (всё продукты питания) — обвал сектора убивает ВСЕ пары.

Хорошо: KO/PEP (потребительский сектор) + JPM/BAC (финансы) + XOM/CVX (энергетика) — отраслевая диверсификация делает результаты некоррелированными.

Ребалансировка вашего портфеля stat arb

📖 Ежемесячное обслуживание

1-го числа каждого месяца: пересчитать ADF-тесты, пересчитать коэффициенты хеджирования, обновить пороги z-score, убрать пары с p>0,10, добавить новые. Пример: p-value у KO/PEP дрейфует с 0,021 в январе ✅ до 0,124 в апреле ❌ = УБРАТЬ.

Часть 9: реализация в коде (пример на Python)

Построение системы stat arb с нуля

Каркас реализации (процесс из 3 шагов):

Шаг 1: проверка коинтеграции

Процесс: (1) Построить МНК-регрессию, чтобы найти коэффициент хеджирования β (например, KO = β × PEP), (2) посчитать спред (KO - β × PEP), (3) прогнать по спреду расширенный тест Дики — Фуллера (ADF). Если p-value < 0,05 = коинтегрирована. (4) Посчитать полураспад (скорость возврата) регрессией по лагированному спреду.

Пример: KO/PEP β = 0,30 (та же цифра, что и в части 2 — одна пара, один коэффициент хеджирования), p-value спреда = 0,018 (✅ единичный корень отвергнут), полураспад = 12,3 дня, то есть спред проходит половину расстояния до среднего примерно за 12 дней.

Шаг 2: расчёт сигналов z-score

Процесс: Посчитать скользящий 60-дневный z-score: z = (спред - среднее спреда) / стандартное отклонение спреда. Задать пороги: вход ±2,0σ, выход 0,0σ (возврат к среднему), стоп ±3,5σ (слом).

Сигналы: z-score < -2,0 = лонг спреда (покупаем KO, продаём PEP). z-score > +2,0 = шорт спреда (продаём KO, покупаем PEP). z-score пересекает 0 = выход (возврат завершён). z-score > ±3,5 = стоп-лосс (коинтеграция сломалась).

Шаг 3: backtesting стратегии

Процесс: Пройти по историческим данным, отслеживать состояние позиции (лонг/шорт/вне рынка), входить на порогах ±2,0σ, выходить на 0σ или по стопу ±3,5σ. Посчитать метрики: винрейт, среднюю прибыль/убыток, профит-фактор, суммарный P&L.

Целевые метрики: винрейт >55 %, профит-фактор >1,5, коэффициент Sharpe >1,2, макс. drawdown <15 %. Если backtest не проходит эти пороги, пара, скорее всего, неторгуема (мало возврата к среднему или транзакционные издержки съедают edge).

💡 Реализация: Используйте библиотеки Python (statsmodels для ADF-теста, pandas для данных) или платформы вроде QuantConnect/Zipline. Полные примеры кода есть в репозитории сообщества.

Советы для реальной торговли: сначала 1-3 месяца на демо. Начинайте с объёмов 0,5-1 %. Следите за slippage (>0,05 % = уменьшить объём). Записывайте каждую сделку: z-score входа и выхода, время удержания, P&L.

Главное из урока

💡 Чек-лист статистического арбитража

  • Коинтеграция > корреляция: всегда подтверждайте ADF-тестом (p < 0,05)
  • Вход по z-score: |Z| > 2,0 в консервативном варианте, > 1,5 в агрессивном
  • Стоп-лоссы: выходите при |Z| > 3,5 или если позиция открыта дольше 2× полураспада
  • Объём позиции: никогда больше 2-5 % на пару (используйте Келли / половину Келли)
  • Диверсифицируйте пары: ведите 5-10 пар по разным отраслям
  • Наблюдайте непрерывно: перепроверяйте коинтеграцию ежемесячно и выходите, если она рушится
  • Построение портфеля: убедитесь, что пары не коррелируют между собой (отраслевое разнообразие)
  • Внутридневная торговля: только с профессиональным исполнением и автоматизацией

Статистический арбитраж — это количественный edge, но он требует дисциплины. Если выполнять всё правильно, вы торгуете с математической точностью, а не с надеждой.

Проверьте себя

В1: в чём была фатальная ошибка Дерека, стоившая ему 31 400 $ на ARKK/QQQ?

A) Он взял слишком большое плечо на позиции
B) Он перепутал корреляцию (0,89) с коинтеграцией и ни разу не сделал ADF-тест
C) Он торговал слишком маленькими объёмами и не смог отыграть убытки
D) Он слишком рано выходил из прибыльных вместо того, чтобы дождаться возврата

Верно! Дерек решил, что корреляция 0,89 означает возврат к среднему. Он ни разу не сделал ADF-тест. Корреляция измеряет сходство в прошлом; коинтеграция подтверждает статистически устойчивое равновесие.

В2: какой порог p-value в ADF-тесте указывает на действительно коинтегрированную пару в стратегии парного трейдинга?

A) p-value > 0,10 (спред нестационарен)
B) p-value < 0,05 (спред стационарен и возвращается к среднему)
C) p-value > 0,50 (высокая статистическая уверенность)
D) p-value = 1,0 (идеальная коинтеграция)

Верно! ADF-p-value < 0,05 позволяет отвергнуть нулевую гипотезу о случайном блуждании на уровне 5 %, и это общепринятая планка, чтобы считать спред возвращающимся к среднему. Это не «уверенность 95 %, что эта пара вернётся» — см. часть 2. Если p-value > 0,05, не торгуйте её как stat arb.

В3: согласно консервативной стратегии z-score из этого урока, когда нужно входить в парную сделку статистического арбитража?

A) Когда |z-score| > 1,0 (спред на 1 стандартное отклонение от среднего)
B) Когда |z-score| > 2,0 (спред на 2+ стандартных отклонения от среднего)
C) Когда |z-score| > 0,5 (любое отклонение от равновесия)
D) Когда z-score возвращается к 0 (спред на среднем)

Верно! Консервативный вход: |z| > 2,0 (2+ стандартных отклонения от среднего). Выход, когда z возвращается к 0. Стоп при |z| > 3,5 (спред, возможно, декоинтегрируется).

В4: в чём принципиальная разница между корреляцией и коинтеграцией?

A) Корреляция — для акций, коинтеграция — только для фьючерсов
B) Корреляция требует математических тестов, коинтеграцию можно прикинуть на глаз
C) Корреляция измеряет сходство направлений в прошлом; коинтеграция означает, что у спреда есть равновесие, к которому он возвращается
D) Разницы нет — это одно понятие под двумя названиями

Верно! Корреляция = «исторически двигались вместе». Коинтеграция = «у спреда есть равновесие, к которому он возвращается». Сильно коррелированные пары могут разойтись навсегда. Как stat arb торгуются только коинтегрированные пары.

В5: согласно правилам риск-менеджмента из этого урока, каков максимальный объём позиции на пару в статистическом арбитраже?

A) 10-15 % на пару (концентрированные позиции ради максимального edge)
B) 2-5 % на пару (распределено по 5-10 парам)
C) 25-30 % на пару (всё в лучшие сетапы)
D) 0,5-1 % на пару (сверхконсервативный объём)

Верно! Максимум 2-5 % на пару с расчётом по Келли / половине Келли. Ведите 5-10 пар по разным отраслям. Если одна декоинтегрируется, счёт это не уничтожит.

Связанные уроки

⏭️ Дальше

Урок #64: каркас макрорежимов — Разберитесь, как смена режимов влияет на ваши модели stat arb, и подстройте стратегии соответственно.

💬 Обсуждение (0 комментариев)

0/1000

Загрузка комментариев…

← Предыдущий урок Следующий урок →

Готовы торговать с Signal Pilot?

Примените полученные знания с профессиональными индикаторами и инструментами анализа рынка в реальном времени.

Вернуться в Signal Pilot →
Только в образовательных целях. Торговля сопряжена со значительным риском убытков. Это не финансовая консультация. Прошлые результаты не гарантируют будущих.