Почему результаты после запуска отличаются от бэктеста
Бэктест проверяет, были ли сохраненные правила жизнеспособны на исторических рыночных данных. Исполнение после запуска применяет ту же логику стратегии в условиях меняющейся биржи, текущих балансов, сетевых задержек, подтверждений ордеров и реальных исполнений. Эти два представления нужно сравнивать, но не стоит ожидать совпадения свеча в свечу.
Что это
Эта статья объясняет, почему завершенный бэктест может отличаться от демо, тестовой среды или результатов после запуска в SteadyEdge.
Когда использовать
Используйте эту статью, если:
- бот прошел бэктест, но после запуска ведет себя иначе
- аналитика и отчет проверки на истории показывают разные числа
- нужно понять, является ли расхождение нормальным или тревожным
- отчет содержит предупреждения о сигналах TradingView, ставке финансирования, открытом интересе, свечах или выборке режима всех монет
Перед началом
Важное текущее поведение продукта:
- бэктесты используют исторические данные основного рынка, даже если торговый аккаунт подключен к демо или тестовой среде
- бэктесты сейчас используют native_intrabar ; режим software_polling для проверки на истории не реализован
- вебхук-сигналы TradingView не воспроизводятся исторически и могут быть проигнорированы с предупреждением
- фильтры ставки финансирования и открытого интереса зависят от доступных исторических снимков
- аналитика показывает записанные позиции ботов, а бэктест показывает результат исторической симуляции
Пошагово
Шаг 1. Сначала сравните источник данных
Бэктест воспроизводит сохраненные исторические свечи и рыночные снимки. Исполнение после запуска читает текущее состояние биржи и отправляет реальные ордера через движок исполнения.
Демо, тестовая среда и реальная торговля могут отличаться, потому что:
- ликвидность биржи меняется после исторического периода
- тестовые или демо-книги заявок могут вести себя не как основной рынок
- текущие правила символа, минимальный размер ордера, точность или лимиты плеча могут отличаться от старых условий
- история ставки финансирования и открытого интереса может быть неполной для выбранного периода
Шаг 2. Проверьте допущения исполнения
Бэктест моделирует исполнения по свечам. Исполнение после запуска зависит от типа ордера, подтверждения биржи, времени срабатывания триггера, проскальзывания и того, дошел ли рыночный ордер до биржи вовремя.
Разрыв особенно заметен вокруг:
- быстрых свечей и входов или выходов по фитилям
- тесных правил стоп-лосса или трейлинг-стопа
- входов вокруг окна ставки финансирования
- сканов по всем монетам, где много символов конкурируют за внимание
- ордеров, зависящих от внешнего состояния биржи
Шаг 3. Прочитайте предупреждения до оценки результата
Предупреждающие баннеры объясняют, где историческое воспроизведение удалило или ухудшило часть контекста стратегии.
Например:
- signal_tradingview_ignored означает, что правила вебхук-сигналов были удалены из исторического воспроизведения
- предупреждения по ставке финансирования означают, что правила ставки или расписание не удалось полностью восстановить
- предупреждения по открытому интересу означают, что фильтр OI мог примениться не для каждого нужного таймфрейма
- выборка режима всех монет означает, что запуск использовал подмножество символов для контроля времени выполнения и объема данных
Шаг 4. Разделяйте аналитику и бэктест
Отчеты проверки на истории находятся в разделе Проверка . Аналитика читает записанные позиции и исполнения.
Используйте бэктест для оценки исторической жизнеспособности. Используйте аналитику, чтобы проверить, что произошло после запуска.
Шаг 5. Используйте расхождения как сигнал для расследования
Небольшое расхождение может быть нормальным. Повторяющийся шаблон требует проверки.
Ищите:
- убытки после запуска, сгруппированные в одно и то же время дня
- выходы после запуска, которые происходят быстрее исторического среднего
- комиссии или ставка финансирования, доминирующие в общем PnL
- входы после запуска без ожидаемого контекста фильтров
- стратегию, которая опиралась на бэктест с множеством предупреждений
Что вы должны увидеть
После сравнения обоих представлений вы должны понимать:
- какой исторический период был протестирован
- с каким периодом после запуска или записанным периодом вы сравниваете
- повлияли ли предупреждения на отчет
- откуда идет расхождение: данные, исполнение, комиссии, время или поведение стратегии
Частые ошибки
- считать бэктест гарантией прибыли после запуска
- игнорировать предупреждающие баннеры
- сравнивать аналитику и бэктест за разные диапазоны дат
- считать тестовую среду доказательством ликвидности основного рынка
- запускать бота после одного сильного бэктеста без проверки просадки, распределения и времени сделок
Связанные статьи
- Как читать отчёт проверки на истории
- Журнал сделок и экспорт
- Кривая капитала
- Запуск проверки на истории