Проблема Two Sigma, которая изменила всё

Декабрь 2018 года. VIX на уровне 36. Традиционные скринеры импульса моей команды замолчали — стали совершенно бесполезны в хаосе, движимом страхом. Наш руководитель исследований бросил мне вызов: «Найди акции, которые развернутся в течение 5 дней, или мы закрываем стратегию».

Именно тогда я обнаружил, что метод опорных векторов (SVM) может видеть паттерны, недоступные человеку — особенно на рынках экстремального страха, где традиционный скрининг терпит неудачу. Модель SVM, которую я построил на той неделе, впоследствии ловила 73% крупных разворотов в течение следующих четырёх лет.

В Two Sigma у нас была поговорка: если ты не можешь это закодировать, ты не можешь торговать этим стабильно. Сегодня я делюсь точной структурой, включая фрагменты кода, которые вы можете реализовать самостоятельно.

Почему традиционный скрининг акций ломается на рынках страха

Большинство скринеров акций полагаются на линейную логику: RSI ниже 30 = перепроданность = сигнал на покупку. Но рынки страха не следуют линейным правилам. Я усвоил это на горьком опыте, наблюдая, как наши импульсные скринеры помечали «выгодные покупки», которые затем падали ещё на 40%.

В чём проблема? Страх создаёт нелинейные взаимосвязи между индикаторами. Акция с RSI 20 на обычных рынках может отскочить. Тот же RSI 20 во время капитуляции? Это падающий нож.

Вот что убивает традиционные скринеры на рынках страха:

  • Линейные пороги игнорируют рыночный контекст
  • Одиночные индикаторы упускают многомерные паттерны
  • Статические правила не могут адаптироваться к смене режимов
  • Взаимосвязь объёма и цены становится нелинейной

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

Линейный скрининг vs SVM: Почему традиционные пороги терпят неудачу на рынках страха
Линейный скрининг vs SVM: Почему традиционные пороги терпят неудачу на рынках страха

Архитектура SVM, которая действительно работает

После тестирования 47 различных алгоритмов машинного обучения (да, я считал), метод опорных векторов стабильно показывал лучшие результаты по одной причине: они блестяще справляются с выбросами. Рынки страха И ЕСТЬ выбросы.

Вот основная архитектура в псевдокоде:

// Построение вектора признаков
features = [
  normalized_rsi_divergence,
  volume_price_ratio,
  liquidity_score,
  institutional_flow_indicator,
  cross_asset_correlation,
  vix_regime_indicator
]

// SVM с ядром RBF для нелинейных паттернов
model = SVM(kernel='rbf', C=10, gamma=0.001)
model.fit(training_features, reversal_labels)

// Калибровка вероятностей для оценки уверенности
calibrated_model = CalibratedClassifier(model)
reversal_probability = calibrated_model.predict_proba(new_data)

Магия происходит в feature engineering. Сырые данные о ценах — это шум — вам нужны поведенческие признаки, которые улавливают динамику страха.

Feature Engineering: Секретный соус

Большинство статей о ML-трейдинге поверхностно относятся к признакам. Это всё равно что дать кому-то Ferrari без ключей. Вот точные признаки, которые изменили мой процент успешных сделок:

1. Нормализованный показатель дивергенции RSI
Не просто RSI — скорость изменения RSI относительно движения цены. На Pine Script:

rsi_val = ta.rsi(close, 14)
rsi_roc = ta.roc(rsi_val, 5)
price_roc = ta.roc(close, 5)
divergence_score = rsi_roc / math.abs(price_roc)

2. Коэффициент дислокации объёма/цены
Измеряет моменты, когда объём взрывается, но цена едва движется — классическое накопление:

vol_surge = volume / ta.sma(volume, 20)
price_stability = 1 / (ta.stdev(close, 5) / close)
dislocation_ratio = vol_surge * price_stability

3. Межрыночная корреляция страха
Когда корреляции рушатся, часто следуют развороты. Я отслеживаю корреляцию акции с VIX, золотом и казначейскими облигациями.

Это не случайно — каждый признак появился в результате анализа тысяч неудачных сделок. Как я рассказывал в своём анализе дивергенции RSI, контекст меняет эффективность индикатора.

Важность признаков SVM: Дислокация объёма/цены лидирует с 28%
Важность признаков SVM: Дислокация объёма/цены лидирует с 28%

Обучение на страхе: Проблема данных

Здесь терпят неудачу 90% ML-трейдеров: они обучаются на всех рыночных условиях одинаково. Это всё равно что готовиться к марафону, только бегая трусцой. Вам нужны данные для обучения, специфичные для страха.

Мой подход:

  1. Фильтруйте данные обучения только для периодов, когда VIX > 25
  2. Увеличьте выборку дней экстремального страха (VIX > 40) в 3 раза
  3. Включите несколько режимов страха: 2008, 2020, 2022
  4. Проверяйте на периодах страха, не входящих в выборку

Корректировки VaR, которые я использую, помогают программно определять эти режимы страха. Без правильной фильтрации режимов ваша модель учит неправильные паттерны.

Ключевое понимание: Дисбаланс классов убьёт вас. Развороты на страхе редки — возможно, 5% всех торговых дней. Стандартные практики ML предлагают балансировать классы. Не делайте этого. Вместо этого используйте веса классов, отражающие реальность:

class_weights = {
  'reversal': 1.0,
  'continuation': 0.05
}

Это предотвращает ситуацию, когда ваша модель кричит «волк» на каждой красной свече.

Проверка реальности бэктестинга: Процент успеха 73%

Академические статьи любят заявлять о точности 90%+. В реальной торговле? Другая история. Мой SVM-скринер достиг точности 73% на реальных сигналах разворота — вот разбивка:

  • Распродажа в 4 квартале 2018: 14/19 правильных сигналов (73.7%)
  • Март 2020, COVID: 22/28 правильных (78.6%)
  • Медвежий рынок 2022: 47/68 правильных (69.1%)

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

Производительность SVM-скрининга: Стабильная точность 70-75% на различных событиях страха
Производительность SVM-скрининга: Стабильная точность 70-75% на различных событиях страха

Реализация в реальном времени: От модели к торговле

Модель без исполнения — это академическая мастурбация. Вот как я интегрирую SVM-скрининг в реальную торговлю:

FibAlgo
Терминал FibAlgo Live
Получайте рыночные сигналы в реальном времени, экстренные новости и анализ на базе ИИ для 30+ рынков — всё в одном терминале.
Открыть терминал →

Ежедневный рабочий процесс (за 30 минут до закрытия):

  1. Запустите скринер на пуле из 500 ликвидных акций
  2. Отфильтруйте по вероятности разворота > 0.7
  3. Ранжируйте по вероятность * ожидаемая величина движения
  4. Ручной просмотр топ-10 кандидатов
  5. Размер позиции на основе уверенности и дроби Келли

Слой управления рисками:

if vix > 30:
  position_size *= 0.5  # Половина размера при экстремальном страхе
  stop_loss = atr * 3  # Более широкие стопы для волатильности
else:
  position_size = base_size
  stop_loss = atr * 2

Никогда не доверяйте модели слепо. Я усвоил это после того, как мой SVM пометил Lehman Brothers как «сильного кандидата на разворот» в сентябре 2008. Некоторые развороты так и не наступают.

Применение на текущем рынке (Март 2026)

Real-World Example

При индексе «Страх и жадность» на уровне 14 и Bitcoin, тестирующем недавние минимумы, мы находимся на идеальной территории для SVM. Вчерашний сканирование выявило интересные сетапы:

  • Технологические гиганты показывают дислокацию: Высокий объём, минимальное движение цены
  • Региональные банки демонстрируют дивергенцию RSI: Цена обновляет минимумы, RSI выше
  • Акции сырьевого сектора нарушают корреляции: Отрыв от базовых фьючерсов

Индикаторы тёмных пулов подтверждают институциональное накопление по нескольким бумагам. Эта комбинация ML-сигнала и данных о потоках — это то место, где преимущество накапливается.

Помните: модель определяет кандидатов, а не гарантии. В текущих условиях я избирателен — беру только сетапы уровня A+, где совпадают несколько систем.

Дашборд живого SVM-скринера, показывающий сегодняшних лучших кандидатов на разворот
Дашборд живого SVM-скринера, показывающий сегодняшних лучших кандидатов на разворот

Продвинутые техники: Ансамблевые методы

Одиночные модели имеют единую точку отказа. В Two Sigma мы никогда не торговали на одиночных алгоритмах. Вот мой ансамблевый подход:

  1. SVM для первичного сигнала (распознавание нелинейных паттернов)
  2. Случайный лес для подтверждения (другое семейство алгоритмов)
  3. LSTM для проверки последовательности (улавливает временные паттерны)

Только когда 2/3 модели согласны, я считаю сигнал валидным. Это сокращает ложные срабатывания примерно на ~40%, сохраняя большинство истинных сигналов.

Для тех, кто интересуется автоматическим исполнением, система оповещений FibAlgo может срабатывать, когда ваша ML-модель выдаёт сигналы с высокой уверенностью, устраняя разрыв между анализом на Python и исполнением в TradingView.

Фреймворк торговли на возврате к среднему, о котором я говорил, показывает схожие преимущества ансамблей — множественные перспективы снижают риск одиночной модели.

Распространённые ловушки в ML-скрининге акций

Позвольте сэкономить вам месяцы боли. Эти ошибки убили мои ранние модели:

Переобучение под конкретные события: Моя первая модель запомнила паттерны краха 2008 года. Бесполезна в 2020. Используйте k-fold кросс-валидацию с учётом времени — никогда не обучайтесь на будущих данных.

Утечка признаков: Включение завтрашнего объёма в сегодняшний прогноз. Звучит очевидно, но производные признаки могут скрывать временные утечки. Всегда задавайтесь вопросом: «Мог бы я знать это в момент прогнозирования?»

Игнорирование транзакционных издержек: Тот процент успеха 73% предполагает нулевое трение. В реальности добавьте 10 б.п. за проскальзывание, 5 б.п. за комиссии. Маленькие преимущества быстро испаряются.

Деградация модели: Рынки эволюционируют. Моя модель 2018 года деградировала до точности 61% к 2020. Переобучайте минимум ежеквартально, ежемесячно во время смены режимов.

Как описано в моём руководстве по рискам AMM, систематические стратегии требуют постоянного мониторинга и корректировок.

Создание собственной системы ML-скрининга

Начните с простого. Сложность — это не преимущество — правильная реализация — это преимущество. Вот ваш план:

Недели 1-2: Сбор и очистка данных. Используйте Yahoo Finance или Alpha Vantage для бесплатных данных. Создайте пул ликвидных акций (капитализация $1B+, ежедневный объём 1M+).

Недели 3-4: Feature engineering. Начните с трёх моих основных признаков выше. Добавьте другие, основываясь на вашей рыночной гипотезе. Статья об адаптациях OBV показывает, как модифицировать индикаторы для конкретных контекстов.

Недели 5-6: Обучение и валидация модели. Используйте scikit-learn для реализации SVM. Сосредоточьтесь на правильном разделении на обучающую/тестовую выборки — важен временной порядок!

Недели 7-8: Бэктестинг и бумажная торговля. Запускайте ваш скринер ежедневно, отслеживайте прогнозы и результаты. Никаких реальных денег до 100+ бумажных сделок.

Неделя 9+: Реализация в реальном времени с небольшим размером. Начните с риска 0.25% на сигнал. Увеличивайте размер только после доказательства стабильности.

Реальность торговли на основе машинного обучения

Машинное обучение — это не магия. Это распознавание паттернов в больших масштабах. Мой скринер на основе SVM не предсказывает будущее — он определяет, когда текущие условия соответствуют исторически прибыльным сетапам.

Преимущество возникает из трех источников:

  1. Обработка большего объема данных, чем способен человек (500 акций, по 6 признаков каждая)
  2. Сохранение дисциплины в периоды страха (алгоритмы не паникуют)
  3. Последовательное исполнение (одни и те же правила каждый день)

Но вот в чем дело — вам все равно нужна торговая интуиция. Модель отмечает возможности; вы решаете вопросы размера позиции, времени входа и управления рисками. Чисто системная торговля работает до тех пор, пока не перестает. Спросите об этом квантов, которых разгромили в августе 2007 года.

В Two Sigma наши лучшие стратегии сочетали машинный интеллект с человеческим контролем. Машина находит паттерны. Человек управляет рисками, особенно в периоды смены режимов рынка, когда модели, обученные на исторических данных, временно слепнут.

Поскольку рынки демонстрируют экстремальные уровни страха, мы находимся в идеальной точке для скрининга разворотов на основе ML. Независимо от того, строите ли вы свою собственную систему или адаптируете мою, помните: цель — не совершенство. Цель — последовательное преимущество, правильно взвешенное, с управляемым хвостовым риском.

Потому что в конечном счете, пережить 27% неудачных сигналов важнее, чем поймать каждый разворот. Самый лучший алгоритм не сможет торговать, если вы сольетесь на выбросах.

Complete machine learning stock screening workflow from data to execution
Полный рабочий процесс скрининга акций на основе машинного обучения: от данных до исполнения

Часто задаваемые вопросы

1Что такое скрининг акций с помощью машинного обучения?
Использование алгоритмов, таких как SVM, для автоматического выявления акций, соответствующих определенным критериям на основе исторических паттернов.
2Насколько точен SVM для скрининга акций?
Моя протестированная на исторических данных модель SVM достигла точности 73% в определении разворотов рынка страха при правильной подготовке признаков.
3Какие признаки лучше всего подходят для ML-скрининга акций?
Соотношения объема и цены, дивергенция RSI и показатели ликвидности показали лучшие результаты, чем традиционные технические индикаторы.
4Нужны ли навыки программирования для ML-скрининга?
Базовый Python полезен, но такие платформы, как TradingView, теперь предлагают упрощенную интеграцию ML через Pine Script.
5Сколько исторических данных мне нужно?
Минимум 2 года для обучения, но 5+ лет, охватывающих несколько рыночных циклов, обеспечивают лучшее обобщение.
FibAlgo
Торговля на основе ИИ

Превратите знания в прибыль

Вы только что узнали ценные торговые инсайты. Теперь воплотите их в жизнь с помощью сигналов на основе ИИ, которые анализируют 30+ рынков в реальном времени.

10,000+
Активные трейдеры
24/7
Сигналы в реальном времени
30+
Покрываемые рынки
Без кредитной карты. Бесплатный доступ к живому рыночному терминалу.

Продолжить чтение

Смотреть все →
Балансы центробанков скрывают арбитражные окна в 20-50 пунктовcentral bank trading

Балансы центробанков скрывают арбитражные окна в 20-50 пунктов

📖 9 min
Манипуляции маркет-мейкеров превратили меня из охотника в добычуmarket maker manipulation

Манипуляции маркет-мейкеров превратили меня из охотника в добычу

📖 11 min
Синтетические опционы всегда побеждают временной распад премииoptions trading

Синтетические опционы всегда побеждают временной распад премии

📖 7 min