baykovpro

← Quant

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

11 августа 2026 · 12 мин · моментум, кросс-актив, макро-оверлеи, позиционирование

Суть идеи

Классический моментум — это когда прошлая доходность актива предсказывает его будущую. Статья делает шаг дальше: если активы связаны между собой (корреляционно, фундаментально или через общих участников), то моментум «вытекает» из одного узла сети в другой. Победитель в NASDAQ тянет за собой рисковые активы в соседних узлах — в том числе крипту.

Механизм предполагается следующий: информация о смене режима риск-аппетита сначала проявляется в наиболее ликвидных или «первичных» активах (например, в акциях технологических компаний или в DXY), а затем с лагом отражается в менее ликвидных или производных узлах сети. Это не арбитраж в строгом смысле — скорее медленная диффузия сигнала через участников рынка, которые переаллоцируют портфели последовательно, а не одновременно.

Авторы строят граф активов (узлы — инструменты, рёбра — корреляции или причинно-следственные связи по Грейнджеру), вычисляют взвешенный моментум-сигнал для каждого узла с учётом сигналов соседей и показывают, что такой «сетевой» моментум превосходит простой time-series моментум на кросс-секции активов.

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

BTC и ETH давно перестали быть изолированными активами. В нашем арсенале уже есть все нужные ряды: NASDAQ как прокси риск-аппетита, DXY и USDJPY как макро-режимные фильтры, золото как альтернативный «твёрдый актив», VIX и MOVE как меры стресса. Идея сетевого моментума ложится на это органично: можно построить простой граф из 6–8 узлов и считать взвешенный сигнал для BTC/ETH как функцию лагированных доходностей соседей.

Что нужно адаптировать: в оригинале граф строится на акциях и традиционных классах активов. Для крипты важно добавить специфические узлы — funding rate как прокси внутреннего моментума деривативов, basis CME как сигнал институционального позиционирования. Веса рёбер стоит пересчитывать rolling-окном (60–90 дней), а не фиксировать статично — крипто-корреляции режимно нестабильны.

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

Да, на нашем движке это реализуемо. Ряды BTC/ETH spot есть с 2018 года, NASDAQ/DXY/USDJPY/XAU — с тех же дат. Алгоритм: (1) строим rolling-корреляционную матрицу, (2) для каждого актива считаем взвешенную сумму лагированных доходностей соседей как сигнал, (3) входим лонг/шорт BTC или ETH по знаку сигнала, (4) walk-forward с окном обучения 180 дней и OOS 60 дней.

Честная оговорка: данных по крипте меньше, чем у авторов по акциям. Независимых «режимов» (бычий 2020–2021, медвежий 2022, боковой 2023–2024) — единицы. Deflated Sharpe будет жёстким.

Сомнения

Главная проблема — выбор топологии графа. Какие рёбра включать, какой лаг брать, как взвешивать — всё это гиперпараметры, и на истории они подгоняются легко. Авторы, судя по аннотации, тестировали на широкой кросс-секции традиционных активов, где независимых наблюдений много. В крипте с 4–5 режимами за 7 лет любая топология будет выглядеть хорошо in-sample.

Второй риск — режимная хрупкость: в периоды высокой корреляции всего со всем (март 2020, ноябрь 2022) сетевой сигнал вырождается в обычный моментум, а в периоды декорреляции (крипто-специфические события типа FTX) граф ломается полностью.

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

Прогнать walk-forward на BTC daily с 2019 по 2024: сигнал = взвешенная сумма 5-дневных доходностей {NASDAQ, DXY_inv, XAU, USDJPY_inv, funding_rate} с rolling-корреляционными весами (окно 90 дней), лаг 1 день. Горизонт удержания — 5 дней. Сравнить Deflated Sharpe против baseline time-series моментума (просто лагированная доходность BTC). Если сетевой сигнал не добавляет значимого IC — идея не работает на нашем горизонте данных.

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

Дописано 11 августа 2026, в день публикации — прогон «Следующего шага» на нашем движке и данных. Сама статья выше не менялась.

Спека выполнена буквально: узлы {NASDAQ, DXY_inv, XAU, USDJPY_inv, funding}, пятидневные доходности соседей, rolling-корреляционные веса с окном 90 дней, лаг один день, удержание пять дней, walk-forward 180/60, BTC daily 2019–2024. Сверх буквы добавлено три вещи: ETH вторым рукавом, форвардное окно 2025-01 → 2026-08, которого у авторов аннотации не было, и семейство из 48 конфигураций на актив (узлы {все 5, только макро-4, только NASDAQ} × окно {60, 90} × веса {корреляционные, равные} × масштаб {сырой, нормированный} × удержание {1, 5}) — чтобы поправка на перебор считалась честно, а не по одной удачной ячейке.

Издержки 6 б.п. на единицу оборота, funding перпа в P&L по фактическим выплатам (шорт его получает), вход строго на следующий день, размер позиции фиксированный. Порог значимости — не Deflated Sharpe, а ротационный max-T: позиции сохраняются, доходности циклически сдвигаются, максимум по семейству берётся на каждом сдвиге.

Главный результат

BTC 2019–2024 BTC форвард 2025–26 ETH 2019–2024 ETH форвард 2025–26
Сетевой сигнал (ячейка спеки) −0.18 −0.78 +0.35 −0.37
Baseline: свой моментум 5д +0.09 +0.12 +0.02 −0.02
Buy & hold +0.96 −0.44 +0.89 −0.22
Лучшая из 48 ячеек +0.40 −0.08 +0.59 +0.19
Лучший p_max по всему семейству 0.764 0.942 0.496 0.920

Ни одна из 96 конфигураций (48 × два актива) не проходит family-wise ни на одном окне. Не спасает и мягкий отбор: минимальный q-value по Бенджамини-Хохбергу — 0.63 (ETH, лучшее окно), то есть кандидатов нет даже при допуске 10% ложных. Ячейка из «Следующего шага» на BTC отрицательна на всех трёх окнах и сидит на 29-м перцентиле собственного нуля; на ETH она положительна in-sample (+0.35, 76-й перцентиль) и переворачивается на форварде.

Критерий, заданный самой статьёй, — прирост IC над собственным моментумом:

Окно IC сети p IC своего моментума t сети при контроле на свой моментум
BTC 2019–2024 −0.045 0.222 −0.020 −1.16
BTC форвард +0.028 0.726 −0.033 +0.28
ETH 2019–2024 −0.008 0.826 −0.022 −0.04
ETH форвард −0.035 0.658 −0.026 −0.43

Прироста нет ни по знаку, ни по значимости. Deflated Sharpe, о котором просила спека, приведём для полноты: ячейка спеки 0.052 (BTC) и 0.349 (ETH) против 0.169 и 0.116 у baseline — то есть на BTC сетевой сигнал проигрывает тому, что должен был превзойти. Порога 0.95 не достигает никто, и это же говорит ротационный нуль, который у нас с августа заменил DSR как приговор.

Почему: связь есть, но она синхронная

Прежде чем обвинять реализацию, мы измерили сами рёбра графа — ранговую корреляцию дневной доходности узла с дневной доходностью BTC на трёх сдвигах:

Узел лаг −1 (узел завтра) лаг 0 (тот же день) лаг +1 (узел вчера) IC(r5 → 5 дней вперёд)
NASDAQ +0.011 +0.241 −0.044 −0.012 (p 0.74)
DXY −0.039 −0.136 +0.022 +0.035 (p 0.37)
Золото −0.009 +0.107 −0.007 −0.049 (p 0.22)
USDJPY −0.058 +0.036 −0.000 −0.004 (p 0.91)
Funding +0.116 −0.012 −0.031 −0.050 (p 0.33)

Это и есть ответ. Связь BTC с NASDAQ большая и абсолютно синхронная: +0.241 в тот же день и статистический ноль на день раньше и на день позже. На ETH картина та же (+0.236 / +0.010 / −0.038). Никакого «перетекания импульса с лагом» на дневном горизонте в наших данных нет — есть общий фактор риск-аппетита, который приходит в оба узла одновременно. Торговать синхронную связь нельзя: к моменту закрытия NASDAQ движение уже в цене BTC.

Структурный дефект самой конструкции

Дальше выяснилось, что даже при наличии лид-лага спецификация из статьи его бы не увидела. Мы внедрили в сеть шестой узел-«лидер», чей пятидневный ряд по-настоящему предсказывает завтрашнюю доходность актива, и откалибровали силу внедрения по одиночной стратегии на этом узле:

Что внедрено Вес узла, который даёт конструкция Sharpe сети p_max
Узел только лидирует, ann-SR 1.0 −0.014 −0.16 0.995
Узел только лидирует, ann-SR 5.0 −0.056 −0.49 1.000
Узел лидирует и со-движется, ann-SR 1.0 +0.137 +0.16 0.915
Узел лидирует и со-движется, ann-SR 5.0 +0.601 +0.63 0.515

Корреляционный вес измеряет одновременную связь — и поэтому по построению слеп к чистому лид-лагу. Узел, который идеально предсказывает завтра, но не двигается синхронно, получает вес около нуля: конструкция сама выбрасывает ровно ту информацию, ради которой её строили. А узел, который и со-движется и лидирует, вес получает — но эдж ann-SR 5.0 доходит до итогового Sharpe в виде +0.63 и всё равно не проходит поправку на семейство.

Куда девается эдж — разложили по каналам (BTC, узел с истинным ann-SR 5.0):

Шаг Sharpe
Узел один, удержание 1 день (как калибровали) +4.94
Он же при удержании 5 дней из спеки +1.28
Он же внутри сети из 6 узлов с равными весами +1.15
Он же внутри сети из 6 узлов с корреляционными весами −0.49

Пятидневное удержание срезает три четверти (свежий день — одна пятая позиции), усреднение по шести узлам почти бесплатно, а корреляционные веса переворачивают знак. На ETH та же лестница: +4.89 → +0.88 → +0.64 → −0.18.

Тест не пустой

Отрицательный результат стоит чего-то, только если тест способен что-то найти. Проверили обе стороны.

Пустышка. 40 миров, в каждом ряд каждого узла циклически сдвинут на свой случайный лаг — автокорреляция и волатильность узлов целы, кросс-связь убита. Family-wise max-T срабатывает в 5% миров на BTC и 8% на ETH при номинале 5%. Тест откалиброван. Попутная иллюстрация цены перебора: лучшая из 48 конфигураций на заведомо пустых данных даёт в среднем +0.62 годового Sharpe, а в отдельных мирах до +1.18.

Мощность. Внедрили эдж прямо в сигнал, минуя конструкцию сети: ann-SR 1.0 находится уверенно (p_max 0.015 на BTC, 0.025 на ETH), ann-SR 1.5 — с запасом, ann-SR 0.5 уже нет (p_max 0.44). То есть на этом окне и с этой поправкой мы различаем эффект примерно от Sharpe 1.0 — и ничего похожего в сетевом сигнале нет.

Лестница лагов. Если подать конструкции закрытия узлов того же дня, что и торгуемый бар (то есть лукахед), ETH-версия с однодневным удержанием прыгает с +0.33 до +0.72 — харнесс реагирует на синхронную информацию, как и должен. Честная версия этого прироста не имеет, дополнительный день лага уводит в минус (−0.26).

Walk-forward 180/60 и ротация топологии

Спека просила walk-forward, и мы прогнали его в обеих осмысленных формах. Как OOS-стабильность фиксированной ячейки: 43 блока по 60 дней, положительных 49% на BTC и 53% на ETH — монетка. Как селектор (каждые 60 дней выбираем лучшую из 48 конфигураций по прошлым 180 дням — ровно «пересчитывать топологию rolling-окном»): BTC +0.43 при 85.5-м перцентиле собственного нуля селектора (p95 нуля +0.65), ETH −0.08 при 41.5-м. 32 переключения, 22 разных победителя за 7 лет. Это ещё одно подтверждение того, что мы уже находили в серии про walk-forward-харнесс: выбор конфигурации по недавнему прошлому не переносится вперёд.

Сомнение из статьи подтвердилось

В разделе «Сомнения» сказано, что в периоды высокой корреляции всего со всем сетевой сигнал вырождается в обычный моментум. Измерили: корреляция сетевого сигнала с собственным пятидневным моментумом BTC +0.379 в среднем, но +0.455 в дни сильной связки против +0.332 в дни слабой (деление по медиане среднего |веса|). На ETH +0.414 при +0.493 / +0.307. Знаки сигналов совпадают в 60–62% дней. Вырождение реально и ровно в ту сторону, о которой предупреждала статья.

Проверка счёта

Независимая реимплементация первичной ячейки с нуля — свой SQL, своя пагинация клайнов, свои ранги, свой Sharpe — сходится побитово: сигнал max|Δ| 2.8e-16, позиции 0.0, IC до шестого знака, Sharpe тождественно при одинаковой конвенции нарезки окна. Лукахед проверен не рассуждением, а порчей данных: все узлы правее 30.06.2022 заменены шумом, позиции левее этой даты обязаны не измениться — совпали побитово. Два прогона дают идентичный JSON.

Попутно нашлись две вещи, которые стоит запомнить. Первая: наш ряд USDJPY (Yahoo JPY=X) датирован на день позже нормировочного курса FRED DEXJPUS — пик корреляции приращений стоит на лаге −1, а не 0. Ряд отстаёт, а не опережает, то есть ошибка консервативна, но знать о ней надо. NASDAQ сверен с FRED NASDAQCOM точно (медианное отклонение 0.000%, пик корреляции на лаге 0). Вторая: ротационный нуль тождественно бессилен против постоянной позиции — buy & hold при любом сдвиге доходностей даёт тот же Sharpe, потому что множество дневных P&L не меняется. Сравнивать с ним имеет смысл только стратегии, которые действительно меняют позицию.

Вердикт

Идея на нашем горизонте данных не работает, и причин две независимые. Первая — в мире: связь крипты с макро-узлами синхронная, а не опережающая; на дневном шаге предсказывать нечего. Вторая — в самой конструкции: корреляционные веса слепы к лид-лагу по построению, а пятидневное удержание срезает три четверти того, что осталось; такая спецификация не находит даже искусственно внедрённый эдж силой ann-SR 5.0.

Что из этого переиспользуемо. Если возвращаться к сетевому моментуму, веса нужно строить не на одновременной корреляции, а прямо на предсказательной способности узла (лид-лаг-регрессия, оцененная скользящим окном без заглядывания вперёд), и держать позицию день, а не пять. Но прежде чем строить, стоит посмотреть на таблицу лагов выше: строить пока не из чего. Внутридневной горизонт — отдельный вопрос, наши пять минут по BTC/ETH его позволяют, и там синхронность 24-часовой связи распадается на что-то более интересное; это следующий шаг, а не этот.

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