Розробка алгоритму basis trading (спот-ф'ючерс)

Проєктуємо та розробляємо блокчейн-рішення повного циклу: від архітектури смарт-контрактів до запуску DeFi-протоколів, NFT-маркетплейсів та криптобірж. Аудит безпеки, токеноміка, інтеграція з наявною інфраструктурою.
Показано 1 з 1Усі 1306 послуг
Розробка алгоритму basis trading (спот-ф'ючерс)
Складний
~1-2 тижні
Часті запитання

Напрямки блокчейн-розробки

Етапи блокчейн-розробки

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1288
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1198
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    902
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1122
  • image_logo-advance_0.webp
    Розробка логотипу компанії B2B Advance
    589
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    859

Розробка алгоритму basis trading (спот-фьючерс)

Basis trading — одна з небагатьох DeFi-стратегій з передбачуваним джерелом доходу. Купуєш ETH спот, одночасно шортишь ETH perpetual фьючерс на тому ж обсягу. Дельта-нейтральна позиція. Funding rate на perpetual — твій дохід. Коли ринок бичачий, лонги платять шортам. У 2021-2023 роках це давало 20-60% APY без directional ризику.

Звучить просто. Але реалізація, що працює без втрат при різких рухах ринку, negative funding та margin calls — це інженерна задача.

Джерела ризику, які ломають прості реалізації

Funding rate розвертається

Funding rate на Binance Perp, dYdX, GMX, Hyperliquid — змінна величина. На бичачому ринку лонги платять шортам (positive funding, отримуєш). На ведмежому — навпаки (negative funding, платиш). Якщо твій алгоритм не уміє виходити з позиції при зміні режиму, negative funding буде з'їдати тіло.

Реалізація: threshold на negative funding rate. Якщо 8-часовий funding йде нижче -0.01% три періоди підряд — алгоритм починає закриття позиції. Не мгновенне (щоб не рухати ринок), а TWAP-виходом за кілька годин.

Ліквідація шорт-позиції при pump

Дельта-нейтральність — мантра, що ломається при екстремальних рухах. ETH виріс на 30% за годину. Твій шорт на perpetual втрачає маржу швидше, ніж ти встигаєш дозаказати залог. Якщо margin ratio падає нижче liquidation threshold — позиція примусово закривається. Спот залишається. Ти з дельта-нейтрального переходиш в дельта-лонга з убитком від ліквідації (зазвичай 0.5-1% від позиції як liquidation fee).

Рішення — буфер маржі. Тримати margin ratio на perpetual не у liquidation threshold, а з 2-3x запасом. При пампі — автодопповнення маржі зі спот-гаманця або закриття частини спот-позиції. Алгоритм слідкує за unrealizedPnL та marginRatio у реальному часі та діє до того, як біржа запустить примусову ліквідацію.

Roll management на dated futures

Якщо використовуєш dated futures (а не perpetuals), позиція закінчується. За 3-7 днів до експірації потрібна "ролювання": закрити поточний контракт та відкрити наступний. Різниця в ціні між ними — roll yield (може бути позитивною або негативною).

Автоматичний ролловер вимагає: моніторингу часу до експірації, розрахунку вартості ролла, виконання двох ордерів атомарно (або максимально близко за часом). На CEX це relative order: продати поточний та купити наступний через calendar spread order, якщо біржа підтримує (Binance, CME crypto). Якщо немає — ризик проскальзування між двома окремими ордерами.

Як будуємо алгоритм

Вибір площадок

Площадка Тип Funding Особливості
dYdX v4 Perpetual DEX 8h Децентралізований, Cosmos-based
GMX v2 Perpetual DEX Hourly rate Без orderbook, PnL проти LP пула
Hyperliquid Perpetual DEX 8h Висока ліквідність, власний L1
Binance Perp CEX 8h Найбільший обсяг, зрілий API
Bybit CEX 8h Гарна ліквідність alt-perps

Для чистого DeFi підходу: спот на Uniswap V3, шорт на dYdX v4 або Hyperliquid. Для максимальної ліквідності та стабільності — Binance спот + Binance Perp (CEX ризик, але мінімальний slippage).

Розрахунок funding PnL

# Funding за період = notional * funding_rate
# funding_rate на більшості бірж — 8-hourly
funding_8h = position_size_usd * funding_rate_current
annualized_apy = funding_8h * 3 * 365  # 3 періоди на день, 365 днів

# Чистий APY з урахуванням roll та комісій
net_apy = annualized_apy - entry_exit_fees - borrow_cost - roll_cost

Алгоритм рахує net_apy для кожної потенційної позиції та входить тільки вище порога (наприклад, 15% APY після всіх витрат).

Execution engine

Відкриття позиції — не один ордер. Це скоординована дія:

  1. Перевірити доступну ліквідність на perpetual (bid/ask spread < threshold)
  2. Виставити limit ордер на спот (або market з мінімальним slippage)
  3. Одразу після виконання спот — виставити шорт на perpetual на тому ж обсягу
  4. Якщо perpetual не виконався за N секунд — закрити спот, почати заново

Розбіжність між виконанням спот та perpetual створює тимчасовий directional ризик. На ліквідних парах (BTC, ETH) — мілісекунди. На менш ліквідних альткойнів — секунди, і різниця цін може бути значимою.

Використовуємо WebSocket з'єднання з біржами для отримання fills у реальному часі. REST API для виставлення ордерів занадто повільний при активному ринку.

Моніторинг позиції

Критичні метрики для відстеження у реальному часі:

  • delta = спот позиція + perpetual позиція (повинна бути ~0)
  • margin_ratio perpetual (alert при приближенні до 150% від liquidation threshold)
  • funding_rate поточна та 7-денне ковзне середнє
  • funding_received_cumulative vs fees_paid_cumulative — actual PnL

PostgreSQL для історії. TimescaleDB для time-series даних (funding rates, ціни). Grafana для дашборда. PagerDuty або Telegram для алертів при приближенні margin call.

Орієнтири за часом

Алгоритм для однієї торгової пари на двох CEX (спот + perp) з базовим моніторингом — 1-1.5 тижня. З multi-pair, multi-exchange логікою, автоматичним roll management та повнофункціональним risk management — 2-3 тижні. Інтеграція з on-chain DEX perpetuals (dYdX, GMX) добавляє складність — окрема оцінка. Вартість розраховується після уточнення біржевих інтеграцій та вимог до ризиків.