ArbTide

Методология: как ArbTide собирает и рассчитывает данные

Источники данных, частота обновления, нормализация ставок финансирования, формула чистого спреда арбитража, фильтры качества и известные ограничения ArbTide.

Обновлено

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

Источники данных

Биржа Тип Ставки финансирования Спотовые цены Цены бессрочных фьючерсов
Binance CEX ✓ ✓ ✓
Bybit CEX ✓ ✓ ✓
OKX CEX ✓ ✓ ✓
Bitget CEX ✓ ✓ ✓
Gate CEX ✓ ✓ ✓
KuCoin CEX ✓ ✓ ✓
MEXC CEX ✓ ✓ ✓
BingX CEX ✓ ✓ ✓
HTX CEX ✓ ✓ ✓
Kraken CEX ✓ ✓ ✓
Coinbase International CEX ✓ ✓ ✓
WhiteBIT CEX ✓ – ✓
BTSE CEX ✓ ✓ ✓
XT.COM CEX ✓ ✓ ✓
LBank CEX ✓ – –
WEEX CEX ✓ ✓ ✓
Toobit CEX ✓ ✓ –
Backpack CEX ✓ – –
BigONE CEX – ✓ –
Bitfinex CEX – ✓ ✓
Bitstamp CEX – ✓ –
BtcTurk CEX – ✓ –
CEX.IO CEX – ✓ –
Crypto.com CEX – ✓ ✓
Deepcoin CEX – ✓ ✓
DigiFinex CEX – ✓ ✓
HitBTC CEX – ✓ ✓
Revolut X CEX – ✓ –
Hyperliquid Perp DEX ✓ – ✓
Aster Perp DEX ✓ ✓ ✓
Lighter Perp DEX ✓ – –
Paradex Perp DEX ✓ – ✓
dYdX Perp DEX ✓ – –
Extended Perp DEX ✓ – ✓
Pacifica Perp DEX ✓ – –
WOOFi Pro Perp DEX ✓ – –

Подключения используют библиотеку с открытым кодом ccxt. Мы запрашиваем все рынки биржи одним пакетным вызовом, благодаря чему данные согласованы и укладываются в лимиты запросов.

Частота обновления

Данные Интервал опроса Считаются устаревшими через
Ставки финансирования 30 секунд 2 минуты
Цены бид/аск 10 секунд 45 секунд
История фандинга Сохраняется каждые 5 минут –

Страницы рендерятся на сервере при каждом запросе из данных, закешированных не более чем на 5 секунд. Открытые страницы сами обновляются в браузере каждые 15–30 секунд.

Нормализация ставки финансирования

Биржи выплачивают фандинг с разными интервалами: большинство контрактов на CEX — каждые 8 часов, некоторые — каждые 4 часа или 1 час, а DEX бессрочных фьючерсов, такие как Hyperliquid и dYdX, — каждый час. Каждая ставка приводится к одним единицам:

  • Часовая ставка = ставка финансирования ÷ интервал в часах
  • APR = часовая ставка × 8,760

Если монета торгуется на одной бирже против нескольких котируемых валют, мы сначала берем USDT, затем USDC, затем USD. Учитываются только активные линейные бессрочные контракты (с маржой в стейблкоинах).

Средняя ставка финансирования

Для каждой монеты показаны три показателя по всем биржам:

  • Средний APR взвешивается по 24h объему бессрочных фьючерсов каждого рынка в USD. Тонкий рынок с экстремальной ставкой сдвигает его лишь настолько, насколько позволяет его объем. Если объем не сообщается, используется простое среднее.
  • Медианный APR — центральное значение в ряду бирж; выбросы он полностью игнорирует.
  • Ставка в пересчете на 8h — средний APR, переведенный обратно в 8-часовую ставку финансирования (APR ÷ 8,760 × 8), для сравнения со ставкой, которую котирует большинство бирж.

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

Спред арбитража фандинга

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

Cash-and-carry

Для каждой монеты мы сопоставляем самый дешевый спотовый рынок с каждым бессрочным фьючерсом, который платит положительный фандинг, и оставляем пару с лучшей оценкой на 30 дней:

  • Базис = (бид бессрочного фьючерса − аск спота) ÷ аск спота
  • Комиссии = две комиссии тейкера на каждой ноге (открытие и закрытие)
  • Расчетная доходность = APR фандинга × дни удержания ÷ 365 + базис − комиссии
  • Безубыточность = (комиссии − базис) ÷ APR фандинга × 365 дней

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

Стоимость заимствования в обратном cash-and-carry

Обратный cash-and-carry продает спот, взятый в долг. Для этой ноги используются только биржи, которые дают спот в долг на маржинальной торговле, а монеты, помеченные как недоступные для заимствования, пропускаются. Каждые 10 минут мы считываем стандартную (не VIP) ставку заимствования на Binance, OKX и Bybit и переводим ее в APR. Она вычитается из APR фандинга: расчетная доходность = (APR фандинга − APR заимствования) × дни удержания ÷ 365 + базис − комиссии. Если спотовая биржа не публикует ставку, в качестве оценки мы берем медиану опубликованных ставок по этой монете с пометкой «оц.»; если ставку не публикует ни одна биржа, стоимость заимствования показывается как неизвестная и не вычитается.

Чистый спред ценового арбитража

Для каждой монеты и типа рынка (спот или бессрочные фьючерсы) мы проверяем каждую пару бирж и оставляем пару с самым широким спредом:

Валовой спред = (лучший бид на бирже продажи − лучший аск на бирже покупки) ÷ лучший аск

Чистый спред = валовой спред − комиссии тейкера

  • Спот: одна комиссия тейкера на каждой бирже (покупка, затем продажа).
  • Бессрочные фьючерсы: две комиссии тейкера на каждой бирже (открытие и закрытие), потому что позиция закрывается, когда цены сходятся.

Комиссии тейкера — стандартная (не VIP) ставка каждой биржи для этого рынка. Пользователи, вошедшие в аккаунт, могут указать свои ставки по каждой бирже в разделе «Аккаунт → Торговые комиссии», и тогда все чистые спреды, максимальная прибыль, оценки cash-and-carry и оповещения, которые они видят, используют эти ставки.

Максимальный размер и максимальная прибыль рассчитываются по стаканам. Каждые 20 секунд мы считываем 20 уровней обоих стаканов для 60 самых широких маршрутов и проходим их одновременно, выкупая аски и продавая в биды, пока следующий уровень не перестанет окупаться после комиссий. Максимальный размер — точка, где прибыль достигает пика, а максимальная прибыль — прибыль в этой точке за вычетом комиссии за перевод для спотовых маршрутов. Знак + означает, что считанные нами стаканы закончились раньше, чем закрылся спред, так что может поместиться больший размер. Для маршрутов вне этого набора максимальный размер берется как меньшее из количеств на лучшем аске и лучшем биде («· top»). На страницах монет также показан чистый спред после комиссий при $1,000, $10,000 и $50,000.

Стоимость перевода (спотовые маршруты)

Спотовый маршрут работает, только если монету можно вывести с биржи покупки и зачислить на бирже продажи. Каждые 30 минут мы считываем опубликованные сети каждой биржи: комиссию за вывод и то, открыты ли выводы и депозиты. Для каждого маршрута мы выбираем самую дешевую сеть, открытую для вывода на бирже покупки и для депозита на бирже продажи. Названия сетей сопоставляются между биржами (например, ERC-20, ETH и Ethereum — одна и та же сеть).

  • Перевод показывает эту сеть и ее комиссию в USD по цене покупки.
  • От $X — размер сделки, при котором комиссия равна чистому спреду. Ниже него маршрут приносит убыток.
  • Вывод закрыт, Депозиты закрыты или Нет общей сети означают, что маршрут сейчас невозможно завершить.
  • Не подтверждено означает, что биржа публикует комиссию, но не сообщает, открыта ли сеть.
  • Неизвестно означает, что биржа не публикует эти данные без ключа аккаунта. Binance, Bybit, OKX, MEXC и BingX входят в эту группу, если у нас нет для них ключа только для чтения.

Всегда проверяйте сеть и адрес на обеих биржах перед переводом средств. Маршрутам по бессрочным фьючерсам и cash-and-carry перевод не нужен, потому что обе ноги рассчитываются в марже.

Фильтры качества

Котировка используется, только если выполнены все условия:

  1. Рынок активен и котируется в USDT, USDC или USD.
  2. 24h объем составляет не менее $100,000 (для арбитража); страницы монет с объемом бессрочных фьючерсов меньше $1M не индексируются поисковыми системами.
  3. Собственная метка времени котировки на бирже не старше 60 секунд.
  4. Спред в стакане (аск − бид) меньше 2%.
  5. Для ценового маршрута обе котировки получены с разницей не более 15 секунд.
  6. Валовой спред маршрута меньше 20%. Более крупная разница почти всегда означает, что тикер используют два разных токена.

Известные ограничения

  • Стоимость перевода: комиссии за вывод публикуют лишь некоторые биржи и только за один вывод, поэтому скачки газа между считываниями не отражаются. Время перевода не моделируется, так что цены могут сдвинуться, пока средства в пути.
  • Глубина: стаканы меняются между считываниями, и считываются только 20 уровней, поэтому очень крупные ордера могут получить цены хуже показанных.
  • Время: цены получаются опросом REST, поэтому две ноги могут расходиться до 15 секунд. Некоторые биржи (Bybit, Gate, BigONE, Bitfinex, CEX.IO, Hyperliquid, бессрочные фьючерсы Aster) не публикуют метки времени котировок, поэтому задержку их данных обнаружить невозможно.
  • Котируемые валюты: рынки USDT, USDC и USD сравниваются напрямую, поэтому небольшие различия в цене стейблкоинов входят в спред.
  • Lighter не указывает интервал финансирования в API; его ставки считаются эквивалентом 8 часов.

Проверки точности

Каждые 5 минут мы сравниваем цены, показанные на ArbTide, с живым стаканом каждой биржи и публикуем результаты на странице точности данных: медиану и 95-й перцентиль расхождения по биржам, а также возраст наших котировок на момент проверки.

Исправления

Нашли число, которое выглядит неверным? Каждая страница ссылается на рынок биржи, который использует, и каждая страница доступна в виде простого markdown, если добавить .md к ее URL.

Частые вопросы

Откуда ArbTide берет данные?
Напрямую из публичных API 36 бирж: Binance, Bybit, OKX, Bitget, Gate, KuCoin, MEXC, BingX, HTX, Kraken, Coinbase International, WhiteBIT, BTSE, XT.COM, LBank, WEEX, Toobit, Backpack, BigONE, Bitfinex, Bitstamp, BtcTurk, CEX.IO, Crypto.com, Deepcoin, DigiFinex, HitBTC, Revolut X, Hyperliquid, Aster, Lighter, Paradex, dYdX, Extended, Pacifica и WOOFi Pro. Данные собираются на наших серверах, а не в вашем браузере.
Как часто обновляются данные?
Ставки финансирования запрашиваются каждые 30 секунд, а цены бид/аск — каждые 10 секунд по каждой бирже. Страницы обновляются каждые 15–60 секунд.
Как APR рассчитывается из ставки финансирования?
APR = (ставка финансирования ÷ интервал финансирования в часах) × 8,760. Так фандинг с интервалом 8 часов, 4 часа и 1 час можно сравнивать напрямую.
Как рассчитывается средний APR фандинга?
Он взвешивается по 24h объему бессрочных фьючерсов на каждой бирже, чтобы небольшие рынки с экстремальными ставками его не искажали. Рядом показаны медианный APR, а также исходная ставка и интервал каждой биржи.
Учитывает ли чистый спред все затраты?
Он учитывает комиссии тейкера. Для спотовых маршрутов рядом показана комиссия за вывод через самую дешевую открытую сеть, и она вычитается из максимальной прибыли. Максимальный размер и максимальная прибыль рассчитываются по обоим стаканам, поэтому включают проскальзывание. Фандинг, выплаченный, пока позиция по бессрочному фьючерсу открыта, не учитывается.