Разработка протокола опционов на блокчейне

Проектируем и разрабатываем блокчейн-решения полного цикла: от архитектуры смарт-контрактов до запуска DeFi-протоколов, NFT-маркетплейсов и криптобирж. Аудит безопасности, токеномика, интеграция с существующей инфраструктурой.
Показано 1 из 1 услугВсе 1306 услуг
Разработка протокола опционов на блокчейне
Сложная
от 2 недель до 3 месяцев
Часто задаваемые вопросы
Направления блокчейн-разработки
Этапы блокчейн-разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1258
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1170
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    873
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1092
  • image_logo-advance_0.png
    Разработка логотипа компании B2B Advance
    563
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    830

Разработка протокола опционов на блокчейне

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

On-chain опционы сложнее большинства DeFi-примитивов: здесь одновременно нужны pricing model, liquidity management, settlement mechanics и защита от ценовых манипуляций. Каждый компонент — отдельный вектор риска.

Ключевые технические проблемы протокола опционов

Pricing на блокчейне: проблема волатильности

Black-Scholes требует подразумеваемой волатильности (IV). IV — динамическая величина, она меняется ежеминутно. На блокчейне у вас два варианта: хардкодить IV (простой, но неточный) или брать с оракула (сложно, но честно).

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

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

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

Settlement: европейский vs американский стиль

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

Американский стиль (исполнение в любой момент до expiry) — значительно сложнее. Нужен keeper-механизм или пользователь сам вызывает exercise(). Если exercise выгодно, но пользователь забыл — он теряет деньги. Опционные протоколы решают это через Gelato Network или Chainlink Automation для автоматического исполнения ITM-опционов перед expiry.

Liquidity pools для покрытия позиций

Протокол может работать в двух моделях:

Peer-to-pool. Один пул ликвидности покрывает все проданные опционы. Ликвидность добавляют LP-провайдеры в обмен на комиссии. Риск: если рынок сильно двигается против позиций пула — LP несут убытки. Это то, как работает Hegic и Dopex.

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

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

Архитектура протокола

Контракты и их взаимодействие

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 час или deviation > 10% от TWAP — торговля приостанавливается. Это защита от оракульных манипуляций и черных лебедей в данных.

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 фиксированные эпохами, что упрощает управление ликвидностью и hedging.

Для нашего протокола: ограничение открытого интереса (OI) на каждый страйк и expiry через параметры maxCallsOI и maxPutsOI. Это не идеальный hedging, но предсказуемо ограничивает риск пула.

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

Fuzz-тесты в Foundry покрывают:

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

Fork-тесты на mainnet: покупаем опцион, манипулируем Uniswap TWAP через большой swap, пытаемся exercise по манипулированной цене — protocol должен либо использовать Chainlink, либо реверснуться.

Перед деплоем — обязательный внешний аудит. Опционные протоколы входят в топ-5 по сумме потерь в DeFi-хаках. Code4rena contest или прямой аудит в Trail of Bits, Spearbit.

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

Спецификация (3-5 дней). Тип опционов (call/put, европейский/американский), стиль ликвидности (peer-to-pool/P2P), supported assets, expiry механика, governance.

Проектирование (1 неделя). Storage layout всех контрактов, интерфейсы, математика pricing с верификацией на Python-референсе перед имплементацией в Solidity.

Разработка (4-6 недель). Контракты + тесты (unit, fuzz, fork). Отдельный модуль для pricing engine с возможностью апгрейда через UUPS — модели оценки меняются.

Аудит (2-4 недели). Внутренний + внешний. Для mainnet деплоя без аудита не работаем.

Деплой и мониторинг. Forta-боты для мониторинга аномальных объёмов, Tenderly для алертов по on-chain событиям.

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

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