Розробка алгоритму трикутного арбітражу для криптобірж

Як працює трикутний арбітраж? [Трикутний арбітраж](https://uk.wikipedia.org/wiki/Трикутний_арбітраж) — циклічна торгівля трьома валютними парами в межах однієї біржі для отримання прибутку з цінових невідповідностей. Не потребує переказів між біржами — все відбувається на одній платформі. Ключови

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

Часті запитання

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

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

Як працює трикутний арбітраж?

Трикутний арбітраж — циклічна торгівля трьома валютними парами в межах однієї біржі для отримання прибутку з цінових невідповідностей. Не потребує переказів між біржами — все відбувається на одній платформі. Ключовий параметр: швидкість. Можливості тривають мілісекунди.

Ми розробляємо алгоритми трикутного арбітражу, які в реальному часі сканують ринкові дані та виконують угоди швидше за конкурентів. Наш досвід — 15+ років у high-frequency trading та 5+ років у криптовалютах.

Уявіть ситуацію: ціна ETH/BTC відрізняється від розрахункової через USDT на 0.1%. Це дає прибуток у кілька десятків доларів за цикл. Але таку можливість потрібно зловити за мілісекунди — інакше її забере інший бот. Ми автоматизуємо цей процес: алгоритм постійно сканує всі пари, знаходить цикли та виконує їх з мінімальною затримкою. Наші клієнти отримують готове рішення, яке працює 24/7 і приносить стабільний прибуток при низькому ризику. Зв'яжіться з нами, щоб обговорити вашу стратегію.

Принцип трикутного арбітражу

Цикл із трьох пар: A → B → C → A Приклад:

  • BTC/USDT: 45,000 (1 BTC = 45,000 USDT)
  • ETH/USDT: 3,000 (1 ETH = 3,000 USDT)
  • ETH/BTC: 0.0668 (1 ETH = 0.0668 BTC)

Теоретично: 1 ETH має коштувати 3000/45000 = 0.0667 BTC. Реально: 1 ETH = 0.0668 BTC. Невідповідність = 0.01 BTC (~$45).

Торговий цикл:

  1. Продаємо 45,000 USDT → купуємо 15 ETH (по ETH/USDT 3000)
  2. Продаємо 15 ETH → отримуємо 1.002 BTC (по ETH/BTC 0.0668)
  3. Продаємо 1.002 BTC → отримуємо 45,090 USDT (по BTC/USDT 45,000)

Profit: 90 USDT − fees. Якщо 3 × taker fee 0.04% = 0.12% ≈ 54 USDT → net profit ~$36.

Чому швидкість критична?

Трикутний арбітраж — висококонкурентна ніша. Можливості тривають 100–500ms. Ми використовуємо оптимізації:

  • Pre-computed paths: не обчислюємо цикли з нуля при кожному оновленні. Завчасно визначаємо всі можливі трійки, в реальному часі тільки перевіряємо їх прибутковість.
  • Selective monitoring: моніторимо лише топ-50 пар за об'ємом, а не всі 2000.
  • Order preparation: всі параметри ордерів обчислюються заздалегідь, відправляємо при спрацьовуванні.
  • WebSocket для всіх пар: wss://stream.binance.com/stream?streams=btcusdt@bookTicker/ethusdt@bookTicker/ethbtc@bookTicker

Пошук прибуткових циклів

Графовий підхід: будуємо граф валют, де ребра — торгові пари з вагами (log обмінних курсів). Шукаємо від'ємні цикли алгоритмом Беллмана-Форда.

import networkx as nx import math def find_arbitrage_cycles(tickers): G = nx.DiGraph() for symbol, ticker in tickers.items(): base, quote = symbol.split('/') bid = ticker['bid'] ask = ticker['ask'] if bid > 0: # base → quote: продаємо base, отримуємо quote G.add_edge(base, quote, weight=-math.log(bid)) if ask > 0: # quote → base: купуємо base, платимо quote G.add_edge(quote, base, weight=-math.log(1/ask)) # Шукаємо від'ємні цикли (прибуткові арбітражі) try: cycle = nx.find_negative_cycle(G, source='USDT') return cycle except nx.NetworkXError: return None 

Розрахунок оптимального розміру угоди

def optimal_trade_size(step1_depth, step2_depth, step3_depth, max_slippage=0.001): """ Максимальний об'єм при якому slippage не з'їдає прибуток """ # Для кожного кроку: скільки об'єму можемо взяти в межах max_slippage size1 = get_available_liquidity(step1_depth, max_slippage) size2 = get_available_liquidity(step2_depth, max_slippage) size3 = get_available_liquidity(step3_depth, max_slippage) # Мінімальне з трьох — наше обмеження return min(size1, size2, size3) 

Формула прибутковості циклу

def calculate_cycle_profit(pair1_rate, pair2_rate, pair3_rate, fee=0.001): """ Перевіряємо цикл: USDT → BTC → ETH → USDT """ # Починаємо з 1 USDT after_trade1 = (1 / pair1_rate) * (1 - fee) # USDT → BTC after_trade2 = (after_trade1 / pair2_rate) * (1 - fee) # BTC → ETH after_trade3 = after_trade2 * pair3_rate * (1 - fee) # ETH → USDT profit = after_trade3 - 1 # > 0 = profitable return profit 

Які ризики трикутного арбітражу?

  • Partial fill: один із трьох ордерів виконався частково. Виникає відкрита позиція. Потрібен обробник: негайно закрити залишок по ринку.
  • Stale data: якщо дані про ціни застаріли (> 200ms) — пропускаємо можливість.
  • API rate limits: три одночасних ордери споживають три API request. При сотнях сигналів на хвилину можна впертись в limits.
  • Front-running: маркет-мейкери бачать патерн і закривають арбітражний спред швидше за нас.

Що входить у розробку трикутного арбітражного бота?

Етап Тривалість Результат
Аналіз та вибір пар 1-3 дні Список потенційно прибуткових циклів
Проектування граф-моделі 2-5 днів Архітектура та алгоритм
Інтеграція з біржею 3-7 днів WebSocket та REST API
Реалізація виконання ордерів 5-10 днів Модуль торгівлі з контролем ризиків
Тестування (backtest + sandbox) 3-5 днів Звіт з доходності
Деплой та документація 2-4 дні Робочий бот, керівництво користувача
Підтримка після запуску 1 місяць Моніторинг та доробки
Метод пошуку Швидкість Точність Складність реалізації
Повний перебір Низька Висока Низька
Графовий (Bellman-Ford) Висока Висока Середня
Аналітичний (лінеаризація) Висока Середня Висока

Як ми гарантуємо результат?

Ми використовуємо перевірені інструменти: Python, NetworkX, Binance WebSocket API. Кожен бот проходить тестування на історичних даних та в пісочниці. Після запуску ми супроводжуємо систему протягом місяця. Досвід команди — 15+ років в алгоритмічній торгівлі та 5+ років у криптовалютах, більше 50 реалізованих проектів.

Строки та вартість

Розробка займає від 2 до 6 тижнів залежно від складності. Вартість розраховується індивідуально після аналізу стратегії. Напишіть нам — ми оцінимо ваш проект і запропонуємо оптимальне рішення.

Зв'яжіться з нами, щоб обговорити ваш трикутний арбітражний бот. Замовте розробку під ключ — отримайте готовий алгоритм з документацією та підтримкою.