Как выбирать пары для ratio-трейдинга
Практические критерии отбора пар для ratio mean-reversion — что искать, что избегать и почему.
Когда понимание mean reversion в принципе уже есть, следующий вопрос: какие пары вообще торговать?
Скринер на PairScan делает это автоматически по 170+ парам. Но понимать логику отбора полезно даже если позволяешь алгоритму выбрать — знание почему пара выбрана помогает доверять (или не доверять) сигналу.
Три семейства пар, которые работают
1. Same-sector пары. Два актива гонимые одним нарративом. Layer-1 альты (AVAX, NEAR, SOL, SUI). LSD (LDO, RPL, FXS). DEX-токены (JUP, RAY, ORCA, UNI). Мемы (DOGE, SHIB, PEPE, FLOKI). Внутри сектора временное расхождение почти всегда — ликвидное событие, не фундаментальный сдвиг, поэтому склонно к mean reversion.
2. Cross-asset пары с общим underlying. Здесь tokenized equities открывают новое поле. ETH/MSTRx работает, потому что MicroStrategy держит 818,334 BTC — MSTR трекает BTC с плечом. Ratio ETH/MSTR колеблется по мере того как BTC dominance двигается вверх-вниз относительно ETH — один fundamental driver, разные magnitudes. Аналогично: BTC/COINx (Coinbase как exposure на крипто-биржу), SOL/COINx, ETH/QQQx (ETH как risk-on актив, QQQ как risk-on benchmark).
3. Крипта vs commodity. BTC/PAXG (золото-бэк токен), ETH/PAXG. Золото и крипта не имеют общих drivers, но оба реагируют на USD-силу и inflation expectations. Их ratio отражает «crypto premium над золотом» — метрика, которая исторически колеблется в полезном диапазоне при low-inflation режимах.
Пары, которых стоит избегать
Разно-режимные пары. BTC vs SOL (в основном работает) становится ненадёжной, когда один входит в устойчивый односторонний тренд, которого другой не делит. Видели это в Q4 2023 — SOL ушёл ×8, BTC ×2.6, ratio BTC/SOL упал на 67% монотонно, и любой mean-reversion вход был ловушкой.
Стейблкоиновые пары. USDC/USDT, DAI/USDC, BUSD/USDT — не осциллируют достаточно для edge. Ratio сидит на ~1.000 ± 0.5%; даже идеальный тайминг не превзойдёт round-trip fees.
Мёртво-токеновые пары. AGIX после Singularity merger'а. MATIC после POL-перехода. Падение объёма + фрагментация price discovery = исторические данные бесполезны. Фильтруй на $1M+ дневном объёме и следи за «monitoring tag» объявлениями.
Пары с недостаточной историей. Нужно минимум 540 дней чистых данных чтобы тестировать mean-reversion надёжно. Токены недавно запущенные (или с major-миграцией) не квалифицируются.
Чек-лист четырёх фильтров
Для любой кандидат-пары ответь на четыре вопроса перед торговлей:
- Mean-revert'ит ли log-ratio? Hurst < 0.5, ADF p < 0.7.
- Достаточно ли широкий диапазон? 40%+ от исторического. Иначе fee съедают edge.
- Реально ли осциллировал? ≥ 2 чередующихся касания границ на сторону. Иначе один экстремум может быть одноразовой аномалией.
- Достаточна ли ликвидность? $1M+ дневного спот-объёма на обеих ногах. Без этого slippage уничтожает математику.
Если все четыре проходят — пара кандидат. Тогда walk-forward бэктестишь 360 дней и смотришь:
- Сколько сделок сработало (больше 10 — вероятно слишком шумно, меньше 2 — вероятно недостаточно чтобы это имело смысл)
- Финальное накопление на каждой ноге (позитив хотя бы на одной — минимум)
- Max drawdown (что-то > 50% значит пара слишком волатильна для размера который ты бы торговал)
Position-sizing по парам
Даже когда пара проходит все фильтры, относись к ликвидности как к жёсткому потолку:
- Для сделок до $10k, $1M дневного объёма достаточно
- Для $10-50k, хочется $5M+
- Для $50k+, хочется $25M+
Ниже этих порогов slippage на входе+выходе стирает edge. Это самая частая причина почему «математика работала, но я потерял деньги» случается с людьми, которые реально пробуют это.
Конкретно для cross-asset
Для tokenized equity пар (xStocks) три дополнительных проверки:
- Pyth peg-check проходит (DEX-цена в пределах 3% от canonical equity-цены)
- Обе ноги торгуются 24/7 (xStocks на Solana DEX'ах — да, в этом весь смысл использования их вместо Yahoo данных)
- Относись как к экспериментальному: tokenized equities <12 месяцев. Торгуй меньшими размерами, чем на чисто крипто-парах.
Где помогает скринер
Вручную оценивать 170+ пар по всем четырём фильтрам каждые 6 часов — непрактично. Скринер на pairscan.io делает это автоматически и показывает qualifying пары, ранжированные по бэктест-приросту. Free показывает топ-3, чего обычно хватает чтобы понять, какие сектора mean-revert'ят прямо сейчас.
Чего скринер не делает: position sizing, judgment режима, awareness делистингов. Это остаётся твоей работой — и нашей, в посте про failure modes.
Стратегия работает потому, что она механическая на уровне entry/exit и человеческая на уровне режима/sizing. Это фича, не баг.