Валидация quant-стратегий
TRPZLabs Quant Radar
Инструмент, который стресс-тестит торговую стратегию сразу в тысячах вариантов и выбрасывает те, что выглядели хорошо лишь по удаче, чтобы осталось преимущество, выживающее на реальном рынке, а не подгонка, которая умирает вживую.
- ~77×
- быстрее очевидного способа
- 5
- проверок против удачи
- 8
- таймфреймов
Задача
Большинство торговых стратегий это выдача желаемого: блестят на прошлых графиках и тихо умирают на реальном рынке. Проверить каждую вариацию достаточно строго, чтобы это поймать, да ещё по десяткам инструментов, мучительно медленно.
Что я сделал
Собрал стенд, который прогоняет весь набор вариантов за один быстрый проход, а затем пропускает каждого выжившего через пять независимых проверок на удачу. Стратегия проходит, только если обыгрывает «купи и держи», обыгрывает случайный шум и проходит собственную проверку уверенности. Каждый прогон логируется, чтобы любой результат можно было воспроизвести.
Инженерные решения
- 01
Тысячи тестов за один проход
Вместо перебора вариантов по одному весь набор считается разом за один проход, примерно в 77 раз быстрее (около 13 минут против 10 секунд на инструмент). Плюс точно моделирует плечо, которого нет в базовой библиотеке.
- 02
Пять способов поймать случайность
Сетап обязан пережить пять независимых проверок и обыграть «купи и держи», случайный шум и собственную границу уверенности. Провалившиеся остаются видимыми с флагом, чтобы всегда было видно, сколько в результате удачи.
- 03
Сверка с TradingView
Индикаторы сделаны так, чтобы совпадать с TradingView, а зеркало движка позволяет перепроверить найденный сетап прямо на графике. Они не идентичны, но всегда можно посмотреть и сравнить, так что ничего не остаётся чёрным ящиком.
- 04
Прогрев данных, честные сигналы
Перед исследуемым периодом подгружает лишнюю историю для прогрева, чтобы медленные индикаторы вроде средней по 200 барам были точны уже на первом баре теста и не давали ложных сигналов на старте.
Экраны
Итог
Исследовательский инструмент фондового уровня, собранный в одиночку на чистом Python: тестирует стратегии примерно в 77 раз быстрее очевидного подхода, отсеивает удачу пятью независимыми проверками, точно моделирует плечо и логирует каждый прогон, чтобы результаты воспроизводились. Плюс риск-деск, который считает размер позиции и отмечает тонкие или перегретые рынки.
Построено на
- Python
- Streamlit
- VectorBT
- pandas
- NumPy
- ccxt
- SQLite
- Pine Script