Бэктесты Veles стали ещё ближе к реальной торговле
Дата публикации:
Время на чтение:

Бэктесты Veles стали ещё ближе к реальной торговле

Теперь бэктесты можно запускать на тиковых данных.

До этого момента мы вели расчёты по минутным свечам. Это абсолютно рабочая модель, но у неё есть предел точности. О нём мы и поговорим в этой статье. Всё, что происходит внутри минуты, свеча не фиксирует. Тиковые данные снимают это ограничение.

Разберём, в каких случаях это заметно и что тиковые данные меняют для стратегии.


Свеча и тик: в чём разница

Свечу можно сравнить со снимком рынка. Она показывает цену открытия, максимум, минимум и цену закрытия за период. Но не показывает, каким образом цена двигалась внутри периода.

Простой пример. Реальная минутная свеча BTC/USDT на Bybit Futures, 10 августа 2026 года, 15:13 UTC:

минутка

Ценовой параметрЗначение
Открытие64 543,1
Максимум64 579,2
Минимум64 452,8
Закрытие64 554,8

Мы видим, что минута закрылась почти там же, где открылась, — плюс 11,7 пункта. Но внутри этой минуты цена успела сходить на 36 пунктов вверх и на 90 пунктов вниз, а объём составил 579 BTC. Что произошло раньше — движение вверх или движение вниз, — свеча не сообщает. Если на этих уровнях стояли ордера, от ответа зависит исход сделки.

Тик можно сравнить с видеозаписью. Он в реальной последовательности показывает каждую сделку на бирже: цену, объём и время исполнения. Движок воспроизводит историю ровно такой, какой она была в реальности, и достраивать её допущениями больше не нужно.

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


В каких случаях порядок событий меняет исход сделки

1. Тейк и стоп на одной минуте

Самый простой случай: внутри минуты цена задела и уровень тейк-профита, и уровень стоп-лосса.

Разберём на примере той же свечи. Бот держит позицию Long по BTC/USDT:

  • средняя цена позиции — 64 500
  • тейк-профит +0,1% — 64 564,5
  • стоп-лосс — 64 455

Максимум минуты 64 579,2 задевает тейк. Минимум 64 452,8 задевает стоп. Итог сделки — плюс 0,1% или минус 0,07% — зависит от того, что случилось первым.

Как это считалось на минутных данных:

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

Отдельный случай — простой стоп-лосс по проценту и стоп-лосс по сигналу индикатора. Они работают независимо, и срабатывает тот, что наступит первым. Внутри одной минуты «первым» на свечных данных не определяется.

На тиках выбирать сценарий не нужно: порядок касаний читается напрямую.

тики

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

2. Мульти-тейки и стоп в безубыток

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

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

мультитейк

Разберём на примере той же свечи 15:13 UTC. Допустим, бот открыл позицию Long по BTC/USDT:

  • средняя цена позиции — 64 500
  • первый тейк — +0,1%, то есть 64 564,5, закрывает половину позиции
  • стоп в безубыток — от средней цены, без отклонения: 64 500

Что попадает в эту минуту:

  • максимум 64 579,2 — выше первого тейка, значит тейк задет
  • минимум 64 452,8 — ниже уровня безубытка, значит задет и он

Из одной свечи выходит два разных исхода.

Сценарий А — сначала максимум. Срабатывает первый тейк, половина позиции закрывается в плюс, сетка усреднений отменяется, выставляется стоп в безубыток на 64 500. Дальше цена уходит вниз до 64 452,8 и забирает остаток позиции по безубытку. Сделка закрыта полностью, итог — прибыль по первому тейку.

Сценарий Б — сначала минимум. Стоп в безубыток на этот момент ещё не существует: он выставляется только после первого тейка. Цена проходит 64 452,8 без последствий, затем поднимается до 64 579,2 и исполняет первый тейк. Сделка продолжается с половиной позиции и выставленным стопом.

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

Кого касается: всех, кто использует режим «Свой» с двумя и более тейками. Чем ближе тейки друг к другу, тем выше вероятность, что они схлопнутся в одну минуту.

3. Фитили и стоп-лоссы

Фитиль (тень) — это экстремум внутри свечи. По умолчанию фитили минутных свечей в расчёте не участвовали, и длинные тени не «цепляли» ордера.

Что из этого следовало:

  • Стоп-лоссов в тесте выходило меньше, чем в реальной торговле. В реальности на тени происходят усреднения, срабатывания SL и TP, в отдельных случаях — ликвидации. В тесте часть этих событий не фиксировалась.
  • МПУ (максимальная плавающая просадка) получался консервативнее реального. Просадка по фитилю на живом рынке бывает глубже той, что показывал тест.

Отсюда наша рекомендация ставить стоп-лосс примерно вдвое дальше соответствующего фитиля (p0.99) и считать маржу с запасом: %МПУ + % максимального фитиля. Это была поправка на предел точности модели.

На тиках каждое касание уровня видно как есть — вместе с моментом, когда оно произошло.

Кого касается: всех, кто торгует с фиксированным стоп-лоссом, и особенно тех, кто считает риск ликвидации по МПУ.

4. Подтяжка сетки ордеров

Подтяжка отменяет сделку, если бот выставил лимитные ордера, а цена ушла в другую сторону и первый ордер так и не исполнился.

В реальной торговле бот отслеживает уровень подтяжки по тикам. В бэктесте она считалась по цене закрытия минутной свечи. Разные методы — разный результат: цена могла достать уровень подтяжки внутри минуты и вернуться назад, и на свече это движение не отражалось.

Практический смысл: мы рекомендуем проверять в бэктесте, сколько сделок отменяется подтяжкой, — это один из основных параметров тюнинга сетки. Теперь эта проверка идёт тем же методом, что и в бою.

подтяжка

Кого касается: тех, у кого отступ первого ордера больше нуля. При отступе 0 («Маркет») подтяжка не применяется.

5. Отмена ордеров до исполнения первого

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

Кого касается: конфигураций с лимитным входом. Для обхода мы рекомендовали вход по «Маркету» с нулевым отступом.


Что это даёт на практике

  • Более точная оценка стратегии. Результат бэктеста ближе к тому, что бот покажет в живой торговле: ордера срабатывают там, где реально сработали бы, порядок исполнения внутри минуты корректный.
  • Более точная оценка риска. МПУ и статистика стоп-лоссов считаются с учётом реальных касаний уровней, а не по четырём точкам свечи.
  • Один метод расчёта в тесте и в торговле. Подтяжка, стопы и мульти-тейки моделируются тем же способом, которым работает живой бот.

Сильнее всего разница между бэктестами на свечах и бэктестами на тиках видна на стратегиях с плотной сеткой ордеров, узкими тейками и короткими таймфреймами — там, где внутри одной минуты происходит несколько событий. На стратегиях с редкими входами и широкими уровнями отличие будет минимальным.


Кому доступны тиковые данные

Бэктестирование на тиках доступно на тарифах Pro ($29/мес) и Quant ($69/мес). Данные — по Bybit Futures.

На этих же тарифах работают Market Scan и автоподбор индикаторов.


С чего начать?

Возьмите стратегию, которую уже прогоняли на свечах, и запустите её на тиках с теми же настройками и на том же периоде. Сравните число сделок, распределение TP/SL и МПУ.

Наибольшее расхождение ищите там, где тейк и стоп стоят близко, а сетка плотная, — это и есть зона, в которой свечная модель работала на пределе точности.

Запустить первый бэктест на тиках можно прямо сейчас — в разделе Бэктесты вашего личного кабинета Veles Finance. Если аккаунта ещё нет — зарегистрируйтесь и получите доступ к бэктестам, ботам и маркетплейсу стратегий.

gift box