icon_install_ios_web icon_install_ios_web значок_установки_android_web

Подробный обзор технологии, лежащей в основе Polymarket

Анализ1 неделя назадreleased 6086см...
61 0

Оригинальная статья автора Павел Найданов

Составлено Odaily Planet Daily Golem ( @веб3_голем )

Подробный обзор технологии, лежащей в основе Polymarket

Примечание редактора: Polymarket привлек к себе больше внимания на этих выборах в США не только потому, что совокупный объем транзакций по теме предсказаний превысил 3,6 млрд долларов США, но и потому, что он успешно предсказал победу Трампа заранее по сравнению с опросами и традиционными СМИ, что позволило людям лучше понять, что Polymarket — это не просто сайт для ставок, а станет более достоверным и надежным новостным сайтом (рекомендуется к прочтению: Новая статья Виталика: От рынка прогнозов к информационным финансам ). Polymarket, возможно, является самым прекрасным примером в этом раунде инноваций в сфере блокчейна.

Итак, как технически реализован Polymarket, имеющий значение блокчейн-революции? Разработчик смарт-контрактов Павел Найданов сделал подробный анализ и объяснение технологии, используемой Polymarket, что имеет просветительское значение для разработчиков (особенно восходящих звезд, которые создают рынки предсказаний). Odaily Planet Daily составил часть, касающуюся технической реализации, следующим образом. Далее давайте углубимся в технические детали каждого аспекта протокола.

КИТ: ТокенРезультаты

Все результаты событий на Polymarket токенизированы:

  • Такие токены можно назвать токенами акций;

  • Акции приобретаются за счет базовых активов, поэтому они полностью обеспечены;

  • Акции могут быть проданы для получения базового актива.

Токен общего доступа — это реализация ERC-1155, основанная на Структура условного токена Gnosis (CTF) , доказавший свою эффективность и протестированный с использованием множества протоколов. CTF может поддерживать до 256 результатов на событие.

Каждое предсказание идентифицируется в CTF путем присвоения уникального идентификатора условия, состоящего из хэша трех параметров:

  • Оракул : Адрес оракула, который определит исход события. Это гарантирует, что только указанный оракул может урегулировать предсказание.

  • Вопрос ID : Идентификатор прогноза, установленный создателем вопроса прогноза. Это может быть простой счетчик, где каждое новое прогнозирование увеличивает предыдущее, или более сложная схема, использующая хэши текста и других данных;

  • результатSlotCount : Количество возможных результатов для прогнозирования.

Следующая диаграмма наглядно показывает, как работает CTF (Conditional Token Framework):

Подробный обзор технологии, лежащей в основе Polymarket

Пользователи предоставляют базовый актив при размещении ставки и получают токен Share, который в CTF называется условным токеном. После того, как оракул подтвердит прогноз, пользователи могут получить вознаграждение от CTF на основе результатов прогноза.

Когда пользователь получает условный токен, считается, что он принял определенную позицию. В CTF позиция представляет собой набор возможных комбинаций результатов для каждого прогноза. CTF генерирует эти позиции для каждого прогноза, и каждая позиция соответствует одной из возможных комбинаций результатов, которую может выбрать пользователь.

Например:

Какой фильм станет самым кассовым в 2024 году?

  • Изнанка 2

  • Дэдпул 3

  • Джокер 2

  • Гадкий Я 4

  • Дюна 2

  • Безумный Макс 4

  • другой

Пользователи могут проголосовать за то, что «Головоломка 2» станет самым кассовым фильмом, или за то, что «Дюна 2» станет defiконечно, не станет самым кассовым фильмом 2024 года. Эта комбинация прогнозов будет считаться их позицией.

CTF предоставляет два интересных механизма для обработки позиций: разделение и слияние . Механизм разделения позволяет разделить одну позицию на несколько отдельных результатов, в то время как слияние объединяет разные результаты в одну позицию. Эти механизмы позволяют пользователям гибко управлять своими позициями.

CTF предоставляет Polymarket четыре важных преимущества:

  • Токены обмена могут использоваться для подтверждения голоса пользователя по конкретному результату прогноза;

  • Реализована гибкая система объединения голосов пользователей по различным позициям;

  • На основании сигнала оракула ответственность за расчет результата делегируется CTF;

  • Вознаграждения рассчитываются на основе количества токенов Share в выигрышном результате.

Стоит также отметить, что CTF позволяет организовывать связанные активности, в которых позиции пользователей могут быть объединены. Однако на данный момент на Polymarket таких примеров нет. Чтобы узнать больше информации о CTF вы можете найти здесь возьми в официальной документации .

Механизм заказа

Подробный обзор технологии, лежащей в основе Polymarket

Для совершения покупок интерфейс Polymarket предлагает три типа заказов:

  • Рынок — купить немедленно по текущей рыночной цене;

  • Лимит – отложенный ордер, позволяющий указать цену, по которой будет совершена покупка;

  • AMM — покупка по цене, которая определяется автоматически, аналогичной цене на децентрализованных биржах, исходя из объема резервов в пуле.

В настоящее время функционал заказа AMM, похоже, неактивен, и не найдено никаких прогнозов, которые позволили бы совершать покупки через AMM. Комментарий пользователя в Polymarket Discord в некоторой степени объясняет ситуацию.

Подробный обзор технологии, лежащей в основе Polymarket

AMM устарели

По данным Polymarket документация , AMM разрабатываются как часть Структура условного токена смарт-контракт. Таким образом, AMM используются для определения цены покупки токенов Share. Этот базовый механизм требует ликвидности для обеспечения стабильного ценообразования и снижения волатильности. Поставщикам ликвидности нужны экономические стимулы для получения вознаграждений от каждой покупки, чтобы поддерживать работу системы.

Вероятно, изначально Polymarket был полностью основан на CTF, используя AMM для определения цен. Но со временем протокол разработал гибридное решение с книгой ордеров, и два других типа ордеров (лимитный и рыночный) начали работать над этим пользовательским решением. Это решение называется CLOB (Central Limit Order Book) или BLOB (Binary Limit Order Book).

КЛОБ и КАПЛЯ

CLOB (центральная книга лимитных ордеров) или BLOB (бинарная книга лимитных ордеров) — это система, представляющая собой гибридную децентрализованную книгу ордеров, в которой выделенные операторы занимаются сопоставлением ордеров и инициируют выполнение смарт-контрактов.

Если не вдаваться в подробности, то система выглядит следующим образом:

Подробный обзор технологии, лежащей в основе Polymarket

Пользователь создает заказ для исполнения, который может быть лимитным или рыночным; оператор сопоставляет заказ пользователя и инициирует исполнение на смарт-контракте. Создание заказа означает создание структуры данных, подписанной закрытым ключом пользователя в соответствии с ЭИП-712 стандарт. Поскольку ордера хранятся вне сети до исполнения, условия ордера можно быстро и бесплатно скорректировать или даже полностью отменить.

Однако все, что связано с книгами заказов и сопоставлением заказов, может быть доступно только через API. Для удобства Polymarket предоставляет два клиента: один с использованием JavaScript и один с использованием Питон .

Однако, биржа.sol Смарт-контракт является публичным и отвечает за создание позиций пользователей в CTF. Он также позволяет управлять позициями пользователей и передавать активы между ними, обеспечивая безопасность и прозрачность в рамках протокола.

Подробный обзор технологии, лежащей в основе Polymarket

Смарт-контракт прошел аудит и аудиторский отчет прикреплен к репозиторию.

Смарт-контракты

The Обмен У смарт-контракта на самом деле есть более конкретное название, CTFExchange.sol . Он не очень большой, всего около 100 строк кода, но в нем много зависимостей.

Подробный обзор технологии, лежащей в основе Polymarket

Большинство из них представляют собой небольшие смарт-контракты, реализующие ограниченную функциональность:

  • BaseExchange.sol : абстрактный смарт-контракт, реализующий возможность получения токенов ERC-1155, а также отвечающий за предотвращение атак с повторным входом;

  • Аутент.sol : Менеджер ролей, определяет функции аутентификации и модификаторы для установки ролей администратора и оператора CTFExchange.sol;

  • Активы.sol : определяет два типа активов: базовые активы (обеспечение) и адреса CTF;

  • Плата.соль : определяет протокольные сборы;

  • Pausable.sol : определяет возможность приостановки операций смарт-контракта, централизованной формы соглашения протокола в случае непредвиденных обстоятельств. Доступно только для роли администратора;

  • AssetOperation.sol : определяет операции с базовыми активами и CTF, включая перевод позиций, разделение и слияние;

  • Подпись.sol : определяет код для подписи пользователя, используемый при проверке заказа;

  • Хеширование.sol : определяет хеш-значение параметров заказа для проверки подписи;

  • Реестр.sol : Определяет процесс регистрации прогнозов в системе и регистрации токенов для прогнозов.

Все, что касается фактического исполнения заказа, реализовано в смарт-контракте. Торговля.соль . Также просто пройтись по коду и изучить смарт-контракт. Структура четко определяет точку входа через функцию:

  • fillOrder() — исполняет ордер между пользователем, создавшим ордер, и отложенным ордером (другим ордером), выбранным пользователем;

  • fillOrders() — то же, что и fillOrder(), но для списка заказов;

  • matchOrders() — оператор выбирает два разных заказа и выполняет их.

Все вышеперечисленные функции могут быть вызваны только оператором.

Подробный обзор технологии, лежащей в основе Polymarket

Независимо от того, как вызов поступает в смарт-контракт, результат всегда один и тот же: два пользователя обменяются токенами в соответствии со своими заказами.

Плата за соглашение

Комиссии взимаются на основе выходного актива. Для бинарных предсказаний комиссии симметричны, то есть: если пользователь продает токен по $0.99, он заплатит ту же комиссию, что и покупатель, покупающий токен по $0.01.

Формула расчета очень проста, взята из официальная документация :

Подробный обзор технологии, лежащей в основе Polymarket

Программа вознаграждений за ликвидность

Общая цель программы — стимулирование ликвидности рынка.

Для работы биржи на основе книги ордеров кто-то должен создавать лимитные ордера. Лимитные ордера обеспечивают ликвидность, которая позволяет немедленно исполнять рыночные ордера. Пользователи, которые создают лимитные ордера, называются маркет-мейкерами. Чем ближе лимитный ордер к рыночной цене, тем быстрее рыночный ордер может быть исполнен и тем больше объем, что является определенным преимуществом для конечного пользователя. Кроме того, чем больше ликвидность, тем сложнее манипулировать рынком.

Для обеспечения достаточной ликвидности Polymarket разработал специальную программу вознаграждений, стимулирующую пользователей создавать лимитные ордера. Чем ближе лимитный ордер к средней рыночной цене, тем выше вознаграждение. Вознаграждение будет автоматически выплачиваться в полночь (по времени UTC) каждый день.

Система смоделирована по образцу dYdX . Чтобы узнать больше, вы можете ознакомиться с оригинальным dYdX план стимулирования ликвидности и подробные данные Polymarketформула расчета вознаграждения за ликвидность .

Оракул

Оракулы используются для предоставления прогнозов — произойдет ли событие или нет. Оракулы являются одним из важнейших компонентов протокола, но они обслуживаются третьей стороной, а не командой Polymarket. Этот оракул называется УМА .

UMA — это децентрализованный оракул, который предназначен для записи любых типов данных в блокчейн, за исключением данных, которые невозможно проверить. Оракул оптимистичен, и данные считаются верными, если только не возникает спор. UMA имеет собственную арбитражную систему для разрешения споров, а арбитрами являются реальные люди — участники экосистемы UMA, в частности, держатели токенов UMA. Эта система называется DVM (Data Verification Mechanism).

Для определения результатов прогнозирования и записи их в блокчейн используется следующий процесс:

Подробный обзор технологии, лежащей в основе Polymarket

  1. Заявление : Предсказание добавляется к оракулу вместе с наградой. Любой, кто успешно оспорит результат предсказания, может претендовать на награду;

  2. Период испытаний : В течение этого периода любой желающий может оспорить результаты прогноза. Если оспаривание не происходит и время истекает, результаты прогноза считаются готовыми к окончательному расчету, что свидетельствует о его точности;

  3. Спор : Любой участник протокола может оспорить результат, либо для получения награды, либо для справедливости. На практике это случается редко, поскольку теория игр показывает, что большинство участников ведут себя честно.

  4. Голосование : Если инициирован спор, держатели токенов UMA будут голосовать за разрешение спора. UMA — это токен протокола, используемый для голосования, и участники получают вознаграждение за участие в голосовании.

  5. Урегулирование : Заключительный этап — это процесс расчета, который представляет собой фактическую запись данных в блокчейн. После этого результаты прогнозирования можно считать достоверными.

Весь протокол основан на теории игр, и любому участнику экономически невыгодно вести себя злонамеренно.

  1. Участники, которые отправляют прогнозы для голосования, предоставляют обеспечение смарт-контракту. Если их результаты оспариваются, они теряют свое обеспечение; в противном случае они получают свое обеспечение обратно и вознаграждение. Это создает сильный стимул отправлять только точные результаты.

  2. Участники, оспаривающие прогноз, также вносят залог. Если они верны, они получают свой залог обратно и вознаграждение; в противном случае они теряют свой залог. Это стимулирует участников оспаривать только те результаты, в ошибочности которых они уверены.

  3. Участники, которые разрешают споры. Они должны делать ставки токенами UMA и будут вознаграждены за разрешение споров. Если они проголосуют неправильно или не проголосуют вообще, они потеряют часть своего поставленного баланса; в противном случае они получат вознаграждение. Нет возможности расслабиться.

Особо следует отметить, что процесс голосования по спорному вопросу делится на две фазы с использованием схемы «подтверждение/раскрытие»:

  1. Совершить : Участники голосуют тайно, отправляя хэш своего голоса в смарт-контракт. Это означает, что никто не может определить, как проголосовал участник, просто взглянув на хэш.

  2. Раскрывать : После фазы голосования участники раскрывают свои голоса, а смарт-контракт проверяет их соответствие ранее отправленным хэшам.

Этот двухэтапный процесс голосования не позволяет избирателям вступать в сговор с целью дискредитации оракула или атаковать сервисы, которые полагаются на прогнозируемые результаты. В то же время результаты прогноза могут быть оспорены несколько раз, и в этом случае UMA позволяет перезапустить процесс принятия решения после завершения предыдущего спора.

Процесс инициирования спора выглядит следующим образом:

Подробный обзор технологии, лежащей в основе Polymarket

в заключение

Polymarket, на первый взгляд простая система ставок и прогнозирования, на самом деле состоит из трех основных модулей, каждый из которых разработан по отдельному протоколу и командой:

  • CTF (Условная структура токенов) : Управление портфелями, позициями и акциями в прогнозах. Эта гибкая структура, созданная Gnosis, хорошо подходит для рынков прогнозов.

  • CLOB (Центральная книга лимитных ордеров) : Внутреннее решение Polymarket для внедрения книг заказов и лимитных ордеров. CLOB позволяет пользователям эффективно участвовать в экосистеме и помогает агрегировать ликвидность.

  • УМА : Децентрализованный оракул с уникальной системой арбитража разрешения споров. UMA является ядром системы и передает результаты прогнозирования через блокчейн.

Хотя Polymarket представляет собой систему стейкинга, технически протокол успешно объединяет технологии из разных проектов, что делает его особенно привлекательным для разработчиков.

Связанное чтение

После выборов в США как долго продлится ажиотаж вокруг Polymarket и рынка прогнозов?

Каким образом Polymarket превзошел традиционные опросы на всеобщих выборах?

Эта статья взята из интернета: Подробный обзор технологии, лежащей в основе Polymarket

© Copyright Notice

Related articles