Валидация и журнал прогнозов
Страница показывает, сходится ли недельный индекс Cassandra с независимыми измерениями конфликтности: GPR, ACLED и CrisisWatch. Здесь же — журнал прогнозов с попаданиями и промахами и раздел о том, чего это сравнение не доказывает.
Сводка
Недельный индекс Cassandra сравнивается с тремя независимыми рядами: GPR, ACLED и CrisisWatch. Ниже — пересечение по периодам, коэффициенты, совпадение направления, лаги и расхождения. Всё пересобирается из офлайн-фикстур одной командой, поэтому числа на странице воспроизводимы.
Компараторы
Три независимых ряда и статус сравнения по каждому. Подробности — в разделах ниже.
| Ряд | Пересечение | Уровни | Дельты | Направление | Лаг |
|---|---|---|---|---|---|
| Geopolitical Risk Index (GPR) | 7 | предварительно | предварительно | 17 % | сдвиг 0 |
| ACLED — события политического насилия | 3 | не рассчитывается | не рассчитывается | 50 % | не рассчитывается |
| CrisisWatch (International Crisis Group) | 2 | не рассчитывается | не рассчитывается | не рассчитывается | не рассчитывается |
Geopolitical Risk Index (GPR)
Доля газетных публикаций о геополитических рисках (война, терроризм, давление), взвешенная по частотности публикаций; дневной индекс GPRD.
Источник: Geopolitical Risk Index (GPR); данные: ссылка на ряд; получено 2026-10-18; по состоянию на 2026-10-13.
Условия: Caldara & Iacoviello, GPR — условия использования на странице источника (matteoiacoviello.com/gpr.htm).
Метрики
| Ряд | n | Пирсон | Спирмен | p (перестановки) | Статус |
|---|---|---|---|---|---|
| Уровни | 7 | -0.15 | 0.13 | 0.742 | предварительно |
| Дельты | 6 | -0.60 | -0.64 | 0.231 | предварительно |
Совпадение знаков первых разностей: 17 % (1 из 6, пропущено 0). Статус: описательно.
Лаг
| Сдвиг | n | Пирсон |
|---|---|---|
| -2 | 4 | — |
| -1 | 5 | — |
| 0 | 6 | -0.60 |
| 1 | 5 | — |
| 2 | 4 | — |
Наибольший по модулю коэффициент — при сдвиге 0 (-0.60). Статус: предварительно.
Расхождения
| Период | Δ индекса | Δ внешнего ряда |
|---|---|---|
| 2026-10-11 | +10 | -26.45 |
| 2026-10-04 | -1 | +7.22 |
| 2026-09-27 | -9 | +13.49 |
| 2026-09-13 | +1 | -4.52 |
| 2026-09-06 | -9 | +22.36 |
ACLED — события политического насилия
Число зафиксированных событий политического насилия за месяц (все типы, глобально) и число погибших; лист Non_HRP.
Источник: ACLED — события политического насилия; данные: ссылка на ряд; получено 2026-10-18; по состоянию на 2026-10-09.
Условия: ACLED Terms of Use (атрибуция обязательна); зеркало HDX.
Метрики
| Ряд | n | Пирсон | Спирмен | p (перестановки) | Статус |
|---|---|---|---|---|---|
| Уровни | 3 | — | — | — | не рассчитывается |
| Дельты | 2 | — | — | — | не рассчитывается |
Совпадение знаков первых разностей: 50 % (1 из 2, пропущено 0). Статус: описательно.
Лаг
| Сдвиг | n | Пирсон |
|---|---|---|
| -2 | 0 | — |
| -1 | 1 | — |
| 0 | 2 | — |
| 1 | 1 | — |
| 2 | 0 | — |
Наилучший сдвиг не рассчитывается: — (пар меньше порога 6).
Расхождения
| Период | Δ индекса | Δ внешнего ряда |
|---|---|---|
| 2026-10 | +11.50 | -3837 |
Пересечение короче порога: 3 пар при минимуме 6; коэффициент не публикуется. Ряд 2026-10 неполный (as_of 2026-10-09)
Почему сравнение идёт по данным о событиях, а не по Conflict Index
Conflict Index — страновой композит, который ACLED публикует раз в полгода; машинного доступа к нему нет, а пересечения с восемью неделями методологии 3.0 (с 30 августа по 18 октября 2026 года) не возникает. Поэтому сравнение идёт по помесячным данным ACLED о событиях политического насилия: число событий за месяц против среднего индекса по неделям этого месяца. Это разные конструкты — счёт произошедших событий и сводная оценка состояния риска, — и сходимость таких рядов не подтверждает правильность индекса.
CrisisWatch (International Crisis Group)
Число стран, где ситуация ухудшилась по оценке ICG за месяц (CrisisWatch Trends); improved/resolution — для полноты картины.
Источник: CrisisWatch (International Crisis Group); данные: ссылка на ряд; получено 2026-10-18; по состоянию на 2026-09.
Условия: International Crisis Group, CrisisWatch — условия использования на crisisgroup.org.
Метрики
| Ряд | n | Пирсон | Спирмен | p (перестановки) | Статус |
|---|---|---|---|---|---|
| Уровни | 2 | — | — | — | не рассчитывается |
| Дельты | 1 | — | — | — | не рассчитывается |
Совпадение знаков первых разностей: — — пар меньше двух, показатель не рассчитывается (попаданий 0, пар 1, пропущено 0).
Лаг
| Сдвиг | n | Пирсон |
|---|---|---|
| -2 | 0 | — |
| -1 | 0 | — |
| 0 | 1 | — |
| 1 | 0 | — |
| 2 | 0 | — |
Наилучший сдвиг не рассчитывается: — (пар меньше порога 6).
Расхождения
| Период | Δ индекса | Δ внешнего ряда |
|---|---|---|
| 2026-09 | -4 | +1 |
Пересечение короче порога: 2 пар при минимуме 6; коэффициент не публикуется.
Что это не доказывает
Сходимость с внешними рядами — проверка, а не доказательство правильности индекса. Ниже три причины, почему сравнение нельзя читать как оценку точности.
Разные конструкты
Индекс Cassandra — сводная оценка уровня и направления риска по девяти драйверам. GPR считает долю газетных публикаций о геополитических рисках, ACLED — число зафиксированных событий политического насилия, CrisisWatch — экспертные страновые оценки ухудшения ситуации. Ряды измеряют разное; совпадение или расхождение не говорит, какой из них «прав».
Разные окна
Индекс недельный, GPR дневной и сводится к окну [W−6, W], ACLED и CrisisWatch месячные и сравниваются со средним индекса по неделям месяца. Полугодовой Conflict Index ACLED и страновые срезы в сравнение не входят: у них другая периодичность и другой уровень агрегации. К этому добавляется сдвиг публикации: внешний ряд за период становится известен позже, чем закрывается неделя индекса.
Ревизии данных
Внешние ряды пересматриваются задним числом: уточняются события, меняются страновые оценки, обновляются исторические значения GPR. Наши снапшоты недель не пересчитываются после публикации — это зафиксированная запись. Поэтому коэффициент, пересчитанный на новой версии внешнего ряда, может отличаться от опубликованного раньше, хотя индекс не менялся.
Журнал прогнозов
Журнал показывает, сбываются ли заявленные ожидания: ожидание, факт, попадание или промах. Промахи перечислены полностью и не спрятаны в раскрывающийся блок. Baseline — наивный benchmark, а не прогноз проекта; редакционные записи — отдельный блок.
Наивный benchmark (baseline)
Это не прогноз проекта: правило механически повторяет кластер прошлой опубликованной недели и ожидает направление «без изменения». Оно восстановимо из опубликованных снапшотов, поэтому задним числом его нельзя подкрутить, но записью в git до публикации недели оно не является.
| Неделя | Ожидание: кластер | Ожидание: направление | Факт: индекс | Факт: кластер | Факт: направление | Итог |
|---|---|---|---|---|---|---|
| 2026-09-06 | опасный | без изменения | 42 | опасный | снижение | кластер: попадание; направление: промах |
| 2026-09-13 | опасный | без изменения | 43 | опасный | без изменения | кластер: попадание; направление: попадание |
| 2026-09-20 | опасный | без изменения | 56 | опасный | рост | кластер: попадание; направление: промах |
| 2026-09-27 | опасный | без изменения | 47 | опасный | снижение | кластер: попадание; направление: промах |
| 2026-10-04 | опасный | без изменения | 46 | опасный | без изменения | кластер: попадание; направление: попадание |
| 2026-10-11 | опасный | без изменения | 56 | опасный | рост | кластер: попадание; направление: промах |
| 2026-10-18 | опасный | без изменения | 64 | очень высокий | рост | кластер: промах; направление: промах |
| 2026-10-25 | очень высокий | без изменения | 68 | очень высокий | рост | кластер: попадание; направление: промах |
Редакционные прогнозы
Форвардные якоря редактора из calc/input/anchors/forward-<неделя>.json. Коммит добавления якоря должен быть не позже коммита добавления опубликованной недели — это проверяется по истории git; при недоступной истории так и сказано, а не выдаётся за подтверждение.
Записей нет: редакционных форвардных якорей пока не добавлено. Baseline выше показан отдельно и прогнозом проекта не является.
Промахи
Промахи показаны наравне с попаданиями: каждая запись с несовпавшим ожиданием перечислена здесь.
| Неделя | Тип записи | Поле | Ожидание | Факт |
|---|---|---|---|---|
| 2026-09-06 | baseline | направление | без изменения | снижение |
| 2026-09-20 | baseline | направление | без изменения | рост |
| 2026-09-27 | baseline | направление | без изменения | снижение |
| 2026-10-11 | baseline | направление | без изменения | рост |
| 2026-10-18 | baseline | кластер | опасный | очень высокий |
| 2026-10-18 | baseline | направление | без изменения | рост |
| 2026-10-25 | baseline | направление | без изменения | рост |
Метод
Команда node calc/backtest.js --write собирает data/public/validation.json, data/public/forecast-ledger.json и эту страницу из офлайн-фикстур. Сеть не используется.
Фикстуры лежат в calc/backtest-fixtures/: gpr.json (дневной ряд), acled.json и crisiswatch.json (месячные ряды) с провенансом в каждом файле; порядок обновления описан в calc/backtest-fixtures/README.md. Пересборка повторяется байт в байт: даты генерации в файлы не пишутся.
Метрики считаются собственными функциями: Пирсон, Спирмен со средними рангами, перестановочный тест на детерминированном генераторе (2000 итераций, фиксированный seed), согласие знаков первых разностей и кросс-корреляция при сдвигах −2…+2.
Источники рядов
- Geopolitical Risk Index (GPR); данные; по состоянию на 2026-10-13; Caldara & Iacoviello, GPR — условия использования на странице источника (matteoiacoviello.com/gpr.htm).
- ACLED — события политического насилия; данные; по состоянию на 2026-10-09; ACLED Terms of Use (атрибуция обязательна); зеркало HDX.
- CrisisWatch (International Crisis Group); данные; по состоянию на 2026-09; International Crisis Group, CrisisWatch — условия использования на crisisgroup.org.
Машинные файлы: validation.json forecast-ledger.json