EN
Все статьи

Арбитражный бот: почему большинство связок не окупает комиссии

Куда уходит спред в арбитраже: комиссии, проскальзывание, перевод средств и фандинг. Расчёт на условных числах и что бот должен проверить до входа в сделку.

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

Разберу, куда уходит спред и что поэтому должен уметь бот.

Куда уходит спред

Комиссии

Арбитраж — это минимум две сделки: купить там, где дешевле, и продать там, где дороже. Комиссия берётся с каждой. В связке «спот против фьючерса» позицию потом закрывают встречными сделками — и сделок уже четыре.

Размер комиссии зависит от площадки, оборота аккаунта и типа заявки. Рыночные заявки обычно дороже лимитных, но лимитная заявка не гарантирует исполнения, а в арбитраже решает скорость.

Проскальзывание

Цена, которую вы видите, — лучшая цена в стакане, и доступна она только на тот объём, который стоит на этом уровне. Если сделка крупнее, заявка «проедает» стакан, и средняя цена исполнения выходит хуже. Чем ниже ликвидность, тем сильнее эффект.

Перевод средств и ребалансировка

Чтобы купить на одной площадке и продать на другой, деньги и актив нужны на обеих. Сделки постепенно перекашивают балансы: на одной бирже копятся деньги, на другой — актив. Их приходится выравнивать переводами, а у переводов есть комиссия и время, за которое цена успевает уйти.

Стоимость капитала

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

Фандинг

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

Расчёт на условных числах

Числа ниже условные: реальные комиссии и спреды у каждой площадки свои. Важна механика.

Актив на площадке А стоит 100,00, на площадке Б — 100,30. Видимый спред — 0,30 %.

Статья От суммы сделки
Видимый спред +0,30 %
Комиссия за покупку на А −0,10 %
Комиссия за продажу на Б −0,10 %
Проскальзывание на обеих сторонах −0,08 %
Остаток +0,02 %

Остаток — 0,02 %, и это ещё без ребалансировки и стоимости капитала. Чуть больший объём, при котором растёт проскальзывание, или один перевод между площадками — и сделка уходит в минус. При этом в ленте она выглядела как очевидные 0,30 %.

Почему видимый спред обманчив

  • Глубина. Цена в ленте доступна на небольшой объём. Настоящий спред для вашего объёма считается по стакану, а не по последней сделке.
  • Задержка. Пока данные дошли до бота, а заявка — до биржи, цена уже другая. Спред, который видят все, забирает тот, кто быстрее.
  • Неисполненная нога. Первая сделка прошла, а вторая — нет: цена ушла, заявку отклонили, площадка перестала отвечать. Вместо арбитража у вас открытая позиция с обычным рыночным риском.

Последний пункт — главная опасность арбитража, и именно на нём видно качество бота.

Что должен уметь арбитражный бот

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

Как проверить связку до разработки

Прежде чем писать бота, стоит проверить саму связку на исторических данных — с издержками, а не по разнице цен:

  1. Собрать котировки по обеим площадкам за достаточно долгий период, а где доступно — и стаканы.
  2. Найти расхождения, которые превышали сумму издержек, и понять, на какой объём.
  3. Посмотреть, как часто они возникали и сколько держались.
  4. Учесть задержку: сколько из них реально можно было исполнить на вашей инфраструктуре.

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

Какие виды арбитража я делаю и что входит в работу — на странице «Арбитражные боты».