Розробка алгоритму парної торгівлі (pairs trading) для крипторинку

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

Типова крипто-стратегія «купи та тримай» залишає вас на милість ринкових циклів. А що, як заробляти на відносній неефективності двох пов'язаних активів, не гадаючи на напрямок біткоїна? Рішення — парна торгівля (pairs trading). Це статистичний арбітраж: ми одночасно відкриваємо довгу позицію в одному активі та коротку в іншому, роблячи ставку на зближення спреду. Прибуток виникає з різниці цін, незалежно від загального руху ринку. У цій статті розберемо технічні деталі: від вибору коінтегрованих пар до калібрування динамічного hedge ratio та управління ризиками.

Багато трейдерів роблять ту саму помилку — обирають пари інтуїтивно, без статистичної перевірки. Котирування можуть здаватися пов'язаними, але без коінтеграції стратегія швидко зіллє депозит. Наш підхід базується на формальних критеріях: тест Енгла-Грейнджера, half-life спреду та ліквідність. Наприклад, зв'язка BTC spot і BTC perpetual futures показує p-value < 0.01 і half-life близько 7 днів — ідеально для парної торгівлі.

Наша команда розробляє такі алгоритми під ключ: від ідеї до готового торгового робота з дашбордом та риск-менеджментом. Досвід — 5+ років на крипторинку, 30+ впроваджених систем. Зв'яжіться з нами — оцінимо вашу ідею за 1 день.

Як вибрати пару для торгівлі?

Не всі пари підходять. Ми використовуємо такі критерії відбору:

Критерій Опис Метрика
Коінтеграція Статистична залежність, p-value < 0.05 Тест Engle-Granger або Johansen
Економічний сенс Фундаментальний зв'язок: spot vs perpetual, близькі за типом активи —
Ліквідність Мінімальний обсяг для виконання без прослизання Ковзне середнє обсягу за 24 год
Half-life Період напівповернення до середнього 3–30 днів

p-value перевіряється кожні 2–4 тижні — коінтеграція може зникнути. Актуальні пари: BTC spot vs perpetual, ETH vs stETH, SOL vs AVAX, DOT vs ATOM.

Як розраховується half-life? Half-life — це час, за який спред повертається до середнього значення на 50%. Обчислюється через логарифм відношення автокореляції: τ = -ln(2)/ln(ρ), де ρ — коефіцієнт автокореляції першого порядку спреду. Для парної торгівлі бажані значення від 3 до 30 днів.

Динамічний hedge ratio: чому фіксований не працює?

Проста OLS-регресія на повній історії дає грубу помилку. Ми використовуємо ковзне вікно (наприклад, 60 днів) або Kalman Filter для безперервного оновлення β. Kalman Filter знижує середню помилку на 40% порівняно з OLS. Різка зміна β (>20%) — сигнал про структурний зсув: алгоритм призупиняє торгівлю.

Метод Середня помилка Чутливість до викидів Вимагає налаштування
OLS з вікном 60 днів ±15% Висока Мінімальна
Kalman Filter ±8% Низька 2–3 параметри

Розмір позицій розраховується dollar-neutral:

def calculate_position_sizes(capital, hedge_ratio, price_x, price_y):
    position_value = capital / 2
    qty_y = position_value / price_y
    qty_x = qty_y * hedge_ratio
    return qty_x, qty_y

Які ризики існують та як їх мінімізувати?

Divergence risk — спред продовжує розширюватися замість звуження. Причини: делістинг, хак, регуляторні дії. Рішення: stop-loss на рівні Z-score = 3 або 4.

Funding risk — для перпетуальних ф'ючерсів funding rate з'їдає прибуток. Особливо при позитивному funding на шорт. Ми враховуємо net funding у P&L та уникаємо входу при аномально високих ставках.

Liquidity risk — одночасне закриття обох ніг може бути ускладнене при різкому русі. Використовуємо лімітні ордери з контролем slippage.

Кореляційний розрив — у періоди масових рухів (BTC dump) кореляція руйнується. Моніторимо Z-score усіх активних пар кожні N хвилин.

Як розраховується P&L та проводиться backtesting?

Реалізуємо backtest з симуляцією комісій та прослизання:

def backtest_pairs(spread, z_scores, entry_z=2.0, exit_z=0.5, stop_z=3.5):
    position = 0
    pnl = []
    for i, (spread_val, z) in enumerate(zip(spread, z_scores)):
        if position == 0:
            if z > entry_z:
                position = -1
                entry_spread = spread_val
            elif z < -entry_z:
                position = 1
                entry_spread = spread_val
        elif position == 1:
            current_pnl = spread_val - entry_spread
            if z > -exit_z or z < -stop_z:
                pnl.append(current_pnl)
                position = 0
        elif position == -1:
            current_pnl = entry_spread - spread_val
            if z < exit_z or z > stop_z:
                pnl.append(current_pnl)
                position = 0
    return pnl

Backtest показує до 30% річних при Sharpe>1.5 на історичних даних (без урахування прослизання). З нашим алгоритмом Profit Factor в середньому в 2.3 рази вищий, ніж у фіксованої стратегії.

Як проходить процес розробки алгоритму?

  1. Аналітика — збір історичних даних, перевірка коінтеграції за вибраними парами.
  2. Проектування — вибір моделі (OLS, Kalman Filter), визначення threshold entry/exit/stop.
  3. Реалізація — код на Python з бібліотеками statsmodels, pykalman, CCXT для виконання. Дашборд на Grafana.
  4. Backtest — симуляція на декількох періодах, оптимізація параметрів.
  5. Paper trading — тест на реальних даних без ризику (1–2 тижні).
  6. Деплой — запуск на VPS як daemon-процес, налаштування алертів.

Терміни: MVP — від 2 тижнів, повний цикл — до 3 місяців.

Що входить в розробку алгоритму парної торгівлі?

  • Документація: опис логіки, конфігів, інструкція з експлуатації.
  • Доступи до репозиторію (GitLab) та дашборду.
  • Навчання вашої команди (2 години онлайн).
  • Підтримка 1 місяць після запуску (виправлення багів, адаптація під нові пари).

Гарантуємо прозорість коду та можливість модифікації вашими розробниками.

Чому варто замовити розробку у нас?

  • 5+ років досвіду в крипто-алгоритмічній торгівлі.
  • 30+ впроваджень, включаючи DeFi-ботів та CEX-трендові стратегії.
  • Використовуємо лише перевірені стеки: Foundry для смарт-контрактів (якщо потрібна on-chain реалізація), Tenderly для моніторингу, Chainlink оракули для точних цін.
  • Сертифіковані Solidity-розробники (Ethereum, Polygon, Arbitrum).

Хочете такий самий алгоритм? Зв'яжіться з нами — обговоримо деталі. Алгоритм може генерувати пасивний дохід, працюючи 24/7 без вашої участі.

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

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

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1542
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1393
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1368
  • Розробка логотипу компанії B2B Advance
    Розробка логотипу компанії B2B Advance
    815
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1139