baykovpro

← Quant

Что предсказывать: выбор таргета важнее архитектуры модели

15 сентября 2026 · 10 мин · mean-reversion, бэктест, волатильность, momentum

Суть идеи

Cakici и Zaremba берут стандартную задачу ML-прогнозирования доходностей на акциях и задают неудобный вопрос: а что именно мы просим модель предсказывать? Сырой return в долларах? Процентный return? Ранг в кросс-секции? Z-score относительно скользящего окна? Оказывается, этот выбор — не технический нюанс, а доминирующий фактор предсказательной силы, перекрывающий эффект от смены архитектуры (линейная модель vs. градиентный бустинг vs. нейросеть).

Механизм интуитивно понятен: сырые доходности гетероскедастичны и режимозависимы — модель, обученная на спокойном рынке, видит «аномально» большие числа в кризис и теряется. Нормализованные таргеты (ранги, z-score, vol-adjusted returns) убирают этот шум и дают модели стабильный сигнал вне зависимости от абсолютного уровня волатильности. Авторы тестируют несколько вариантов представления целевой переменной и измеряют out-of-sample IC (information coefficient) и доходность long-short портфелей.

Данные у авторов — классическая акционная кросс-секция (предположительно US equities, широкая выборка), горизонт прогноза — месячный. Конкретные числа в аннотации не раскрыты, но вывод однозначный: правильно выбранный таргет даёт статистически и экономически значимый прирост качества.

Применимость к крипте

Для трейдера BTC/ETH идея переносится почти один-в-один, причём с дополнительной остротой: крипта меняет волатильностный режим радикально быстрее акций. Сырой дневной return BTC в 2021 году и в 2022-м — это буквально разные распределения. Если обучать модель на raw returns, она будет систематически недооценивать/переоценивать сигнал при смене режима.

Практическая замена: вместо raw return использовать rolling z-score доходности (окно 30–90 дней), vol-adjusted return (делить на реализованную волатильность за то же окно) или ранг среди нескольких активов (BTC, ETH, SOL и т.д.). Наш движок уже содержит rolling-z — это прямое попадание. Для опционного трейдера особенно интересен vol-adjusted таргет: он фактически предсказывает не цену, а реализованную/имплицированную волатильность в нормализованных единицах, что напрямую ложится на VRP-стратегии.

Тестируемо ли

Да, с оговорками. Наш Python-движок поддерживает rolling-z и walk-forward — это ровно то, что нужно для сравнения таргетов. Ряды: дневные/часовые споты BTC и ETH, ATM IV (для vol-adjusted версии), реализованная волатильность. Чего нет: широкой кросс-секции активов для ранговых таргетов — на двух активах ранг вырождается. Можно расширить до топ-10 ликвидных крипто-активов, но это уже другой датасет.

Важно: статья про акции, горизонт — месяц. В крипте разумный горизонт — 1–5 дней, что меняет автокорреляционную структуру. Прямой перенос числовых результатов невозможен, но методологический вывод (нормализуй таргет) — универсален.

Сомнения

Главный риск — data-snooping по выбору таргета: если перебрать 10 вариантов нормализации и выбрать лучший in-sample, OOS-деградация гарантирована. Авторы работают на акциях с длинной историей — у нас BTC с 2017 года, ETH с 2018-го, это 3–4 независимых рыночных цикла, статистика слабая. Кроме того, режимная хрупкость никуда не девается: z-score, посчитанный на окне 60 дней, в момент резкого разворота (FTX, март 2020) будет «отставать» и давать ложные сигналы именно тогда, когда это наиболее болезненно.

Следующий шаг

Поставить walk-forward сравнение трёх таргетов на дневном BTC (2018–2024): (1) raw log-return, (2) rolling z-score с окном 60 дней, (3) vol-adjusted return (log-return / realized vol 30d). Модель — простая линейная (ridge) с одним фичей (лаг-1 return). Метрика — Deflated Sharpe OOS. Цель: убедиться, что нормализация таргета улучшает OOS-IC до того, как усложнять фичи или архитектуру.

Результаты тестов

Проверено на наших данных до публикации (2026-09-05) — статья кросс-секционная (ранги акций внутри даты), поэтому прогнали её на кросс-секции крипты: 60 перпов Binance в неделю, 14 ценовых признаков, шесть форм таргета, две модели, 198 недель вне выборки. Прогноз есть и он честный: ранговый IC около 0.13 при нулевом плацебо. Но форма таргета не меняет ничего: все двенадцать ячеек дают один и тот же IC и Sharpe в пределах шума. Крипта, как и предсказывает сама статья для «микро-кэпов», — не тот мир, где ранги выигрывают.

Провенанс. Quantpedia пересказывает работу Cakici и Zaremba (SSRN 6615698): 80 000 акций, 35 рынков, 1994–2024, ансамбль ML-моделей; ранговые таргеты «почти утраивают точность и удваивают доходность» портфелей в крупных акциях, но проигрывают магнитудо-сохраняющим там, где дисперсия и скошенность доходностей высоки. Самой работы мы не воспроизводим — у нас другой класс активов, 60 имён вместо 80 000 и четыре года вместо тридцати. Мы проверяем тезис в том мире, который у нас есть, и он как раз интересен для статьи: медианная кросс-секционная дисперсия недельных доходностей перпов 8.7%, скошенность +0.85 — это «микро-кэп/EM»-режим авторов, где ранги, по их же словам, должны терять преимущество.

Стенд и предрегистрация

Дневная панель всех USDT-перпов Binance (цена, объём, фандинг; только текущие листинги — выживаемость, оговорка ниже). Недельные даты, юниверс на дату: история ≥ 280 дней, медианный 30-дневный объём ≥ $10M, топ-60 по объёму; 302 недели с ноября 2020, медиана 60 монет. Признаки (14): моментум 1w/1m/3m/6m/12m, волатильность 30/90, максимальная дневная доходность и скошенность за 30 дней, оборот 7/30, размер (лог объёма), фандинг 7/30, просадка от 52-недельного максимума; все — кросс-секционный ранг в [−1, 1], как у авторов. Таргет — лог-доходность следующей недели в шести формах: сырая, demeaned, стандартизованная (винзор ±3), процентиль, ранг в [−1, 1], гауссианизированный ранг. Модели: ridge (λ по валидации на последних 20% обучающих недель, одна процедура для всех таргетов) и нелинейная — kernel ridge с RBF-ядром через аппроксимацию Нистрёма. Walk-forward расширяющимся окном: минимум 104 недели, рефит каждые 13, таргеты известны с лагом в неделю; вне выборки — 198 недель, ноябрь 2022 — август 2026. Портфель: топ-20% по прогнозу лонг, низ-20% шорт, равные веса, 10 б.п. за сторону на смену состава, фандинг по сторонам. Сетка и решающее правило зафиксированы до прогона.

Двенадцать ячеек — один результат

таргет ridge: Sharpe нетто ridge: IC (t) Нистрём: Sharpe нетто Нистрём: IC (t)
сырая доходность 0.64 0.128 (7.1) 0.57 0.133 (7.6)
demeaned 0.52 0.125 (6.9) 0.58 0.131 (7.2)
стандартизованная 0.75 0.131 (7.0) 0.61 0.127 (7.0)
процентиль = ранг [−1,1] 0.72 0.132 (7.3) 0.53 0.131 (7.7)
гауссианизированный ранг 0.57 0.127 (7.3) 0.51 0.127 (7.6)
сортировка по 12-мес. моментуму (без ML) 0.45 0.052 (2.9)
плацебо: таргет перемешан при обучении −0.01 −0.005 (−0.3)

IC везде 0.125–0.133; ни одна трансформация не «утраивает точность» — они неразличимы. Парные разности недельных доходностей против сырого таргета (бутстреп по неделям): стандартизованный +5.8% годовых при p = 0.22, ранговый +2.9% при p = 0.37, гауссианизированный −5.1% при p = 0.29; единственная разница с p < 0.05 — у demeaned, и она со знаком минус (−6.4%, p = 0.043, одна из десяти проверок). У нелинейной модели ни одна форма не обошла сырую. «Удвоения доходности» нет: базовый Sharpe 0.64, лучший 0.75.

Процентиль и ранг в [−1, 1] дают побитово одинаковые портфели — это аффинное преобразование одного и того же, и ridge к нему безразличен. Demeaned и сырой у ridge различаются только потому, что средняя недели входит в регрессию через свободный член по-разному; у Нистрёма они равны.

Механизм статьи виден по знаку и невидим по величине

Авторы объясняют, когда ранги проигрывают: при высокой дисперсии и скошенности кросс-секции, где величина экстремальных доходностей информативна. Делим недели по дисперсии прошлой недели (ex-ante, медиана):

Sharpe: недели высокой / низкой дисперсии сырая стандартизованная ранг гаусс
ridge 1.44 / −0.21 1.41 / +0.05 1.13 / +0.25 1.11 / −0.04
Нистрём 0.87 / +0.24 1.02 / +0.17 0.69 / +0.36 0.80 / +0.19

В неделях высокой дисперсии магнитудо-сохраняющие таргеты впереди рангов (1.41 против 1.13; 1.02 против 0.69), в низкой — наоборот. Знак совпадает с механизмом авторов. Но величина разниц — внутри бутстреп-шума четырёх лет, и почти весь результат любой формы сидит в неделях высокой дисперсии: там прогнозы стоят денег, в спокойные недели — почти нет.

Прогноз есть, деньги скромные

IC 0.13 при плацебо −0.005 и случайном прогнозе +0.007 — предсказание настоящее, и 14 признаков с ridge удваивают IC простой сортировки по моментуму (0.05). Однако квинтильный long/short при 10 б.п. за сторону даёт Sharpe 0.5–0.75 с просадками 54–72%, а под ротационным нулём (сдвиг панели доходностей по неделям при фиксированных позициях) ни одна ячейка не проходит: p 0.13–0.24 без поправки на меню, 0.26–0.43 с поправкой, ожидаемый максимум Sharpe для меню из 12 ячеек под нулём 0.45. Четыре года недельных данных отделяют от шума IC, но не Sharpe портфеля: это разные статистики, первая использует всю кросс-секцию, вторая — дисперсию двух квинтилей. По годам: 2023 в минусе у всех форм (−0.7…−1.0), 2024 около +0.8, 2025 +1.8…+2.1, 2026 +0.4…+0.7; лидер по форме таргета меняется каждый год.

Буква карточки: временной ряд одного актива

Карточка предлагала сравнить формы таргета для ridge на дневном BTC. Прогнали: те же признаки по одному активу, таргет — доходность следующей недели сырая / rolling-z по 60 таргетам / vol-adjusted. BTC: IC −0.07 / −0.04 / −0.10, Sharpe −0.13 / −0.53 / −0.13 при удержании 0.84; ETH: −0.07 / −0.06 / −0.11, Sharpe +0.02 / +0.40 / −0.21 при удержании 0.50. У одного актива форма таргета не спасает, потому что предсказывать нечего — тезис статьи кросс-секционный и к таймингу одного инструмента не относится.

Оговорки

Юниверс — текущие листинги Binance: делистнутые монеты отсутствуют, что смещает кросс-секционные тесты (направление для long/short неочевидно). 60 имён на четыре года против 80 000 на тридцать: минимальная различимая разница Sharpe между формами ≈ 0.7, так что «удвоение» (+0.6 к базе 0.64) сидит на границе различимости, а вот «утроение точности» (ΔIC) мы бы увидели с большим запасом — его нет.

Санитария

Свойства трансформаций (диапазоны, монотонность, нулевые средние); шум, подставленный в таргеты недель i−1 и позже, не меняет прогноз недели i; утечка таргета текущей недели в обучение поднимает IC с 0.015 до 0.212 — стенд лукахед видит; ridge при λ → 0 совпадает с МНК до 10⁻¹³; портфель одной недели пересчитан руками; Нистрём детерминирован; ранговая корреляция сверена независимой реализацией.

Где копаем дальше

Источник: Quantpedia · оригинал на английском, разбор — авторский на русском.