Разработка prediction market: смарт-контракты, ликвидность, оракулы

Polymarket обработал более $1.5 миллиарда объёма торгов по президентским выборам в США. Механика prediction market проста: пользователи покупают shares события, цена share равна implied probability. Если событие происходит — share стоит $1. Если нет — $0. Рынок агрегирует информацию и «предсказывает

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

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

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

  • 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

Polymarket обработал более $1.5 миллиарда объёма торгов по президентским выборам в США. Механика prediction market проста: пользователи покупают shares события, цена share равна implied probability. Если событие происходит — share стоит $1. Если нет — $0. Рынок агрегирует информацию и «предсказывает» вероятности точнее большинства аналитиков. Построить такую систему технически сложно: три независимые задачи — создание рынков, поддержание ликвидности, автоматическое разрешение исходов — каждая с собственными уязвимостями. Наша команда имеет 5+ лет опыта в DeFi, реализовала более 20 блокчейн-проектов на Ethereum, Polygon и Solana. Свяжитесь с нами, чтобы обсудить вашу задачу.

Как избежать манипуляций с оракулами?

Самое уязвимое место prediction market — механизм resolution. Resolution механизм решает, наступило ли событие. Варианта три: доверенный оракул (централизация), Chainlink / UMA (зависимость от сторонних протоколов), optimistic resolution с dispute period (децентрализация, но latency). Oracle manipulation — одна из главных угроз. Chainlink быстр и надёжен для верифицируемых событий вроде крипто-цен, но не подходит для субъективных исходов (выборы, опросы). UMA Optimistic Oracle гибкий и подходит для любых событий, однако разрешение занимает 2–3 дня при dispute. Centralized multisig быстр и прост, но требует доверия и несёт репутационный риск. В нашей реализации для каждого типа рынка выбирается подходящий механизм. Для crypto price рынков — Chainlink. Для субъективных событий — UMA Optimistic Oracle. Multisig — только fallback при failure других механизмов.

Почему ликвидность — главная проблема prediction market?

Prediction markets традиционно используют два подхода к ликвидности: CLOB и AMM. CLOB позволяет пользователям выставлять limit orders, обеспечивая точные цены и минимальный slippage при достаточной ликвидности, однако новые рынки без ликвидности остаются пустыми. AMM через формулу всегда принимает сделки, но протокол может нести убытки, субсидируя ликвидность. Наш подход — Hybrid: начальная ликвидность через protocol-seeded AMM, CLOB для крупных трейдеров. AMM использует constant product формулу, адаптированную для бинарных исходов, LP positions выступают как automated market makers.

Токен стандарт для shares: ERC-1155

Каждый рынок имеет минимум два outcome токена (YES/NO, или несколько для multi-outcome). ERC-1155 — правильный выбор: один контракт управляет токенами всех рынков, batch transfer снижает gas при торговле несколькими рынками одновременно. При создании рынка минтятся conditional tokens: за каждый 1 USDC коллатераля создаётся 1 YES + 1 NO токен. Суммарная стоимость YES + NO = 1 USDC (до resolution). После resolution один из токенов = 1 USDC, другой = 0. Это паттерн Gnosis Conditional Tokens Framework — battle-tested библиотека для prediction markets. Мы строим поверх CTF, а не с нуля.

Архитектура системы

Контрактный слой

Компонент Назначение
MarketFactory Создаёт новые рынки. Параметры: question, resolution source, expiry, initial liquidity. Разворачивает AMM пул для каждого нового рынка.
ConditionalTokens (CTF) Gnosis открытый контракт для выпуска conditional tokens. Проверен множеством аудитов, имеет production историю на Polymarket.
FixedProductMarketMaker (FPMM) AMM контракт для каждого рынка. Использует constant product формулу адаптированную для N-исходов. LP providers добавляют ликвидность, получают LP shares, зарабатывают на trading fees.
ResolutionModule Управляет resolution процессом. Интегрируется с Chainlink / UMA, обеспечивает dispute механизм.
TreasuryManager Протокол берёт комиссию (0.5-2%) от каждого трейда. Управляет protocol reserves, которые используются для первоначального seeding ликвидности новых рынков.

Создание рынка и initial liquidity

Bootstrapping ликвидности — одна из сложнейших задач. Стратегия: Protocol-seeded markets — популярные рынки (выборы, крипто events) — protocol добавляет начальную ликвидность из treasury. LP shares остаются у protocol. User-created markets — любой может создать рынок, задепозировав initial liquidity. Это incentivize market creators — они получают trading fees от своего рынка. Conditional liquidity rewards — LPs в первые N дней после создания рынка получают дополнительные governance токены. Аналог Uniswap liquidity mining.

Gas оптимизация для Polygon / L2

Prediction markets работают на L2 — газ на Ethereum mainnet делает мелкие сделки ($10-50) экономически невыгодными. Polygon — исторический выбор Polymarket. Alternatives: Base, Arbitrum. На L2 газ стоит в 10-100x раз дешевле. ERC-1155 batch transfer снижает gas на 40-60% при торговле несколькими токенами одновременно. multicall паттерн для batch операций.

Процесс разработки

Подробнее о этапах
  1. Аналитика (5–7 дней). Определение типов рынков, resolution механизмов для каждого типа, токеномики протокола. Изучение Polymarket, Augur, Metaculus как референсов.
  2. Разработка контрактов (5–8 недель). CTF интеграция или кастомная реализация, FPMM логика, resolution модули. Тестирование через Foundry: fork-тесты, fuzz-тесты на AMM инварианты (sum of probabilities = 1).
  3. Resolution интеграции (2–3 недели). Chainlink для верифицируемых событий, UMA Optimistic Oracle для субъективных.
  4. Frontend (3–5 недель). Интерфейс создания рынков, trading UI, portfolio, resolution tracking. wagmi + viem для контрактных взаимодействий.
  5. Аудит (обязателен). Сложность conditional tokens логики и потенциальный объём средств — обязательный внешний аудит.

Типичные ошибки в prediction market

  • Неправильный resolution без dispute механизма. Rogue оракул может разрешить рынок в пользу одного исхода при спорном результате. Без dispute mechanism у пользователей нет recourse.
  • Infinite approval exploit. Если UI запрашивает infinite approve на CTF контракт, а в нём обнаружится уязвимость — атакующий может дренировать все approval. Ограниченные approve или EIP-2612 permit.
  • Front-running при resolution. Между submission результата оракулом и его on-chain обработкой — window для front-running. Commit-reveal схема или VDF (Verifiable Delay Function) для критических рынков.

Условные токены (conditional tokens) — это набор контрактов от Gnosis, реализующих логику conditional tokens. Пользователь вносит коллатераль (USDC) и получает набор outcome-токенов. При наступлении события один из токенов становится redeemable за $1, другие обесцениваются. Фреймворк обеспечивает атомарность операций и безопасное разрешение.

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

  • Разработка смарт-контрактов (Solidity, Foundry)
  • Интеграция Chainlink и UMA оракулов
  • Создание frontend на wagmi/viem
  • Развёртывание на Polygon/Arbitrum/Base
  • Документация кода и техническая спецификация
  • Обучение команды заказчика управлению рынками
  • Поддержка после запуска (2 месяца)

Оценим ваш проект за 2 дня. Свяжитесь с нами для консультации. Закажите разработку prediction market под ключ.

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

Тип продукта Сроки
MVP (бинарные рынки, Chainlink, базовый AMM) 6–8 недель
Полноценная платформа (UMA, user-created markets, CLOB) 2–4 месяца

Стоимость рассчитывается индивидуально.