Сигнал может показаться точным в историческом тесте, потому что тест тихо включает информацию, недоступную, когда было бы принято решение.Реконструкция информационной временной шкалы является более сильной проверкой, чем подсчет только победителей.
Документация определяет две опасности оценки
scikit-learn описывает утечку данных как использование информации, недоступной во время прогнозирования при построении модели, производящей чрезмерно оптимистичную оценку. Его кросс-валидационная документация отдельно предупреждает, что зависящие от времени наблюдения требуют осторожности и описывает оценку на более поздних наблюдениях с использованием разбиений временных рядов. Это методологические принципы, не свидетельствующие о том, что работает какой-либо конкретный торговый сигнал. Документация для изучения scikit — Общие подводные камни: утечка данных scikit-learn документация — Cross-validation: time series
Свеча может содержать результат, который она должна предсказать.
Представьте себе сигнал, генерируемый в 10:00:00 для контракта, истекающего в 10:01:00. Исторический набор данных поставляет максимум и минимум всей свечи 10:00-10:01 в качестве входных данных. Эти значения не полностью известны в 10:00: они включают цены, наблюдаемые в течение интервала прогнозирования.
Поэтому тест может позволить сигналу осмотреть часть будущего, которое он утверждает, чтобы предсказать. Смещение столбца метки недостаточно для устранения этой проблемы, если функции ввода все еще несут более позднюю информацию. Каждому полю требуется временная метка доступности, а также временная метки, описывающая его контрольный период.
Пересмотренное число, доступное сегодня, может отличаться от выпуска, который действительно видели трейдеры. Обратный тест с использованием пересмотренной серии не должен описывать себя как реконструкцию исторической информации о решении, если эта разница не будет устранена.
Выбор модели может загрязнить оценку даже без ошибки кодирования. Предположим, что многие настройки индикатора проверены и выбирается наиболее высокий показатель с использованием конечного периода тестирования. Этот период повлиял на выбор; он больше не служит нетронутой оценкой выбранной спецификации.
Хронологический разрыв полезен, но может все еще нуждаться в разделении вокруг перекрывающихся окон результатов. Если соседние наблюдения разделяют большую часть того же будущего ценового пути, рассматривая их как независимые доказательства, можно преувеличить эффективный размер выборки. Дизайн разделения должен отражать горизонт прогнозирования.
Доступность аудита перед оценкой точности
Перечислите раннюю доступность каждого входа, сохраните версии выпуска, где это уместно, и отграничьте выбор разработки от окончательной оценки.Проверьте предварительную обработку и выбор функций, а также само правило торговли.
Наконец, оценить полученные решения по ценам, затратам и определениям расчетов. Более чистая оценка точности все еще не является гарантией рентабельности. Первое требование проще: тест не должен использовать завтрашнюю информацию для описания вчерашнего решения.
