Перейти к содержимому

Бэктесты

Play

Бэктест — это симуляция торговли бота на исторических данных (1-минутные свечи с бирж). Вы настраиваете бота → запускаете тест → смотрите, как стратегия переживала бы просадки, где случались стоп-лоссы и какой Net-результат могла бы дать.

Бэктест обязателен для любых стратегий: купленных, подарочных, с витрины учебных ботов и собственных.

  • Бесплатно: 10 бэктестов в 24 часа (счётчик стартует в момент первого запуска), период до 3 месяцев.
  • Очередь и частота: между повторами — ≥1 мин; в очереди не более 5 тестов со статусами «В работе»/«Ожидает».
  • «Бэктесты ПРО»: период до 1 года, неограниченно тестов в сутки, интервал между стартами ≥30 сек, очередь до 5.
  • Подписчики «Про» получают доступ к еженедельной подборке удачных публичных тестов.

Все ваши тесты и счётчики — в разделе “Бэктесты”.

Чтобы тест прошёл корректно:

  • В боте есть фильтры на старт (кроме TradingView — такие тесты не запускаются).
  • Метод расчёта во всех фильтрах — «На закрытии бара» (режим «Раз в минуту» не поддерживается в бэктесте).
  • Трейлинг-стоп не используется (по минутным свечам нельзя восстановить внутрисвечную траекторию).

Если хотите приблизить «бот без фильтров» — временно поставьте на старт «Цена > 0».

  1. Цена исполнения в тесте: — вход (рыночный) — по цене открытия следующей свечи, — усреднение/выход — по цене закрытия 1-минутной свечи после сигнала. В реальной торговле исполнение будет между ценой открытия/закрытия — результаты отличаются.

  2. Фитили минутных свечей по умолчанию не учитываются. В реальности на тенях происходят усреднения/SL/TP/ликвидации. В тесте длинные тени не «цепляют» ордера → стоп-лоссов на практике бывает больше. Включайте опцию “Учитывать тени свечей”, если используете фиксированные стоп-лоссы.

  3. Смотрите не только цифры, но и график сделок: так понятнее механика стратегии и причины просадок.

  1. Каждый раз проверяйте дату начала/конца периода.
  2. Указывайте реальные комиссии биржи (ставки).
  3. На окне старта теста посмотрите фитили (p0.99) и настройте SL: рекомендуемый SL ≈ 2 × соответствующий фитиль.
  4. Давайте тестам говорящие названия (например: BTC 1ord SL_6% DCA_30/60 BB_15).

Запуск — из редактора бота («Тестировать») или с карточки бота.

Откроется окно с параметрами:

Окно запуска бэктеста

  1. Название теста — желательно уникальное и понятное (переименовать нельзя).
  2. Период — до 3 мес (Free) / до 12 мес (Pro).
  3. Свечи — сколько свечей доступно, сколько попадёт в тест, длины фитилей (важно для SL).

    Если у вас SL, для Long берите как минимум 2 × фитиль вниз (подробнее — в статье про стоп-лосс). Лучше, если SL за самым длинным фитилём в периоде.

  4. Комиссия — выберите фактические ставки вашей биржи.
  5. Публичный тест — попадёт в общую базу (может войти в рассылку/витрину). В Pro можно отключить.
  6. «Учитывать тени свечей (пессимистично)» — включает консервативный сценарий: — учитываются лимитные сеточные ордера, — лимитные TP, — простой SL (не по индикатору). Если на одной минуте пересекаются TP и SL, зачтётся SL.

Проверьте сводку параметров и нажмите «Подтвердить»:

Запуск бэктеста

После завершения вы увидите экран с графиком и вкладками.

Сразу переключите график на минимальный таймфрейм, который использовали во входных фильтрах (здесь — 5 минут).

Пример бэктеста

Вверху есть «Поделиться» — получите ссылку на тест (прикладывайте её в вопросы в поддержку). Например: https://veles.finance/share/ybUIi.

Заголовок бэктеста

Важно: значение Gross-прибыли — промежуточное; ориентируемся на Net. Подробнее о показателях — в разделе Статистика.

Под графиком — вкладки:

Владка "Результаты"

  • Net (монета/USDT)главная метрика теста: результат с учётом торговых комиссий, но без учёта фандинга.
  • Gross (монета/USDT) — результат без комиссий (и торговых, и funding). Суммируются все сделки (TP и SL).
  • Комиссия — сумма торговых комиссий за весь период (ставки).
  • Эффективность в день — Net за период / суммарное время в сделках. Удобно для стратегий с редкими входами.
  • МПП (макс. плавающая прибыль) — пик положительного PnL по сделке (или за весь тест).
  • МПУ (макс. плавающий убыток)процент просадки от средней цены позиции и его абсолют (USDT) — ключевой риск-показатель. Учтите: в тесте не считается тень минутной свечи → на реальном рынке просадка по фитилю бывает глубже.

Если в стратегии есть SL и он сработал в тесте, МПУ фиксируется по минуте SL. Высокий МПУ говорит о том, что стратегия попадала в пролив — это нормально, важно учесть в марже.

Как оценить риск ликвидации (упрощённо):

  • Изолированная маржа: ликвидация ≈ когда МПУ ≥ депозит (на практике раньше, ~75% просадки).
  • Кросс-маржа: ликвидация ≈ когда МПУ ≥ баланс счёта.

Как рассчитать маржу точнее (рекомендуем):

  1. Возьмите %МПУ из теста и максимальный фитиль % (вниз для Long / вверх для Short).
  2. Сложите: %МПУ + %макс. фитиль.
  3. Умножьте на объём позиции (депозит × плечо). Получится сумма, которую нужно держать в поддержке, чтобы избежать ликвидации.

Блок «Сделки» во вкладке «Результат» — сводка по исходам:

  • TP, SL, случаи подтяжки (отменённые сделки). Подробнее про подтяжку — в статье про режим торговли.

Часто «Всего» сделок на 1 меньше суммы TP/SL — последняя сделка не завершена в пределах периода.

Максимальное время в сделке — ищите долгие инвесты. Перейдите на «Сделки» и отсортируйте по длительности.

  • Винрейт, распределение исходов, кумулятивная прибыль по времени.
  • Позволяет быстро увидеть, когда стратегия зарабатывает и где теряет.

Вкладка "Графики"

Здесь детальный разбор каждой симулированной сделки. Таблица широкая — пролистывайте вправо. Типичные колонки: Начало/Конец, Длительность, Результат, PnL, Комиссия, МПУ/МПП, Ордеров исполнено/отменено и др.

Вкладка "Сделки"

Например:

Пример сделки

  • Зелёные стрелки — исполненные усреднения.
  • Пунктир — средняя цена позиции. Чтобы закрыться в плюс, цена должна быть выше средней — здесь сделка в инвесте.

Можно показать все сделки текущей страницы (до 100 шт.) — нажмите «Показать все». Удобно смотреть в полноэкранном (кнопка «уголки» или Shift+F).

Пример всех сделок

Листайте график влево (прошлые сделки).

Показывает все параметры протестированной конфигурации и точные даты теста.

Вкладка "Настройки"

Кнопка «РЕДАКТИРОВАТЬ БОТА» — переносит настройки в редактор: можно продолжить тюнинг, снова протестировать или сохранить бота и запускать на бирже.

  • Монета была залистена недавно — данных на ранний период нет.
  • Выбранная биржа подключена у нас позднее — может не хватать 1-минуток. Попробуйте другую биржу в тестах, а торговать — на нужной.

Проверьте Отступ первого ордера и Подтяжку.
Ситуация: бот выставил ордера строго по сигналу, но исполнились они позже. Сверьте время выставления и значения индикаторов в этот момент.
Также помните: вход — на следующей свече после срабатывания сигнала.
Если визуально «не сходится», докрутите историю свечей (см. примечание выше).

Депозит — это потолок средств под сделку, а не гарантированный объём позиции. Биржевые ограничения (минимальный ордер, шаг цены) вызывают округления, итоговый объём позиции отличается от «депозит × плечо».

4. В списке сделок «Профит», а в результатах прочерки

Заголовок раздела «4. В списке сделок «Профит», а в результатах прочерки»

Если все ордера отменены — выход был по сигналу индикатора (минимальный PnL тут не проверяется). Технически профит, но механика похожа на подтяжку. Избежать можно, если поставить отступ = 0 (Маркет).

Если ордера исполнялись — возможно, всё «упёрлось» в округление цены (много знаков после запятой) → увеличьте % TP.

Ещё вариант — комиссия биржи списывается в 3-й валюте (например, BNB) — у нас этих данных нет, поэтому в тестах/реале они не отражаются.

5. «С фильтром “Цена > 0” должны быть сделки каждую минуту, а их меньше»

Заголовок раздела «5. «С фильтром “Цена > 0” должны быть сделки каждую минуту, а их меньше»»

График рисует только сделки текущей страницы списка. Проверьте сортировку (по дате). Если с сортировкой порядок, проверьте подтяжку — она отменяет сделки. Поставьте отступ 0 (Маркет) или увеличьте % подтяжки. Отменённые сделки видны в истории.

6. «Почему %МПУ не совпадает с абсолютом, а при частичных усреднениях МПУ больше?»

Заголовок раздела «6. «Почему %МПУ не совпадает с абсолютом, а при частичных усреднениях МПУ больше?»»

%МПУ зависит от средней цены позиции на каждом шаге. Абсолют (USDT) — ещё и от объёма, который успели собрать. Мы показываем максимальный из %МПУ по всем этапам и рядом максимальный абсолют.

7. «В бэктесте сделка есть, а в реале — нет»

Заголовок раздела «7. «В бэктесте сделка есть, а в реале — нет»»

Вероятно, сработали блокировки профиля (ограничение по числу одновременных сделок). Напишите в поддержку: приложите ссылку «Поделиться» на тест, ID бота, дату и точное UTC-время расхождения — проверим.

  • Gross — суммарный результат без комиссий.
  • Net — итог с торговыми комиссиями (на этот показатель смотрим в первую очередь).
  • МПП — максимальная плавающая прибыль по сделке/тесту.
  • МПУ — максимальная плавающая просадка; ключ к оценке риска ликвидации.
  • Фитиль (тень) — экстремум внутри свечи.
  • Подтяжка — отмена неисполнённой сделки, если цена ушла слишком далеко.

Подробные разборы с примерами:

Play