Перестановочный тест
Перестановочный тест проверяет, мог ли результат бэктеста возникнуть случайно: он многократно пересчитывает ту же статистику на данных, структура которых случайно переставлена. Доля перестановок, которые повторяют или превосходят реальный результат, и есть p-значение.
Senzoukria · Глоссарий · Обновлено: сентябрь 2026
Построение нулевого распределения
Вопрос не в том, заработала ли стратегия, а в том, заработало ли бы столько же правило без информации. Чтобы ответить, уничтожьте информацию, которую правило могло использовать, сохранив всё остальное: те же бары, то же число сделок, те же издержки. Обычные способы — переставить порядок доходностей, знак каждой сделки или сопоставление сигналов с исходами.
Пересчитайте целевую функцию на каждом переставленном ряде. После многих перестановок у вас есть распределение результатов, которые правило без преимущества дало бы ровно на этих данных. Поместите реальный результат на это распределение.
Как читать исход
- p-значение — это доля перестановок, чья статистика не хуже наблюдаемой.
- Малое p-значение означает, что немногие случайные перестановки дотянулись до наблюдаемого результата: преимущество отличимо от случайности на этой выборке.
- Большое p-значение означает, что случайные перестановки дотягиваются до него регулярно. Результат может быть настоящим, но эти данные его не показывают.
- Тест точен для выборки и не требует предположений о распределении — поэтому он подходит для результатов сделок с тяжёлыми хвостами.
В Senzoukria
Раздел go/no-go панели бэктеста в десктопе перечисляет «Перестановочный тест: преимущество отличимо от случайности» как один из критериев и показывает полученное p-значение рядом с PSR, DSR и PBO. Панель представляет блок как перестановочный тест против чистой случайности, запускаемый в фазе, помеченной как перестановки, после walk-forward и сетки по всему периоду.
Страница бэктеста на сайте перечисляет перестановочные тесты вместе с PSR, DSR и PBO среди исследовательских инструментов, доступных на поддерживаемых исторических проверках. Как и остальные критерии, тест использует ту же политику исполнения и те же издержки, что и бэктест, породивший сделки.
Частые ошибки
- Переставлять так, что разрушается и структура, которой стратегия пользуется законно, например границы сессий: тогда нулевую гипотезу становится слишком легко побить.
- Запускать тест на победителе перебора внутри выборки, не учитывая число попыток. p-значение перестановки не корректирует отбор — это делает дефлированный Шарп.
- Читать p-значение как вероятность того, что у стратегии нет преимущества. Это вероятность наблюдаемого результата при нулевой гипотезе, а не наоборот.
- Брать слишком мало перестановок: тогда наименьшее сообщаемое p-значение получается грубым.
См. также
Эта страница на других языках
Частые вопросы
- Сколько нужно перестановок?
- Столько, чтобы разрешение p-значения было тоньше решения, которое вы хотите принять. При ста перестановках наименьшее ненулевое p-значение — одна сотая. Десктоп запускает перестановки отдельной фазой после walk-forward; их число задаётся панелью и показывается вместе с результатом.
- Может ли перестановочный тест заменить walk-forward проверку?
- Нет. Перестановочный тест спрашивает, отличим ли результат на протестированных данных от случайности. Walk-forward спрашивает, продолжают ли работать замороженные параметры на более поздних данных. Стратегия может пройти одно и провалить другое. Раздел go/no-go показывает оба, потому что они проваливаются по разным причинам.