Расходы и исполнение

Комиссии и проскальзывание бота: полный расчёт сделки

Почему 4 USDT по ценам сигнала превращаются в 0,996 USDT после исполнения и комиссий.

Разложение результата сделки на цены исполнения и комиссии

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

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

Различайте комиссию, спред и проскальзывание

Комиссию взимает торговая площадка. Ставка может зависеть от рынка, уровня аккаунта и того, добавляет заявка ликвидность или забирает её. Проверяйте условия своего аккаунта на дату теста. Тариф из чужого примера не становится вашим тарифом автоматически.

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

Не вычитайте одну затрату дважды. Если покупка уже рассчитана по ask, а продажа по bid, соответствующий спред присутствует в разнице цен. Если цены исполнения дополнительно ухудшены, нельзя повторно списать то же ухудшение отдельной денежной строкой.

Проверьте полный расчёт одной сделки

Предположим, вымышленный бот покупает 10 единиц актива. Ориентир входа — 100 USDT, исполнение — 100,05. Ориентир выхода — 100,40, исполнение — 100,35. Для упражнения зададим комиссию 0,10% с каждой стороны, оплата в валюте котировки. Это условные цены и ставка, а не действующее предложение биржи.

По исходным ориентирам прибыль составляет 10 × (100,40 − 100) = 4 USDT. По ценам исполнения — 10 × (100,35 − 100,05) = 3 USDT. Оборот на входе равен 1 000,50, на выходе — 1 003,50 USDT. Комиссии: 1,0005 и 1,0035 USDT, вместе 2,004 USDT.

Чистый результат: 3 − 2,004 = 0,996 USDT. Разница с исходными 4 USDT составляет 3,004 USDT, или 75,1% предполагаемого преимущества. Отдельный спред здесь больше не вычитается: указанное ухудшение исполнения уже представляет принятую в примере ценовую затрату.

Сохраните такую сверку рядом с отчётом. Если суммы не сходятся, выясните валюту комиссии, округление и обработку частичных исполнений. Переход к большому числу сделок только усложнит поиск ошибки.

Постройте бюджет затрат для стратегии

Посмотрите, какой запас остаётся до исчезновения результата. В примере увеличение ухудшения на каждой стороне с 0,05 до 0,10 USDT оставляет 2 USDT прибыли по исполнениям. Суммарная комиссия при тех же условиях остаётся 2,004 USDT. Чистый итог становится −0,004 USDT.

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

Подписку и инфраструктуру учитывайте на уровне периода. Условные 30 USDT в месяц при 60 завершённых сделках дают 0,50 USDT на сделку для распределения расходов. Это не биржевая комиссия. При другом числе сделок распределённая сумма тоже изменится.

Разберитесь с допущениями симулятора

В TradingView можно задать комиссию и проскальзывание стратегии. Параметр проскальзывания выражается в тиках: для перевода в цену нужен минимальный шаг инструмента. Процент нельзя просто подставить в поле с другими единицами. У другого движка соглашения могут отличаться.

Лимитная заявка не гарантирует ни maker-комиссию, ни исполнение. Если она сразу пересекает доступную ликвидность, возможно исполнение как taker. Если ожидает в книге, касания цены свечой может быть недостаточно для реальной покупки. Запишите правило модели, вместо того чтобы выбирать самое выгодное толкование.

Для деривативов отдельно проверяют funding и стоимость заимствования, когда они применимы. Спотовый пример не подтверждает расчёт фьючерсного бота. Общую последовательность исторической проверки разбирает руководство по бэктесту.

Чек-лист перед сравнением результатов

  • Назовите исходную цену, относительно которой измеряете исполнение.
  • Сохраните количество, цену, размер и валюту комиссии.
  • Учтите обе стороны и частичные исполнения.
  • Укажите, где именно появляются спред и проскальзывание.
  • Повторите расчёт с ухудшенными затратами при тех же сигналах.
  • Отделите расходы за период от затрат на отдельную заявку.
  • Покажите валовой результат, чистый результат, оборот и исключённые расходы.

Clerix показывает процесс подготовки правил, Backtest, Paper и анализа. Публичные примеры не отправляют заявки; движки тестирования и live-исполнение находятся в разработке. Откройте возможности Clerix с проверенной сделкой и уточните, какие исходные расходы поддерживает доступный сейчас сценарий.

Частые вопросы о расходах бота

Можно везде поставить комиссию 0,10%?

Нет, здесь это учебная ставка. Проверьте биржу, аккаунт, рынок и дату. При неопределённости покажите несколько сценариев, не выбирая молча минимальную стоимость.

Лимитные заявки устраняют проскальзывание?

Они ограничивают допустимую цену, но могут не исполниться или исполниться частично. Эта неопределённость тоже должна попасть в проверку.

Отказаться от стратегии, если стресс-сценарий отрицательный?

Сначала оцените, соответствует ли сценарий рынку и объёму. Отрицательный результат помогает пересмотреть гипотезу или требования к исполнению; скрывать его нельзя.

Редакция Clerix

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

Посмотреть, как работает Clerix