Анализ доходности торговых стратегий через бектест

Для оценки доходности торговых стратегий часто используется бектест, представляющий собой прокрутку исторических данных, позволяющую симулировать поведение алгоритма в различных ситуациях. Одной из распространённых проблем является look-ahead bias, когда бектест использует данные, доступные лишь в будущем, что искажает результаты.

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

Для решения этих проблем рекомендуется вынести функции, отвечающие за поведение стратегии, в обычный JavaScript объект, а расчёт временных окон перенести в библиотечный код. Это позволит создать единый контекст для анализа, где данные будут поступать только до текущего времени, исключая доступ к будущим данным.

В результате код для бектеста и продакшена остаётся идентичным, меняется лишь способ получения текущего времени. Важно, чтобы в обоих случаях контекст оставался неизменным, что значительно упрощает процесс разработки и тестирования торговых стратегий.

Понравилась статья? Поделиться с друзьями: