mcpField
P
polymarket

polymarket

github.com/2025emma其他23.1k434 次安装45 周前更新
代码仓库

关于 polymarket

面向 Polymarket 开发者的学习技能,涵盖 API、交易、市场数据和实时流。它结合平台文档与 TypeScript 实时数据客户端及 WebSocket 主题指南。

主要功能

  1. 01Polymarket API 与交易指南
  2. 02市场数据和投资组合文档
  3. 03WebSocket 订阅指南
  4. 04实时数据主题过滤
  5. 05用户数据流身份验证

适用场景

  1. 01构建 Polymarket 应用
  2. 02监控交易和市场变化
  3. 03跟踪评论与 RFQ 活动

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/2025emma/vibe-coding-cn --skill polymarket

安装后在 Claude Code 中输入/polymarket确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
api.md
getting_started.md
guides.md
index.md
learn.md
llms-full.md
llms.md
other.md
README.md
realtime-client.md
trading.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_removed
  • reaction_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

资源

官方链接
使用本技能

新手入门: 从 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 平台专业知识与实时数据流功能融为一体!

评论

支持 Markdown