超详细揭秘 Polymarket 背后的技术实现方式
Polymarket 成功结合了来自不同项目的技术,对后来者尤其有借鉴价值。
🤔**CTF(条件代币框架)**:Polymarket 使用 Gnosis 开发的 CTF 框架,将所有事件结果代币化,并支持最多 256 个结果。CTF 通过条件 ID 标识每个预测,并管理用户的立场,例如用户可以投票认为某部电影是票房冠军,或某部电影绝对不会成为票房冠军。
🔄**订单机制**:Polymarket 提供三种订单类型:Market、Limit 和 AMM。虽然 AMM 目前似乎已过时,但 Polymarket 使用 CLOB 或 BLOB 混合解决方案处理限价和市价订单,并通过 API 访问订单簿和订单匹配。
⚙️**智能合约**:Polymarket 使用一系列智能合约来实现其功能,包括 Exchange.sol、BaseExchange.sol、Auth.sol 等。这些合约负责创建用户立场、管理资产、执行订单等,并保证协议的安全性和透明度。
💰**费用机制**:Polymarket 根据输出的资产收取费用,对二元预测的费用是对称的。例如,用户以 0.99 美元的价格出售代币,将支付与以 0.01 美元价格购买代币的买家相同的费用。
🔮**预言机 UMA**:Polymarket 使用 UMA 作为其预言机,用于提供预测结果。UMA 采用乐观的预言机机制,并结合 DVM(数据验证机制)来解决争议,确保预测结果的可靠性。
超详细揭秘 Polymarket 背后的技术实现方式
Polymarket 成功结合了来自不同项目的技术,对后来者尤其有借鉴价值。
撰文:Pavel Naydanov
编译:Golem,Odaily 星球日报
编者按:Polymarket 在本次美国大选中获得了更多的关注,不仅是因为预测主题累计交易量突破 36 亿美元,而且因其相比于民调和传统媒体提前且成功预测了特朗普将会获胜,使人们更加意识到 Polymarket 不仅仅是一个下注网站,而且将成为一个更加真实可靠的新闻网站(推荐阅读:《Vitalik 新文:从预测市场到信息金融》)。Polymarket 可能是本轮区块链创新中最靓丽的「一道风景线」。
那么,具有「区块链革命」性意义的 Polymarket 在技术上是如何实现的呢?智能合约开发员 Pavel Naydanov 对 Polymarket 采用的技术进行了细致的拆分和讲解,对开发人员来说,或许具有启示意义。Odaily 星球日报将其中涉及技术实现的部分编译如下,接下来让我们深入研究该协议各个方面的技术细节吧。
Polymarket 上所有的事件结果都是代币化的:
Share token 是基于 Gnosis 条件代币框架 (CTF) 实现的 ERC-1155 ,该框架已证明其有效性并已通过多种协议测试,CTF 最多可以支持每个事件 256 个结果。
每个预测都在 CTF 中被标识,为此它们会被分配一个唯一的条件 ID,由三个参数的哈希值组成:
下图直观地展示了 CTF(条件代币框架)的工作原理
用户在下注时提供基础资产并收到 Share token,在 CTF 中称为条件代币。在预言机确定预测后,用户可以根据预测结果从 CTF 领取奖励。
当用户收到条件代币时,他们被视为已确定特定立场。在 CTF 中,立场代表每个预测的一组可能结果组合。CTF 为每个预测生成这些立场,每个立场对应于用户可以选择的可能结果组合之一。
例如:
2024 年票房最高的电影是什么?
用户可以投票认为《头脑特工队 2 》将成为票房最高的电影,或者《沙丘 2 》绝对不会成为 2024 年票房最高的电影。这种预测组合将被视为他们的立场。
CTF 提供了两种有趣的处理立场的机制:拆分和合并。拆分机制允许将单个立场分成多个单独的结果,而合并将不同的结果合并为一个立场。这些机制使用户能够灵活地管理他们的立场。
CTF 为 Polymarket 提供了四个重要优势:
另外值得一提的是,CTF 允许组织相关活动,其中用户的立场是可以合并的。但是,Polymarket 上目前还没有这样的例子。想要了解关于 CTF 的更多内容,可以在官方文档中获取。
为了进行购买,Polymarket 界面提供三种类型的订单:
目前,AMM 订单功能似乎是无效的,没有找到允许通过 AMM 购买的预测。在 Polymarket 的 Discord 中一位用户的一条评论在一定程度上解释了这种情况。
AMM 已经过时了
根据 Polymarket 的文档,AMM 被作为条件令牌框架的一部分智能合约开发。因此,AMM 用于确定 Share token 的购买价格。这种基本机制需要流动性来确保稳定的定价并降低波动性。流动性提供者需要经济激励,从每次购买中获得奖励,以保持系统运行。
可能最初 Polymarket 是完全基于 CTF 的,使用 AMM 来确定价格。但随着时间的推移,该协议开发了一种带有订单簿的混合解决方案,另外两种类型的订单(限价和市价)开始在该定制的解决方案上工作。此解决方案称为 CLOB(中央限价订单簿)或 BLOB(二进制限价订单簿)。
CLOB(中央限价订单簿)或 BLOB(二进制限价订单簿)是一种代表混合分散式订单簿的系统。在这个系统中,专门的操作员负责处理订单匹配并启动智能合约的执行。
无需过多介绍,系统如下图所示:
用户创建要执行的订单,可以是限价订单或市价订单;操作员匹配用户订单并在智能合约上启动执行,创建订单意味着创建一个根据 EIP-712 标准用用户私钥签名的数据结构。由于订单在执行前存储在链下,因此可以快速且免费地调整订单条款,甚至完全取消。
不过与订单簿和订单匹配相关的所有内容只能通过 API 访问,为方便起见,Polymarket 提供了两个客户端:一个使用 JavaScript ,一个使用 Python。
然而,Exchange.sol 智能合约是公开的,负责在 CTF 中创建用户立场。它还允许管理用户立场并在他们之间转移资产,从而确保协议内的安全性和透明度。
该智能合约已通过审计,审计报告附在存储库中。
Exchange 智能合约实际上有一个更具体的名称,即 CTFExchange.sol。它不是很大,只有大约 100 行代码,但它确实具有大量依赖项。
其中大多数是实现有限功能的小型智能合约:
与实际执行订单相关的所有内容都在智能合约 Trading.sol 中实现。遍历代码并研究智能合约也很简单。该结构通过函数明确定义了入口点:
以上所有函数只能由 operator 调用。
无论调用如何进入智能合约,结果始终相同:两个用户将根据他们的订单交换代币。
费用是根据输出的资产收取的。对于二元预测,费用是对称的,这意味着:如果用户以 0.99 美元的价格出售代币,他们将支付与以 0.01 美元的价格购买代币的买家相同的费用。
计算公式很简单,取自官方文档:
该计划的总体目标是激励市场流动性。
如果要使基于订单簿的交易所发挥作用,需要有人创建限价订单,限价订单提供允许立即执行市价单的流动性,创建限价订单的用户称为做市商。限价订单与市场价格的「紧密度」越高,市场订单的执行速度就越快,交易量也越大,这对最终用户来说无疑是有利的。此外,流动性越大,操纵市场就越困难。
为了确保足够的流动性,Polymarket 制定了一个特殊的奖励计划,以激励用户创建限价订单。限价订单越接近平均市场价格,奖励就越高。奖励将在每天午夜(UTC 时间)自动支付。
该系统以 dYdX 为蓝本,想要了解更多可查看原始 dYdX 的流动性激励计划和 Polymarket 详细的流动性奖励计算公式。
预言机用于提供预测结果 — 无论事件是否发生。预言机是协议的最重要组件之一,但它由第三方服务,而不是 Polymarket 团队,这个预言机被称为 UMA。
UMA 是一个去中心化的预言机,专门用于在区块链上记录任何类型的数据,但无法验证的数据除外。该预言机是乐观的,除非有争议,否则数据默认为是正确的。UMA 有自己的仲裁系统来解决争议,仲裁员是真实的人——UMA 生态系统的参与者,特别是 UMA 代币持有者。这个系统被称为 DVM(数据验证机制)。
以下过程用于确定预测结果并将其记录在区块链上:
整个协议都基于博弈论,任何参与者进行恶意行为在经济上考虑都是不利的。
特别值得注意的是,争议中的投票过程使用 commit/reveal 方案分为两个阶段:
这种两阶段投票过程可防止选民串通以诋毁预言机或攻击依赖预测结果的服务。同时预测结果可以多次受到质疑,在这种情况下,UMA 允许在之前的争议结束后重新启动决策过程。
争议发起过程如下:
Polymarket 这个看似简单的博彩和预测系统实际上包含三个主要模块,每个模块由不同的协议和团队开发:
虽然 Polymarket 是一个下注系统,但从技术上讲,该协议成功地结合了来自不同项目的技术,对开发人员特别有吸引力。
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。
超详细揭秘 Polymarket 背后的技术实现方式
Polymarket 成功结合了来自不同项目的技术,对后来者尤其有借鉴价值。
如何从已停运的 Layer2「强行」提取资金?
dYdX v3 已停运,但逾 7000 万美元资金未能及时撤出。
加密市场将迎历史性政策红利期?来看专业人士们怎么说
涉及监管风向、比特币未来、机构投资者预期、市场波动、DeFi 促进等。
大选落地后最重要的风向标:特朗普经济政策会终结美联储放水吗?
特朗普胜选推高通胀预期,美联储 11 月降息 25 基点大致确定,市场预计中期内降息或接近尾声,但经济形势将影响后续政策调整。
又一 Restaking 赛道项目今晚空投,Swell 还有参与机会吗?
第二季 Wavedrops 活动目前仍在进行,7% 的代币将作为空投奖励。
起风了,美国监管全面转向「加密友好化」
「特朗普上台将成加密牛市起点」,预言正一步步实现。
起风了,美国监管全面转向「加密友好化」
“特朗普上台将成加密牛市起点”,预言正一步步实现。
欢迎归来,特朗普总统!
市场短期反应剧烈,加密利好或将落地。
Gary Gensler 后,美 SEC 新主席会是谁?
8 大候选人中,「加密妈妈」无意 SEC 主席之位,「加密爸爸」暂时领先。
除总统之外,这一席位的竞选也将深度影响 Crypto 的未来
该席位下辖 SEC 和 CFTC 两大机构,业界正试图将「加密公敌」拉下马。
回顾历史极端情况,美国大选结果最晚何时出炉?
如果出现 269:269 的平票局面,该怎么办?
Monad 创始人致同行:你不应该轻易送出顾问份额
创始人们总是会给予顾问一定份额,这可以理解,但通常也是个错误。
临近美国大选的民调:谁将赢得未来选举的关键选民?
加密选民因特朗普对共和党在加密货币政策上的信任度提升。
AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。
鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑