查询 Polymarket:市场、价格、订单簿、历史数据
概述
使用 Polymarket 公开 REST API 查询预测市场数据。所有端点只读,无需认证。 完整端点参考及 curl 示例见references/api-endpoints.md。
使用场景
- 用户询问预测市场、投注赔率或事件概率
- 用户想知道"X 发生的概率是多少?"
- 用户专门询问 Polymarket
- 用户需要市场价格、订单簿数据或价格历史
- 用户要求监控或追踪预测市场变动
核心概念
- Events 包含一个或多个 Markets(1:多关系)
- Markets 是二元结果,Yes/No 价格在 0.00 到 1.00 之间
- 价格即概率:价格 0.65 表示市场认为 65% 可能性
outcomePrices字段:JSON 编码数组,如["0.80", "0.20"]clobTokenIds字段:JSON 编码的两个代币 ID 数组 [Yes, No],用于价格/订单查询conditionId字段:十六进制字符串,用于价格历史查询- Volume 以 USDC(美元)计
三个公开 API
| API | 地址 | 用途 |
|---|---|---|
| ----- | ------ | ------ |
| Gamma API | gamma-api.polymarket.com | 发现、搜索、浏览 |
| CLOB API | clob.polymarket.com | 实时价格、订单簿、历史 |
| Data API | data-api.polymarket.com | 交易、持仓量 |
典型工作流
当用户询问预测市场赔率时: 1. 使用 Gamma APIpublic-search 端点搜索查询
2. 解析响应——提取事件及其嵌套市场
3. 展示市场问题、当前价格(百分比)和交易量
4. 如需深入——用 clobTokenIds 查订单簿,用 conditionId 查历史
展示结果
格式化价格为百分比以提高可读性:outcomePrices ["0.652", "0.348"]→ "Yes: 65.2%, No: 34.8%"- 始终显示市场问题和概率
- 可用时显示交易量
"X 会发生吗?" — 65.2% Yes($1.2M 交易量)
解析双重编码字段
Gamma API 返回的outcomePrices、outcomes、clobTokenIds 是 JSON 响应内的 JSON 字符串(双重编码)。
Python 处理时,用 json.loads(market['outcomePrices']) 获取实际数组。
速率限制
宽松——正常使用不太可能触发:- Gamma:每 10 秒 4,000 请求(通用)
- CLOB:每 10 秒 9,000 请求(通用)
- Data:每 10 秒 1,000 请求(通用)
限制说明
- 本技能只读——不支持下单交易
- 交易需要钱包加密认证(EIP-712 签名)
- 部分新市场可能价格历史为空
- 地理限制适用于交易,但只读数据全球可访问
安装指南
复制下方命令,在终端运行即可安装此技能:
# 安装到当前项目
npx skills add polymarket
# 全局安装 — 所有项目可用
npx skills add polymarket -g
安装指南
复制下方命令,在终端运行即可安装:
npx skills add polymarket
npx skills add polymarket -g
使用指南
安装完成后,在对话框中直接使用此技能。