关于 polymarket
面向 Polymarket 开发者的学习技能,涵盖 API、交易、市场数据和实时流。它结合平台文档与 TypeScript 实时数据客户端及 WebSocket 主题指南。
主要功能
- 01Polymarket API 与交易指南
- 02市场数据和投资组合文档
- 03WebSocket 订阅指南
- 04实时数据主题过滤
- 05用户数据流身份验证
适用场景
- 01构建 Polymarket 应用
- 02监控交易和市场变化
- 03跟踪评论与 RFQ 活动
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ 2025emma/ vibe-coding-cn --skill polymarket安装后在 Claude Code 中输入/polymarket确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/api.mdgetting_started.mdguides.mdindex.mdlearn.mdllms-full.mdllms.mdother.mdREADME.mdrealtime-client.mdtrading.md详细介绍
Polymarket 综合技能
全面协助 Polymarket 开发,涵盖整个平台(API、交易、市场数据)和实时数据流客户端(用于实时市场动态的 WebSocket 订阅)。
何时使用此技能
在以下情况下应启用此技能:
平台与 API:
- 使用 Polymarket 预测市场
- 使用 Polymarket API 获取市场数据
- 实施交易策略
- 使用 Polymarket 服务构建应用
- 学习 Polymarket 最佳实践
实时数据流:
- 连接 Polymarket 的 WebSocket 服务
- 构建预测市场监控工具
- 处理实时交易、订单和市场更新
- 监控市场评论和社交反馈
- 跟踪 RFQ(报价请求)活动
- 集成加密货币价格信息流
快速参考
实时数据客户端设置
安装:
npm install @polymarket/real-time-data-client
基本用法:
import { RealTimeDataClient } from "@polymarket/real-time-data-client";
const onMessage = (message: Message): void => {
console.log(message.topic, message.type, message.payload);
};
const onConnect = (client: RealTimeDataClient): void => {
client.subscribe({
subscriptions: [{
topic: "activity",
type: "trades"
}]
});
};
new RealTimeDataClient({ onMessage, onConnect }).connect();
支持的 WebSocket 主题
1. 活动(activity)
trades- 已完成的交易orders_matched- 订单撮合事件- 筛选条件:
{"event_slug":"string"}或{"market_slug":"string"}
2. 评论(comments)
comment_created、comment_removedreaction_created、reaction_removed- 筛选条件:
{"parentEntityID":number,"parentEntityType":"Event"}
3. RFQ(rfq)
- 请求/报价生命周期事件
- 无需筛选条件或身份验证
4. 加密货币价格(crypto_prices、crypto_prices_chainlink)
update- 实时价格信息流- 筛选条件:
{"symbol":"BTC"}(可选)
5. CLOB 用户(clob_user) ⚠️ 需要身份验证
order- 用户的订单更新trade- 用户的交易执行
6. CLOB 市场(clob_market)
price_change- 价格变动agg_orderbook- 聚合订单簿last_trade_price- 最新价格market_created、market_resolved
用户数据的身份验证
client.subscribe({
subscriptions: [{
topic: "clob_user",
type: "*",
clob_auth: {
key: "your-api-key",
secret: "your-api-secret",
passphrase: "your-passphrase"
}
}]
});
常见用例
监控特定市场:
client.subscribe({
subscriptions: [{
topic: "activity",
type: "trades",
filters: `{"market_slug":"btc-above-100k-2024"}`
}]
});
跟踪多个市场:
client.subscribe({
subscriptions: [{
topic: "clob_market",
type: "price_change",
filters: `["100","101","102"]`
}]
});
监控事件评论:
client.subscribe({
subscriptions: [{
topic: "comments",
type: "*",
filters: `{"parentEntityID":12345,"parentEntityType":"Event"}`
}]
});
参考文件
此技能在 references/ 中包含全面的文档:
平台文档:
- api.md - Polymarket API 文档
- getting_started.md - 入门指南
- guides.md - 开发指南
- learn.md - 学习资源
- trading.md - 交易文档
- other.md - 其他资源
实时客户端:
- README.md - WebSocket 客户端 API 和示例
- llms.md - 大模型集成指南
- llms-full.md - 完整的大模型文档
使用 view 阅读特定参考文件,获取详细信息。
主要功能
平台功能: ✅ 创建和结算预测市场 ✅ 交易 API(REST 和 WebSocket) ✅ 市场数据查询 ✅ 用户投资组合管理 ✅ 事件与市场发现
实时数据流: ✅ 基于 WebSocket 的持久连接 ✅ 基于主题的订阅 ✅ 动态订阅管理 ✅ 支持筛选条件以获取目标数据 ✅ 用户身份验证以获取私有数据 ✅ 使用 TypeScript,提供完整的类型安全保障 ✅ 连接时发送初始数据转储
最佳实践
WebSocket 连接管理
- 使用
onConnect回调进行订阅 - 在生产环境中实现重新连接逻辑
- 完成后使用
disconnect()清理 - 妥善处理身份验证错误
订阅策略
- 谨慎使用通配符(
"*") - 应用筛选条件以减少数据量
- 取消订阅不再使用的信息流
- 异步处理消息
性能
- 考虑对高频数据进行批处理
- 使用筛选条件尽量减少客户端处理
- 使用消息载荷前先验证其有效性
要求
- Node.js:建议使用 14+
- TypeScript:可选,但建议使用
- 包管理器:npm 或 yarn
资源
官方链接
- Polymarket 平台:https://polymarket.com
- 实时客户端代码库:https://github.com/Polymarket/real-time-data-client
- API 文档:参见 references/api.md
使用本技能
新手入门:
从 getting_started.md 开始了解基础概念。
API 集成:
使用 api.md 和 trading.md 了解 REST API 详情。
实时数据:
参考 README.md 实现 WebSocket 客户端。
大模型集成:
使用 llms.md 和 llms-full.md 了解 AI/ML 用例。
注意事项
- 实时客户端使用 TypeScript/JavaScript(而非 Python)
- 部分 WebSocket 主题需要身份验证
- 使用筛选器有效管理消息量
- 所有时间戳均为 Unix 时间戳
- 市场 ID 是字符串(例如,“100”、“101”)
- 平台文档涵盖 REST API 和 WebSocket 的用法
这套全面的技能将 Polymarket 平台专业知识与实时数据流功能融为一体!