8. Модуль "Бэктесты"
Ссылка на модуль: https://my.whalepro.org/backtests/
8.1. Предназначение раздела
Модуль «Бектесты» предназначен для проведения тестирования предварительно созданных Алертов на промежутке истории торговой пары.
Внимание: если у вас нет созданных алертов, то этот модуль не будет работать!
Позволяет при создании бектеста выбрать до двух Алертов и промежуток истории до 7 лет.
При этом, если в бектесте выбрано два алерта, то проверка алертов производиться отдельно друг от друга, то есть система сначала находит точки на промежутке истории, где срабатывают все условия для первого алерта, а затем находит точки для второго алерта. Таким образом, мы находим в бектесте отдельно точки для первого алерта и отдельно для второго.
Примечание: на данный момент на платформе доступ к бектестам предоставлен только для тарифного плана Professional.
8.2. Общий вид раздела
1 -- Кнопки старта проведения бэктеста.
Поддерживаются бэктесты с 1 или 2 алертами одновременно.
2 -- Список проведённых бэктестов с элементами управления.
Элементы управления:
3 -- Значок «Редактирование бэктеста»
При нажатии на кнопку открывается поле редактироравния бэкстеста. Важно понимать, что при редактировании и сохранении все предыдущие результаты проведённого бэктеста будут удалены, так как система будет считать отредактированный бэкстест за «новый». Таким образом, редактирование бэкстеста -- это просто функция более удобного запуска бэктеста с обновлёнными параметрами.
4 -- Значок «Копирование бэктеста»
При нажатии на кнопку открывается поле создания бэктеста. Эта функция полезна для того, чтобы не создавать с нуля бэкстест для нового алерта, если у вас уже есть ранее созданный бэктест с настройками, которые вас устраивают.
5 -- Значок «Удаление бэктеста»
6 -- Значок «Просмотр настроек бэктеста»
7 -- Значок «Открыть график результатов бэкстеста»
8.3. Добавление бектеста
Рассмотрим процесс добавления бэкстеста для одного алерта.
Щёлкните на кнопку «Новый бэктест 1 алерт»
Откроется меню настройки бэктеста
1 -- Название
2 -- Период
3 -- Начальная, Конечная даты
Раздел Алерт
4 -- Выбор алерта
5 -- Размер открытия сделки
6 -- Лаг открытия сделки
7 -- Плечо
8 -- Раздел «Фильтры входа в сделку»
9 -- Изменение позиции при повторной сработке алерта
Параметры настройки бэктеста
Название - произвольное название бэктеста для удобства идентификации в списке.
Период - временной интервал, на котором будет проводиться бэктестирование. Можно выбрать предустановленные периоды (1 месяц, 3 месяца, 6 месяцев, 1 год и т.д.) или задать произвольный период, указав начальную и конечную даты.
Выбор алерта - выбор предварительно созданного алерта, который будет тестироваться на историческом периоде. Алерты создаются в модуле «График».
Размер открытия сделки - сумма, которая будет использоваться для открытия позиции при срабатывании алерта в бэктесте.
Лаг открытия сделки - задержка между срабатыванием алерта и открытием позиции. Позволяет моделировать реальные условия торговли, когда между получением сигнала и исполнением ордера проходит некоторое время.
Плечо - размер кредитного плеча, используемого при открытии позиций в бэктесте.
Фильтры входа в сделку - дополнительные условия, которые должны выполняться для открытия позиции помимо срабатывания основного алерта.
Изменение позиции при повторной сработке алерта - настройка поведения системы при повторном срабатывании алерта, когда позиция уже открыта. Возможные варианты: игнорировать, увеличивать позицию, закрывать текущую и открывать новую.
8.4. Просмотр результатов бектеста
После запуска бэктеста система анализирует исторические данные и находит все точки, где срабатывают условия выбранного алерта. Для каждой такой точки моделируется открытие позиции согласно заданным параметрам, и отслеживается дальнейшее изменение цены.
Результаты бэктеста представляются в виде:
- Графика с отмеченными точками входа и выхода из позиций
- Таблицы со статистикой по каждой сделке
- Сводных показателей эффективности стратегии
Основные показатели, которые можно анализировать в результатах бэктеста:
- Общая прибыль/убыток
- Процент прибыльных сделок
- Средняя прибыль на сделку
- Максимальная просадка
- Отношение риска к прибыли
Для просмотра результатов бэктеста нажмите на значок «Открыть график результатов бэкстеста» в списке проведенных бэктестов.
8.5. Пример работы с бэктестом
Рассмотрим пример создания и анализа бэктеста для алерта, отслеживающего всплески объема покупок на паре BTCUSDT.
- Предварительно создаем алерт в модуле «График», который срабатывает при превышении объема покупок определенного порогового значения.
- В модуле «Бэктесты» нажимаем «Новый бэктест 1 алерт».
- Задаем название «Тест объемов BTC».
- Выбираем период тестирования - последний год.
- В разделе «Алерт» выбираем наш созданный алерт по объемам.
- Устанавливаем размер сделки 1000 USDT.
- Задаем лаг открытия сделки 1 час (чтобы моделировать реальную задержку реакции на сигнал).
- Устанавливаем плечо 1x (без использования маржинальной торговли).
- В разделе «Фильтры входа в сделку» добавляем условие, что сделка открывается только если 24-часовое изменение цены находится в диапазоне от -2% до +2% (чтобы избегать входов во время сильных движений).
- Нажимаем «Сохранить и запустить».
После завершения расчетов анализируем результаты:
- Смотрим общую доходность стратегии
- Анализируем распределение прибыльных и убыточных сделок
- Изучаем периоды, когда стратегия работала наиболее эффективно
- На основе полученных данных корректируем параметры алерта или условия входа в сделку
- Запускаем новый бэктест с измененными параметрами и сравниваем результаты
Такой итеративный подход позволяет постепенно оптимизировать торговую стратегию и повышать ее эффективность перед применением на реальном счете.