Статистический арбитраж: количественный возврат к среднему
Два актива заходят в бар. Исторически они коррелированы: когда растёт один, обычно следует второй. А сегодня? Один прибавляет 5 %, второй теряет 3 %.
Паниковать? Шортить сильный? Покупать слабый?
Или вы видите здесь золото статистического арбитража — временное отклонение от долгосрочного равновесия, которое рано или поздно вернётся? Если связь коинтегрирована (а не просто коррелирована), спред можно торговать с посчитанным edge.
🚨 Это не «покупаем просадки» и надеемся
Статистический арбитраж требует строгой математической проверки. Нельзя просто посмотреть на два графика и решить, что они сойдутся. Нужны тесты на коинтеграцию, модели z-score и настоящий риск-менеджмент — потому что спреды умеют расходиться ещё дальше, прежде чем сойтись.
Без количественной проверки? Тогда вы играете, а не арбитражируете.
🎯 Чем вы овладеете
К концу этого урока вы будете понимать:
- Разницу между корреляцией и коинтеграцией (это критично!)
- Как находить рабочие пары с помощью расширенного теста Дики — Фуллера
- Модели входа и выхода по z-score со статистическим edge
- Расчёт объёма по волатильности спреда и периоду полураспада
- Стратегии stat arb, которые реально применяют хедж-фонды
⚡ Быстрые шаги на завтра (нажмите, чтобы раскрыть)
- Проверьте сегодня вечером первую пару на коинтеграцию — На Python: `from statsmodels.tsa.stattools import coint; score, pvalue, _ = coint(spy, qqq)`. p-value ниже 0,05 означает, что нулевую гипотезу «коинтеграции нет» можно отвергнуть на уровне 5 %; выше 0,05 — нельзя, значит не торгуем. Высокая корреляция ≠ коинтеграция. Одна оговорка важнее, чем кажется: если прогнать через фильтр 100 пар на уровне 5 %, около 5 пройдут чисто случайно. Тестируйте короткий список, для которого у вас есть экономическая причина, а не весь рынок.
- Соберите таблицу z-score — Z = (текущий спред - средний спред) / стандартное отклонение. Вход: |z| > 2,0 (2 стандартных отклонения от среднего). Выход: z возвращается к 0. Стоп: |z| > 3,0 (расходится слишком далеко). Объём позиции: 2 % на пару.
- Отторгуйте ОДНУ пару 30 дней на демо — Возьмите коинтегрированную пару (SPY-IWM, KO-PEP). Вход при z ≥ 2,0, выход при z ≤ 0,5. Запишите 10-15 сделок. Будьте честны насчёт того, что даёт такая выборка: 12 сделок не устанавливают винрейт — погрешность на 12 бросках монеты около ±14 пунктов. Что она ДЕЙСТВИТЕЛЬНО проверяет, так это исполнение: залились ли обе ноги, во сколько реально обошёлся круг, вёл ли себя спред так, как обещала модель?
Самое опасное заблуждение в парном трейдинге
Частные трейдеры обожают искать «коррелированные пары» и торговать расхождение. 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: продать дорогое, купить дешёвое
Вот это работает: возврат к среднему подтверждён статистически, а не просто ожидается.
💡 Ключевая мысль
Корреляция = «они движутся вместе»
Коинтеграция = «у их связи есть гравитация»
Как статистический арбитраж торгуются только коинтегрированные пары. Всё остальное — спекуляция.
Корреляционная ловушка Дерека на 31 400 $: когда коррелированные пары не возвращаются
Дерек Мартинес (собирательный пример) — количественный трейдер, счёт 220 000 $.
Февраль 2024 года: Дерек торговал пару ARKK/QQQ, опираясь на корреляцию 0,89. «Разойдутся — снова сойдутся.» На коинтеграцию он не проверял ни разу.
К маю 2024 года: 3 сделки за 3 месяца. Общий убыток: -$31,400 (-14.3%).
🚨 Что Дерек понял тяжёлым путём
«Корреляция измеряет ПРОШЛОЕ. Коинтеграция предсказывает БУДУЩЕЕ. Я потерял 31 400 $ на ARKK/QQQ, потому что они были „сильно коррелированы“. Но корреляция говорит лишь о том, что раньше они двигались похоже. Она не говорит, что они вернутся.»
— Дерек Мартинес, собирательный пример
📉 Три месяца катастрофы у Дерека: февраль-май 2024
Три катастрофы
Сделка 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
Новый процесс:
- ADF-тест для КАЖДОЙ пары — p-value должен быть <0,05, чтобы спред был стационарным
- Считать период полураспада — торговать только если возврат к среднему занимает <20 дней
- Вход по z-score — |Z| > 2,0 (2+ стандартных отклонения от среднего)
- Стоп по декоинтеграции — если ADF-p-value поднялся выше >0,10, выходить немедленно
Торгуемые пары: KO/PEP, XOM/CVX, JPM/BAC (все проверены на коинтеграцию).
📈 Девять месяцев перелома у Дерека
💡 Урок Дерека
Корреляция = «они движутся вместе». Коинтеграция = «у их связи есть гравитация».
- 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 $, прежде чем спред ушёл, а он остался в позиции. В чём была фатальная ошибка Дерека?
Верно: C. Дерек перепутал корреляцию (сходство в прошлом) с коинтеграцией (спред, возвращающийся к среднему). Он ни разу не сделал ADF-тест. ARKK развернулся в биотех и разорвал историческую связь с QQQ — корреляция осталась, коинтеграция умерла. Восстановление: ADF-тест для каждой пары (p<0,05), расчёт полураспада, вход по z-score. Итог: 69,6 % винрейта после того, как он освоил настоящий stat arb.
Расширенный тест Дики — Фуллера
Чтобы подтвердить коинтеграцию, нужно проверить, является ли спред (или соотношение) стационарным— то есть имеет ли он постоянное среднее, к которому возвращается.
Стандартный тест: расширенный тест Дики — Фуллера (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 из них «пройдут» просто из-за шума. Начинайте с пар, у которых есть экономическая причина быть связанными (одна отрасль, одни издержки, одни клиенты), и только потом тестируйте — а не наоборот.
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+ дней, ваша модель, возможно, разваливается.
Сколько выделять на сделку
Статистический арбитраж — это НЕ «поставил и забыл». Спреды умеют расширяться до схождения (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 % общего риска, диверсифицировано на случай декоинтеграции одной из них.
Смена режима и декоинтеграция
Статистический арбитраж работает — пока не перестаёт. Пары могут декоинтегрироваться из-за:
- Корпоративных действий: слияния, выделения, изменения дивидендов
- Структурных сдвигов: компания меняет бизнес-модель
- Смены макрорежима: шоки по ставкам, ротация секторов
- Пересыхания ликвидности: из позиции не выйти без 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 (коинтеграция теряется)
Построение вашей системы 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 (декоинтеграция).
Высокочастотный возврат к среднему (для активных трейдеров)
Большая часть 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 или торгуете вручную.
Сборка диверсифицированной книги 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 в апреле ❌ = УБРАТЬ.
Построение системы 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?
Верно! Дерек решил, что корреляция 0,89 означает возврат к среднему. Он ни разу не сделал ADF-тест. Корреляция измеряет сходство в прошлом; коинтеграция подтверждает статистически устойчивое равновесие.
В2: какой порог p-value в ADF-тесте указывает на действительно коинтегрированную пару в стратегии парного трейдинга?
Верно! ADF-p-value < 0,05 позволяет отвергнуть нулевую гипотезу о случайном блуждании на уровне 5 %, и это общепринятая планка, чтобы считать спред возвращающимся к среднему. Это не «уверенность 95 %, что эта пара вернётся» — см. часть 2. Если p-value > 0,05, не торгуйте её как stat arb.
В3: согласно консервативной стратегии z-score из этого урока, когда нужно входить в парную сделку статистического арбитража?
Верно! Консервативный вход: |z| > 2,0 (2+ стандартных отклонения от среднего). Выход, когда z возвращается к 0. Стоп при |z| > 3,5 (спред, возможно, декоинтегрируется).
В4: в чём принципиальная разница между корреляцией и коинтеграцией?
Верно! Корреляция = «исторически двигались вместе». Коинтеграция = «у спреда есть равновесие, к которому он возвращается». Сильно коррелированные пары могут разойтись навсегда. Как stat arb торгуются только коинтегрированные пары.
В5: согласно правилам риск-менеджмента из этого урока, каков максимальный объём позиции на пару в статистическом арбитраже?
Верно! Максимум 2-5 % на пару с расчётом по Келли / половине Келли. Ведите 5-10 пар по разным отраслям. Если одна декоинтегрируется, счёт это не уничтожит.
Связанные уроки
- #64: каркас макрорежимов — Как смена режимов влияет на stat arb
- #66: проектирование количественных стратегий — Backtest стратегий stat arb
- #67: машинное обучение в трейдинге — ML для подбора пар
⏭️ Дальше
Урок #64: каркас макрорежимов — Разберитесь, как смена режимов влияет на ваши модели stat arb, и подстройте стратегии соответственно.
💬 Обсуждение (0 комментариев)
Загрузка комментариев…
Готовы торговать с Signal Pilot?
Примените полученные знания с профессиональными индикаторами и инструментами анализа рынка в реальном времени.
Вернуться в Signal Pilot →Только в образовательных целях. Торговля сопряжена со значительным риском убытков. Это не финансовая консультация. Прошлые результаты не гарантируют будущих.