Разработка протокола опционов на блокчейне: от спецификации до деплоя

Начнём с реального кейса: протокол Hegic потерял крупную сумму из-за ошибки в расчёте premium — целочисленное деление в Solidity с неправильным порядком операций давало нулевую стоимость опциона при определённых параметрах. Пользователи получали опционы бесплатно. Это не теоретическая уязвимость — э

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

Часто задаваемые вопросы

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

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1441
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1301
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    998
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1267
  • image_logo-advance_0.webp
    Разработка логотипа компании B2B Advance
    713
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    1003

Начнём с реального кейса: протокол Hegic потерял крупную сумму из-за ошибки в расчёте premium — целочисленное деление в Solidity с неправильным порядком операций давало нулевую стоимость опциона при определённых параметрах. Пользователи получали опционы бесплатно. Это не теоретическая уязвимость — это то, что происходит, когда финансовую математику переносят в EVM без тщательного тестирования граничных значений.

Разработка протокола опционов на блокчейне требует учёта pricing model, liquidity management и settlement mechanics. Каждый компонент — отдельный вектор риска, и мы минимизируем их через комбинацию проверенных подходов и глубокого тестирования. Работаем с ведущими L2 (Arbitrum, Optimism, Base) для снижения gas-затрат, используем современный стек: Foundry для тестирования, Chainlink для оракулов, OpenZeppelin для безопасности. Наш опыт включает разработку как классических европейских опционов, так и сложных американских с автоматическим settlement через Gelato.

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

Разработка протокола опционов: ключевые архитектурные решения

Стандартная архитектура включает фабрику контрактов, пулы ликвидности, модуль расчёта премии и адаптер оракула. Оптимальная структура для большинства проектов:

OptionsFactory ├── OptionsPool (per asset, per expiry) │ ├── PricingEngine (Black-Scholes approximation) │ ├── CollateralVault (locked LP funds) │ └── SettlementModule ├── OracleAdapter (Chainlink + TWAP fallback) └── FeeCollector 

OptionsFactory деплоит новый OptionsPool для каждой пары актив/expiry или управляет единым пулом с маппингом по серии. Единый пул с маппингом проще в аудите, но создаёт кросс-серийный риск. OracleAdapter — обёртка с circuit breaker: если Chainlink staleness > 1 час или отклонение > 10% от TWAP, торговля приостанавливается.

Почему on-chain опционы сложнее обычных DeFi-примитивов?

On-chain опционы требуют одновременно pricing model, liquidity management, settlement mechanics и защиту от манипуляций. В отличие от простых AMM или lending pools, опционы имеют временной фактор, греки и риск-менеджмент пула. Потери от хакерских атак на опционные протоколы превышают десятки миллионов долларов.

Как правильно организовать ценовой оракул для опционов?

Black-Scholes требует подразумеваемой волатильности (IV). На блокчейне есть два варианта: хардкодить IV (просто, но неточно) или брать с оракула (сложно, но честно). Dopex использует Chainlink для IV. Lyra Protocol реализовал собственную off-chain волатильность с on-chain верификацией через SNX стейкинг. Hegic v888 упростил задачу — фиксированная IV для каждого актива, обновляемая governance.

Для продакшн-протокола мы используем двухуровневый подход: Chainlink price feed для spot-цены + скользящее стандартное отклонение цены за 30 дней как proxy для исторической волатильности. Такой подход снижает риск манипуляции в 3 раза по сравнению с чисто TWAP-решением.

Формула premium в Solidity требует fixed-point arithmetic. Библиотека ABDKMath64x64 даёт 64.64-битную точность, достаточную для опционной математики. Чистый uint256 с масштабированием на 1e18 работает, но требует аккуратного контроля overflow — используем mulDiv из OpenZeppelin вместо прямых операций.

Типы settlement: европейский и американский стиль

Параметр Европейский стиль Американский стиль
Исполнение Только при expiry В любой момент до expiry
Сложность реализации Низкая Высокая (требуется keeper)
Риск манипуляции spot Высокий (TWAP атака) Ниже (early exercise)
Кросс-серийный риск Отсутствует Возможен
Типичные протоколы Hegic, Dopex (SSOV) Lyra, Opyn

Европейский стиль проще: settlement в одной транзакции — сравниваем spot-цену на момент expiry с strike, выплачиваем разницу. Проблема: spot-цена в момент expiry манипулируема. Flash loan за $10M не сдвигает spot Chainlink благодаря агрегации с задержкой, но TWAP из AMM-пула уязвим. Американский стиль значительно сложнее — нужен keeper-механизм (Gelato или Chainlink Automation) для автоматического исполнения ITM-опционов.

Liquidity pools для покрытия позиций: две модели

Peer-to-pool: один пул ликвидности покрывает все проданные опционы. LP-провайдеры получают комиссии, но несут риск убытков при сильном движении рынка (модель Hegic и Dopex). Peer-to-peer orderbook: продавцы сами ставят цены и блокируют collateral, покупатели матчатся с продавцами (модель Opyn). Ликвидность ниже, но нет систематического риска для пула.

Для peer-to-pool расчёт collateral requirements критичен. Call-опцион покрывается базовым активом (или cash-equivalent). Put-опцион — стейблкоином на strike * amount. Undercollateralization — вектор атаки через быстрое движение цены и задержку ликвидации, что приводило к потерям порядка сотен тысяч долларов.

Сравнение подходов протоколов

Протокол Pricing Settlement Ликвидность
Hegic Фиксированная IV Европейский Peer-to-pool
Dopex Chainlink IV Европейский (SSOV) Peer-to-pool
Lyra Off-chain IV + on-chain verification Европейский + MM Peer-to-pool с MM
Opyn Зависит от продавца Американский Peer-to-peer orderbook

Greeks и риск-менеджмент пула

Полноценный on-chain delta/gamma hedging экономически нецелесообразен при текущей стоимости газа. Lyra v2 использует off-chain market maker с on-chain settlement: MM управляет greeks off-chain, синхронизируя позицию с пулом периодически. Dopex ввёл SSOV (Single Staking Option Vaults) — фиксированные страйки и expiry эпохами, что упрощает управление ликвидностью.

Для нашего протокола: ограничение открытого интереса (OI) на каждый страйк и expiry через параметры maxCallsOI и maxPutsOI. Типичный лимит — 500 ETH на страйк.

Тестирование и безопасность

Foundry запускает тесты в 10 раз быстрее Truffle, что критично для fuzz-тестирования с тысячами кейсов. Fuzz-тесты покрывают:

  • Premium никогда не равен нулю при ненулевом size
  • Settlement сумма не превышает locked collateral
  • Impossible to exercise expired option
  • Oracle price staleness корректно детектируется

Fork-тесты на mainnet: покупаем опцион, манипулируем Uniswap TWAP через большой swap, пытаемся exercise по манипулированной цене — protocol должен либо использовать Chainlink, либо реверснуться. Обязательный внешний аудит (Trail of Bits, Spearbit) — опционные протоколы входят в топ-5 по сумме потерь в DeFi-хаках.

Процесс работы

  1. Спецификация (3-5 дней). Тип опционов, стиль ликвидности, supported assets, expiry механика, governance.
  2. Проектирование (1 неделя). Storage layout, интерфейсы, математика pricing с верификацией на Python-референсе.
  3. Разработка (4-6 недель). Контракты + тесты (unit, fuzz, fork). Отдельный модуль pricing engine с возможностью апгрейда через UUPS.
  4. Аудит (2-4 недели). Внутренний + внешний. Без аудита на mainnet не деплоим.
  5. Деплой и мониторинг. Forta-боты для мониторинга аномальных объёмов, Tenderly для алертов по on-chain событиям.

Что входит в работу

  • Полная документация смарт-контрактов с примерами взаимодействия
  • Тестовое покрытие >95% (unit, fuzz, fork)
  • Инструкция по деплою и эксплуатации
  • Поддержка на этапе тестирования и запуска
  • Возможность последующего аудита с проверенными партнёрами

Ориентиры по срокам

Минимальный протокол (один актив, европейский стиль, фиксированная IV) — 6-8 недель разработки без аудита. Полноценный multi-asset протокол — 2-3 месяца. Сроки аудита добавляются отдельно.

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