到期与结果提交
市场到期后,交易停止,进入结果裁定阶段。本节讲解「快乐路径」——预言机顺利出结果、无人争议、直接结算。
时间线总览(主网窗口)
到期(expiry)
│ 任何人可提交结果
▼
SubmitMarketResult ──► 状态: Result Submitted
│
├─ 24h 争议窗口:任何人可质押发起争议(见下一节)
│
▼ 无争议,冷静期(24h)结束后
SubmitFinalMarketResult ──► 状态: Settlement(可领奖)
devnet 上所有窗口缩短为 5 分钟,便于测试。
Submit Result(提交预言机结果)
市场到期后,交易页会显示 Submit Result 按钮(信息卡的 Trading Closes 行、以及右侧「Trading period ended」提示中都有)。任何连接了钱包的人都可以点击——通常由创建者或 keeper 机器人执行。
点击后前端自动完成两笔交易:
- 预言机更新交易:从 Switchboard 获取该 feed 的最新签名报价,上链验证(V0 交易);
- SubmitMarketResult:程序校验报价账户由市场锁定的
feed_id推导、数据新鲜(150 slot 内),然后按取值写入结果:
| Feed 取值 | 结果 | 状态变化 |
|---|---|---|
1 × 10¹⁸ | Yes | → Result Submitted,并原子收取累计手续费 |
0 | No | 同上 |
2 × 10¹⁸ 或其他 | Invalid | 状态不变,可修复数据源后重试 |
预言机来源在创建时已锁定
feed_id 写死在市场账户中,提交结果时只认这个数据源——没人能换一个 feed 来操纵结果。
结果提交后的界面
市场头部出现两个倒计时:
- Dispute deadline — 争议窗口截止(结果提交时间 + 24h)。在此之前,任何认为结果错误的人可以质押发起争议;
- Settlement in — 预计可结算时间(无争议:结果提交时间 + 24h 冷静期;有争议:争议冷静期结束时间)。
右侧面板此时显示 Raise Dispute 争议面板(见争议与投票)。
Submit Final Result(确认最终结果)
争议窗口过后无人质疑,右侧面板变为:
Dispute window closed — No disputes were raised. Settlement is now available.
任何人点击 Submit Final Result(SubmitFinalMarketResult),程序确认冷静期已过,保留预言机结果,市场进入 Settlement 状态——持有胜方代币的用户即可领取奖励。