Предсказывают ли макро-рынки Kalshi волатильность крипты
Наши боты держат позиции в бинарных контрактах на цену биткоина через дни выхода CPI и решений ФРС. Если бы существовал канал «рынок предсказаний уже переоценил макро → впереди волатильная неделя», его стоило бы встроить в риск-модель ещё вчера. Именно это обещает работа Do Prediction Markets Forecast Cryptocurrency Volatility? Evidence from Kalshi Macro Contracts (Моханти и Кришнамачари, апрель 2026): суточные изменения вероятностей в контрактах Kalshi на ставку ФРС предсказывают волатильность биткоина с t = 3.63, а переоценка CPI — волатильность эфира, соланы и Chainlink с t от −2.1 до −3.4; часть результатов переживает поправку на множественность и работает вне выборки.
Мы проверили это на собственных данных. Коротко: заявленные ячейки не воспроизводятся ни на нашем окне, ни на окне самой статьи. Но интереснее другое — по дороге мы нашли эффект, который выглядел убедительнее оригинала, и он развалился под собственным аудитом. Об этом подробно, потому что ловушка типовая.
Где на самом деле лежит история Kalshi
Публичный API Kalshi отдаёт в обычном /markets только рынки, закрывшиеся за последние три месяца. Всё старше уезжает в отдельные исторические эндпоинты: /historical/markets по серии (с курсором) и /historical/markets/{ticker}/candlesticks с дневными, часовыми и минутными свечами. Ещё одна неочевидность: в 2024–25 годах Kalshi переименовал серии, добавив префикс KX, и старые события живут внутри новой серии под старыми именами — контракты FOMC марта 2023 года называются FED-23MAR-…, но лежат в серии KXFED. Дневная свеча существует и для дней без сделок (в ней есть bid и ask), а заканчивается она в полночь по восточному времени США.
Мы собрали десять макро-серий: ставка ФРС, CPI (три варианта), Core PCE, рецессия по NBER, ВВП, безработица, payrolls. Получилось 3 664 контракта и 254 280 дневных свечей начиная с 2021 года. Сигнал строили в точности по статье: суточное изменение вероятности каждого контракта, взвешенное долларовым объёмом, суммируется по всем контрактам серии; для магнитуды берётся модуль, для ФРС — знак «голубиного» сдвига, то есть минус изменение вероятности более высокой ставки. Сигнал берётся с лагом в один день: к моменту, когда мы прогнозируем волатильность следующих дней, последняя полная свеча Kalshi — вчерашняя.
Цель прогноза — тоже как в статье: реализованная волатильность следующих пяти дней по дневным доходностям, в годовых. Контроли: HAR по модулям доходностей за день, неделю и месяц, плюс VIX, доллар и S&P 500. Стандартные ошибки Ньюи–Уэста с пятью лагами. Вне выборки — расширяющееся окно от 120 наблюдений и тест Кларка–Уэста. Ничего своего мы сюда не добавляли, чтобы нельзя было сказать «вы считали не то».
Что утверждает статья и что вышло
| ячейка (h = 5 дней) | статья: коэффициент, t | у нас: t на их окне | у нас: t до сентября 2026 | вне выборки у нас (MSFE, p) |
|---|---|---|---|---|
| BTC × Fed-dovish | 0.639, 3.63 | 1.24 | 1.11 | 1.000, 0.29 |
| ETH × |CPI| | −1.209, −2.12 | −1.10 | 0.10 | 1.003, 0.76 |
| SOL × |CPI| | −0.850, −2.55 | −1.94 | −1.21 | 1.004, 0.23 |
| LINK × |CPI| | −1.262, −3.39 | −1.10 | −0.54 | 1.003, 0.72 |
| BTC × |рецессия| | вне выборки MSFE 0.979, p = 0.02 | 0.25 | 0.04 | 1.003, 0.92 |

Ближе всего к статье подошла солана на её же окне — t = −1.94, и то не дотягивает. Вне выборки отношение ошибок прогноза с сигналом и без него равно единице с точностью до третьего знака во всех пяти ячейках. Мы перебрали определения сигнала — веса в долларах или в контрактах, цена по сделкам или по середине спреда, модуль взвешенной суммы или взвешенная сумма модулей, лаг в ноль, один и два дня — картина не меняется. Плацебо с перестановкой сигнала блоками по 20 дней даёт наблюдаемые t-статистики в 26–97% случаев.
Полная сетка — девять серий, шесть активов, четыре горизонта, 264 ячейки. Двенадцать из них показывают |t| ≥ 2, что примерно и ожидаешь от шума. Поправку Бенджамини–Хохберга при q = 0.05 пережили четыре — все от одной серии, Core PCE. К ней вернёмся.
Почему у авторов вышло иначе, мы можем только предполагать. Они брали закрытия Kalshi в 16:00 по восточному времени и цены CoinGecko, мы — свечи до полуночи и Binance. Их выборка заканчивается мартом 2026, наша — сентябрём, но на их окне у нас ничего не появляется. Возможно, разница в том, какие контракты входили в серию у них и у нас: для рынков без сделок цену даёт середина спреда, а у далёких страйков она может годами стоять на месте. Мы проверили и это — эффекта нет ни при каком определении.
Ловушка, в которую мы почти попали
Первый прогон принёс то, что выглядело настоящей находкой. В статье есть побочный вывод: после крупной переоценки CPI реализованная волатильность следующей недели оказывается примерно на 16% ниже прогноза HAR, а значит, стрэддлы, оценённые по недавней волатильности, переоценены. Мы разложили это на две части — размер переоценки и сам факт релиза. Оказалось, что работает второй: в день после выхода CPI отношение волатильности следующих пяти дней к прогнозу HAR составило 0.87 у биткоина и 0.84 у эфира, а после крупной переоценки без релиза — 0.99 и 1.08. Дамми «вчера был релиз» значима, магнитуда сигнала — нет. Рядом лежала ещё более красивая цифра: разрыв между DVOL и реализованной волатильностью после CPI на 5–7 пунктов шире обычного. Готовый заголовок: «после CPI неделя тише, а опционы этого не знают».
Мы не стали его писать, а прогнали аудит. Вот что он показал.

Во-первых, мера. На стандартном отклонении пяти дневных доходностей провал есть — 0.87 с доверительным интервалом [0.74, 1.00], и он держится, если HAR оценивать вне выборки. Но реализованная волатильность по 5-минутным доходностям — мера в разы точнее — даёт 0.923 против 0.943 в обычные дни. Это около двух процентов при интервале через единицу. Во-вторых, время: в 2023–2024 годах отношение равно 1.01 на 24 событиях, а весь эффект сидит в 2025–2026 — 0.68 на 18 событиях. В-третьих, множественность: календарных тестов у нас восемь (CPI и ФРС, два актива, два горизонта), и ни один не проходит поправку BH; лучший p = 0.011 против порога 0.006. В-четвёртых, «опционы не знают». Сам DVOL за пять дней после CPI меняется на +0.03 пункта у биткоина и на −0.63 у эфира — то есть никак. А если считать премию честно, с согласованным горизонтом (DVOL против волатильности следующих 30 дней), после CPI она 6.8 против 5.7 в прочие дни, с интервалами, которые накрывают друг друга. Прежние «5–7 пунктов» были разностью 30-дневного индекса и 5-дневной волатильности: это тот же провал пятидневной меры, а не поведение опционов.
Единственное, что аудит подтвердил, — «особенность» именно дня после релиза: если сдвинуть метку на день-три вперёд или назад, отношение возвращается к единице. Так что гипотеза «после CPI неделя спокойнее» жива, но пока это гипотеза с шумной мерой и одним режимом. Мы поставили её на форвард-трек: после каждого нового релиза считаем отношение по обеим мерам, через двенадцать событий вернёмся к вопросу.
Единственный выживший
Четыре ячейки, пережившие поправку на множественность, — это модуль переоценки Core PCE для биткоина, эфира и Avalanche на горизонтах в три и пять дней с отрицательным знаком: крупная переоценка инфляции по PCE → следующие дни тише. Мы прогнали через эту ячейку всё, что прогоняли через ячейки статьи. Дамми релиза её не задевает, на днях без релиза t остаётся −3.1 у биткоина. Вне выборки против HAR с добавленным DVOL — MSFE 0.993 при p = 0.03. Плацебо-перестановки дают такой t в 0.8% случаев. Факт торговли, объём и число контрактов сами по себе волатильность не предсказывают, то есть это не прокси активности тонкого рынка.
Красные флаги при этом серьёзные. Вся выборка — 331 день с торговлей, и практически все они после января 2025-го: половины сравнить нельзя, режим один. Медианный дневной оборот серии — 276 долларов. Если считать цену по середине спреда вместо сделок, эффект падает до t = −0.9. На пятидневном горизонте значимость держалась на перекрывающихся окнах: на неперекрывающихся t равен −0.16 у биткоина. Устойчиво выглядит только горизонт в один день: лаг даёт t = −3.15, а «будущий» сигнал — −0.6, как и должно быть у настоящего предиктора.
Мы зарегистрировали условия форвард-суда до того, как увидим новые данные: горизонт один и пять дней, спецификация статьи, тот же знак, |t| ≥ 2 и выигрыш вне выборки против HAR с DVOL на данных, собранных после 5 сентября 2026, при не менее чем 120 новых торговых днях. Это примерно март 2027 года. До тех пор — ни в прод, ни в мусор.
Чего мы не доказали
Мы не доказали, что канал «макро-переоценка → волатильность крипты» не существует в принципе. Мы показали, что в спецификации статьи, на её и на более длинном окне, при любых разумных вариантах определения сигнала он не виден в наших данных. Мы не воспроизводим их источник цен, и различие в закрытиях (16:00 ET против полуночи) могло сдвинуть выравнивание с релизами, которые выходят в 8:30 утра — хотя проверка со сдвигом лага на день в обе стороны этого не подтверждает. Мы не тестировали внутридневные горизонты: контракт на 15-минутное движение биткоина живёт в другом масштабе времени, и, возможно, там макро-переоценка значит больше.
Что это значит на практике
Для наших ботов ничего не меняется: календарные всплески волатильности вокруг CPI и FOMC у нас уже заложены в часы волатильности, а признака из Kalshi в проде не появится — по правилу, которое мы записали до прогона: сигнал идёт в прод, только если проходит вневыборочный тест, дамми релиза, устойчивость по половинам и плацебо одновременно. Сбор макро-серий при этом остаётся: он бесплатный, а данные для форвард-суда копятся только вперёд — задним числом минутную историю Kalshi не достать.
Где копаем дальше
Три направления, где ответ ещё не получен. Первое — внутридневной масштаб: переоценка контрактов ФРС в часы вокруг заседания против реализованной волатильности следующих часов, а не дней. Второе — сторона агрессора: лента Kalshi отдаёт, кто был инициатором сделки, и «направленная» переоценка (кто-то настойчиво покупает более высокую ставку) может отличаться от переоценки по цене. Третье — Core PCE как самостоятельный сюжет: если к марту он устоит на новых данных, это будет первым макро-каналом в наших моделях волатильности.
Если у вас есть своё определение сигнала — период усреднения, набор серий, способ взвешивания — пришлите. Прогоним тем же стендом, с теми же контролями и опубликуем результат с указанием автора, каким бы он ни оказался.
Результаты аудита
| проверка | что могло быть не так | что вышло |
|---|---|---|
| A1. Окно статьи | эффект умер после её выборки | на 2023-01…2026-03 t от −1.94 до +1.24, ни одна ячейка не проходит |
| A2. Мера волатильности | провал после CPI — свойство шумной меры | std дневных доходностей 0.868 [0.744, 0.999]; HAR вне выборки 0.862; 5-мин RV 0.923 против 0.943 |
| A2. Половины | один режим | 2023–24: 1.011 (n = 24); 2025–26: 0.676 (n = 18) |
| A3. Плацебо дня | «после релиза» = любой день | сдвиги ±1…3 дня дают 0.96–1.11, провал только в день 0 |
| A4. Опционы | IV не успевает вниз | ΔDVOL за 5 дней +0.03 [−1.36, +1.45]; DVOL − RV30 6.8 [2.5, 10.6] против 5.7 [4.9, 6.6] |
| A5. Даты релизов | дамми стоит не на тех днях | CPI ежемесячно в будни, интервалы 26–35 дней; FOMC — среды раз в 6–7 недель |
| A6. Core PCE, лид против лага | связь одновременная, а не предсказательная | на перекрывающихся окнах h = 5 лид ≈ лаг; на неперекрывающихся лаг −0.16; на h = 1 лаг −3.15, лид −0.61 |
| A7. Множественность | восемь календарных тестов | BH при q = 0.05 не проходит ни один (min p = 0.011) |
Данные и код: сборщик истории Kalshi, стенд и аудит лежат в нашем репозитории; таблица дневных свечей пополняется ежедневно.