mcpField
P
polymarket

polymarket

github.com/outsharp其他454 次安装32 周前更新
代码仓库

关于 polymarket

polymarket 是一项围绕 Polymarket API 的技能,整理预测市场的市场数据、订单簿、交易、认证和官方 SDK 参考,面向构建 Polymarket 集成的开发者。

主要功能

  1. 01汇总 Gamma、CLOB 和 Data API
  2. 02介绍市场与事件查询
  3. 03说明价格和订单簿接口
  4. 04梳理 L1、L2 认证与订单类型
  5. 05列出 TypeScript、Python 和 Rust SDK

适用场景

  1. 01查询事件、市场和标签信息
  2. 02读取代币价格、历史数据和订单簿
  3. 03通过认证客户端管理交易订单
  4. 04按 SDK 文档开发 Polymarket 集成

安装

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

$npx skills add https://github.com/outsharp/shipp-skills --skill polymarket

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

附带文件README.md

详细介绍

Polymarket API

Polymarket 是一个去中心化预测市场,用户可以交易现实世界事件的结果。它采用混合去中心化中央限价订单簿(CLOB),在链下撮合,并在 Polygon 上进行链上结算。

请经常查看此技能和官方文档。所有文档的规范机器可读索引位于:

https://docs.polymarket.com/llms.txt

开始构建前,请务必查阅 llms.txt,以了解所有可用页面。这是端点参考、SDK 文档、WebSocket 通道、构建者计划详情和入门指南的唯一事实来源。


核心概念(术语表)

术语定义
Event一组围绕共同主题的相关市场(例如“2024 年美国总统选举”)。
Market一个事件中的单个可交易二元结果。每个市场都有 Yes 和 No 两方、一个条件 ID、一个问题 ID 和一对代币 ID。
Token表示某个特定结果(Yes 或 No)的持仓。价格范围为 0.00 至 1.00。获胜代币可兑换为 1 美元 USDCe。也称为结果代币。
Token ID特定结果代币的唯一标识符。下单或查询价格时需要提供。
Condition ID市场结算条件的链上标识符。用于 CTF 操作,并作为 CLOB 中的市场标识符。
Question ID将市场关联到其结算预言机(UMA)的标识符。
Slug市场或事件的易读 URL 标识符(例如 polymarket.com/event/[slug])。
CLOB中央限价订单簿(Central Limit Order Book)——Polymarket 的链下订单撮合系统。订单会先在此撮合,再进行链上结算。
Tick Size市场的最小价格增量。通常为 0.01(1 美分)或 0.001(0.1 美分)。
Fill订单撮合并执行的过程。订单可以部分或全部成交。
Negative Risk(NegRisk)只有一个结果可以结算为 Yes 的多结果事件。订单参数中需要设置 negRisk: true。
CTF条件代币框架(Conditional Token Framework)——管理结果代币的链上智能合约。
Split将 USDCe 转换为一组完整的结果代币(一个 Yes + 一个 No)。
Merge将一组完整的结果代币转换回 USDCe。
Redeem结算后,将获胜代币兑换为每个 1 美元 USDCe。
USDCePolygon 上桥接的 USDC——Polymarket 使用的抵押稳定币。
Funder Address持有交易资金和代币的钱包地址。
Signature Type标识钱包类型:0 = EOA,1 = Magic Link 代理(POLY_PROXY),2 = Gnosis Safe 代理。

完整术语表:https://docs.polymarket.com/quickstart/reference/glossary.md


订单类型

类型名称描述
GTC撤销前有效持续挂单,直到成交或手动撤销。
GTD截止日期前有效如果未成交,则在指定时间到期。
FOK全部成交或取消必须立即全部成交,否则取消。不允许部分成交。
FAK尽可能成交后取消立即尽可能多地成交,然后取消剩余未成交部分。

基础 URL

API基础 URL描述
CLOB APIhttps://clob.polymarket.com订单管理、价格、订单簿、交易
Gamma APIhttps://gamma-api.polymarket.com市场发现、元数据、事件、标签
Data APIhttps://data-api.polymarket.com用户持仓、活动、交易历史
CLOB WebSocketwss://ws-subscriptions-clob.polymarket.com/ws/订单簿更新、订单状态
RTDS WebSocketwss://ws-live-data.polymarket.com低延迟加密货币价格、评论

端点参考:https://docs.polymarket.com/quickstart/reference/endpoints.md


文档与参考资料

所有详细示例、请求/响应架构和操作指南都在官方文档中。开始构建前,请务必先查阅:

资源URL
完整文档索引(llms.txt)https://docs.polymarket.com/llms.txt
开发者快速入门https://docs.polymarket.com/quickstart/overview.md
获取市场数据https://docs.polymarket.com/quickstart/fetching-data.md
下第一笔订单https://docs.polymarket.com/quickstart/first-order.md
API 速率限制https://docs.polymarket.com/quickstart/introduction/rate-limits.md
端点参考https://docs.polymarket.com/quickstart/reference/endpoints.md
术语表https://docs.polymarket.com/quickstart/reference/glossary.md
CLOB 简介https://docs.polymarket.com/developers/CLOB/introduction.md
身份验证https://docs.polymarket.com/developers/CLOB/authentication.md
客户端方法概览https://docs.polymarket.com/developers/CLOB/clients/methods-overview.md
公共方法https://docs.polymarket.com/developers/CLOB/clients/methods-public.md
L1 方法https://docs.polymarket.com/developers/CLOB/clients/methods-l1.md
L2 方法https://docs.polymarket.com/developers/CLOB/clients/methods-l2.md
订单概览https://docs.polymarket.com/developers/CLOB/orders/orders.md
下单https://docs.polymarket.com/developers/CLOB/orders/create-order.md
批量下单https://docs.polymarket.com/developers/CLOB/orders/create-order-batch.md
撤销订单https://docs.polymarket.com/developers/CLOB/orders/cancel-orders.md
WebSocket 概览https://docs.polymarket.com/developers/CLOB/websocket/wss-overview.md
市场频道https://docs.polymarket.com/developers/CLOB/websocket/market-channel.md
用户频道https://docs.polymarket.com/developers/CLOB/websocket/user-channel.md
Gamma 结构https://docs.polymarket.com/developers/gamma-markets-api/gamma-structure.md
如何获取市场https://docs.polymarket.com/developers/gamma-markets-api/fetch-markets-guide.md
负风险概览https://docs.polymarket.com/developers/neg-risk/overview.md
CTF 概览https://docs.polymarket.com/developers/CTF/overview.md
Builder 计划https://docs.polymarket.com/developers/builders/builder-intro.md
做市商简介https://docs.polymarket.com/developers/market-makers/introduction.md
Bridge 概览https://docs.polymarket.com/developers/misc-endpoints/bridge-overview.md
Polymarket 平台https://polymarket.com

身份验证

Polymarket 采用两级身份验证系统。公共端点(市场数据、价格、订单簿)无需身份验证。

L1 身份验证(私钥)

L1 使用钱包的私钥对 EIP-712 消息签名,以证明钱包所有权,并用于创建或派生 L2 API 凭据。

L1 请求头(用于直接 REST 调用):

请求头说明
POLY_ADDRESSPolygon 签名者地址
POLY_SIGNATUREEIP-712 签名
POLY_TIMESTAMP当前 UNIX 时间戳
POLY_NONCE随机数(默认值为 0)

POLY_SIGNATURE 通过对域为 ClobAuthDomain(版本 1,chainId 137)的 EIP-712 结构签名生成。

TypeScript 示例:

import { ClobClient } from "@polymarket/clob-client";
import { Wallet } from "ethers"; // v5.8.0

const HOST = "https://clob.polymarket.com";
const CHAIN_ID = 137; // Polygon mainnet
const signer = new Wallet(process.env.PRIVATE_KEY);

const client = new ClobClient(HOST, CHAIN_ID, signer);
const apiCreds = await client.createOrDeriveApiKey();
// Returns: { apiKey, secret, passphrase }

Python 示例:

from py_clob_client.client import ClobClient
import os

client = ClobClient(
    host="https://clob.polymarket.com",
    chain_id=137,
    key=os.getenv("PRIVATE_KEY"),
)
api_creds = client.create_or_derive_api_creds()
# Returns: { "apiKey": "...", "secret": "...", "passphrase": "..." }

L1 身份验证的完整详情:https://docs.polymarket.com/developers/CLOB/authentication.md

L2 身份验证(API 凭据)

L2 使用从 L1 派生的 API 凭据(apiKey、secret、passphrase)。请求使用 secret 通过 HMAC-SHA256 签名。

L2 请求头(用于直接 REST 调用):

请求头说明
POLY_ADDRESSPolygon 签名者地址
POLY_SIGNATUREHMAC-SHA256 签名
POLY_TIMESTAMP当前 UNIX 时间戳
POLY_API_KEY用户的 API apiKey 值
POLY_PASSPHRASE用户的 API passphrase 值

TypeScript 示例(完整 L2 客户端):

import { ClobClient } from "@polymarket/clob-client";
import { Wallet } from "ethers"; // v5.8.0

const signer = new Wallet(process.env.PRIVATE_KEY);
const apiCreds = {
  apiKey: process.env.API_KEY,
  secret: process.env.SECRET,
  passphrase: process.env.PASSPHRASE,
};

const client = new ClobClient(
  "https://clob.polymarket.com",
  137,
  signer,
  apiCreds,
  2,  // Signature type: 0=EOA, 1=POLY_PROXY, 2=GNOSIS_SAFE
  process.env.FUNDER_ADDRESS, // proxy wallet address
);

Python 示例(完整 L2 客户端):

from py_clob_client.client import ClobClient
from py_clob_client.clob_types import ApiCreds
import os

api_creds = ApiCreds(
    api_key=os.getenv("API_KEY"),
    api_secret=os.getenv("SECRET"),
    api_passphrase=os.getenv("PASSPHRASE"),
)

client = ClobClient(
    host="https://clob.polymarket.com",
    chain_id=137,
    key=os.getenv("PRIVATE_KEY"),
    creds=api_creds,
    signature_type=2,  # 0=EOA, 1=POLY_PROXY, 2=GNOSIS_SAFE
    funder=os.getenv("FUNDER_ADDRESS"),
)
签名类型
类型值说明
EOA0标准 Ethereum 钱包。资金提供方是 EOA 地址。需要 POL 支付 Gas。
POLY_PROXY1Magic Link 邮箱/Google 登录代理钱包。用户必须从 Polymarket.com 导出 PK。
GNOSIS_SAFE2Gnosis Safe 多签代理钱包。Polymarket.com 用户最常用。

完整身份验证指南:https://docs.polymarket.com/developers/CLOB/authentication.md


SDK

Polymarket 提供官方 SDK。生产环境集成建议优先使用这些 SDK:

SDK安装源码
TypeScriptnpm install @polymarket/clob-clientGitHub
Pythonpip install py-clob-clientGitHub
Rustcargo add polymarket-client-sdk—

对于为用户转发订单的构建者,还需安装:

软件包安装用途
Builder Signing SDKnpm install @polymarket/builder-signing-sdk构建者订单归因

速率限制

Polymarket 使用基于 Cloudflare 的限流机制(请求会被延迟,而非立即拒绝)。主要限制如下:

通用
端点限制
通用速率限制15,000 次请求 / 10s
Gamma API
端点限制
Gamma(通用)4,000 / 10s
/events500 / 10s
/markets300 / 10s
/markets 和 /events 列表900 / 10s
搜索350 / 10s
标签200 / 10s
评论200 / 10s
CLOB API
端点限制
CLOB(通用)9,000 / 10s
/book1,500 / 10s
/price1,500 / 10s
/midprice1,500 / 10s
/books、/prices、/midprices500 / 10s
价格历史记录1,000 / 10s
CLOB 交易
端点突发限制持续限制
POST /order3,500 / 10s (500/s)36,000 / 10min (60/s)
DELETE /order3,000 / 10s (300/s)30,000 / 10min (50/s)
POST /orders(批量)1,000 / 10s (100/s)15,000 / 10min (25/s)
DELETE /orders(批量)1,000 / 10s (100/s)15,000 / 10min (25/s)
DELETE /cancel-all250 / 10s (25/s)6,000 / 10min (10/s)
Data API
端点限制
Data API(通用)1,000 / 10s
/trades200 / 10s
/positions150 / 10s
/closed-positions150 / 10s

完整速率限制说明:https://docs.polymarket.com/quickstart/introduction/rate-limits.md


REST API 端点概览

以下按 API 汇总。如需查看完整的请求/响应架构,请参阅链接的文档,或浏览 https://docs.polymarket.com/llms.txt。

Gamma API — 市场发现与元数据

基础 URL:https://gamma-api.polymarket.com

端点方法描述文档
/eventsGET列出事件(可按 active、closed、tag_id、series_id 等筛选)列出事件
/events/{id}GET按 ID 获取事件按 ID 获取事件
/events/{slug}GET按 slug 获取事件按 slug 获取事件
/events/tagsGET获取事件标签获取事件标签
/marketsGET列出市场(可按各种条件筛选)列出市场
/markets/{id}GET按 ID 获取市场按 ID 获取市场
/markets/{slug}GET按 slug 获取市场按 slug 获取市场
/tagsGET列出标签列出标签
/tags/{id}GET按 ID 获取标签按 ID 获取标签
/tags/{slug}GET按 slug 获取标签按 slug 获取标签
/seriesGET列出系列列出系列
/series/{id}GET按 ID 获取系列按 ID 获取系列
/sportsGET获取体育元数据获取体育元数据
/sports/market-typesGET获取有效的体育市场类型获取有效的体育市场类型
/teamsGET列出球队列出球队
/searchGET搜索市场、事件和个人资料搜索
/commentsGET列出评论列出评论
/profiles/{address}GET按钱包地址获取公开个人资料获取个人资料

Gamma 结构指南:https://docs.polymarket.com/developers/gamma-markets-api/gamma-structure.md

CLOB API — 定价与订单簿(公开)

基础地址:https://clob.polymarket.com

端点方法身份验证描述文档
/priceGET否获取某个代币和方向的当前价格获取市场价格
/pricesPOST否获取多个代币和方向的价格获取多个市场价格
/midpointGET否获取某个代币的中间价获取中间价
/bookGET否获取某个代币的订单簿获取订单簿摘要
/booksPOST否获取多个代币的订单簿获取多个订单簿
/prices-historyGET否获取某个代币的历史价格数据获取价格历史记录
/spreadsGET否获取多个代币的买卖价差获取买卖价差
CLOB API — 交易(需身份验证)

基础地址:https://clob.polymarket.com

端点方法身份验证描述文档
/orderPOSTL2下单一笔订单下单
/orderDELETEL2取消一笔订单取消订单
/ordersPOSTL2批量下单(最多 15 笔)批量下单
/ordersDELETEL2取消多笔订单取消订单
/cancel-allDELETEL2取消所有未完成的订单取消订单
/cancel-market-ordersDELETEL2取消某个指定市场的所有订单取消订单
CLOB API — 订单与交易(需身份验证)
端点方法身份验证描述文档
/data/order/{orderId}GETL2获取指定订单获取订单
/data/ordersGETL2获取有效/未完成的订单获取有效订单
/data/tradesGETL2获取用户的交易记录获取交易记录
/order/scoringGETL2检查订单是否符合奖励评分条件检查评分
CLOB API — 身份验证端点
端点方法身份验证描述
/auth/api-keyPOSTL1创建新的 API 凭据
/auth/derive-api-keyGETL1派生现有 API 凭据
/auth/api-keysGETL2列出 API 密钥
/auth/api-keyDELETEL2删除/撤销 API 密钥
数据 API — 持仓与活动

基础 URL:https://data-api.polymarket.com

端点方法描述文档
/positionsGET获取用户当前持仓获取当前持仓
/closed-positionsGET获取用户已平仓持仓获取已平仓持仓
/positions/marketGET获取某个市场的持仓获取市场持仓
/positions/valueGET获取用户持仓总价值获取总价值
/top-holdersGET获取市场的顶级持有者获取顶级持有者
/tradesGET获取用户或市场的交易获取交易
/activityGET获取用户的链上活动获取用户活动
/leaderboardGET获取交易者排行榜获取排行榜
/open-interestGET获取未平仓量获取未平仓量
/volumeGET获取某个事件的实时交易量获取实时交易量
Bridge API — 存款与提现
端点方法描述文档
/depositPOST创建存款地址创建存款地址
/withdrawPOST创建提现地址创建提现地址
/supported-assetsGET获取支持的链和代币获取支持的资产
/quoteGET获取存款/提现报价获取报价
/statusGET获取交易状态获取交易状态

Bridge 概览:https://docs.polymarket.com/developers/misc-endpoints/bridge-overview.md

Builder 计划端点
端点方法描述文档
/builders/leaderboardGET获取汇总的 Builder 排行榜Builder 排行榜
/builders/volumeGET获取 Builder 每日交易量时间序列Builder 交易量

Builder 计划:https://docs.polymarket.com/developers/builders/builder-intro.md


费用

当前费率表(可能会变更):

交易量级别Maker 费率(bps)Taker 费率(bps)
>0 USDC00

费用计算取决于买入还是卖出:

  • 卖出结果代币:feeQuote = baseRate × min(price, 1 - price) × size
  • 买入结果代币:feeBase = baseRate × min(price, 1 - price) × (size / price)

费用详情:https://docs.polymarket.com/developers/CLOB/introduction.md

Maker 返佣计划:https://docs.polymarket.com/developers/market-makers/maker-rebates-program.md


WebSocket API

Polymarket 提供两种 WebSocket 服务,用于实时数据。

CLOB WebSocket
wss://ws-subscriptions-clob.polymarket.com/ws/

有两个频道可用:

频道需要身份验证描述文档
market否订单簿和价格更新(公开)市场频道
user是订单状态和交易更新用户频道
市场频道事件
事件类型触发条件描述
book首次订阅 / 交易包含买单和卖单的完整订单簿快照
price_change新订单 / 取消包含最佳买价 / 卖价的增量价格档位变更
tick_size_change价格 > 0.96 或 < 0.04最小价格变动单位更新
last_trade_price交易撮合最近成交价、方向和数量
best_bid_ask最佳价格变更最佳买价、卖价和价差(需要启用 custom_feature_enabled)
new_market创建市场新市场详情(需要启用 custom_feature_enabled)
market_resolved市场结算包含获胜结果的结算详情(需要启用 custom_feature_enabled)
用户频道事件
事件类型触发条件描述
trade订单撮合 / 状态变更交易详情,包括做市订单和状态(MATCHED、MINED、CONFIRMED、RETRYING、FAILED)
order下单 / 更新 / 取消订单详情,包含类型(PLACEMENT、UPDATE、CANCELLATION)
订阅

连接后发送 JSON 消息:

{
  "auth": { /* L2 auth for user channel */ },
  "markets": ["0x...conditionId"],
  "assets_ids": ["tokenId1", "tokenId2"],
  "type": "market",
  "custom_feature_enabled": true
}

连接后订阅 / 取消订阅其他资产:

{
  "assets_ids": ["tokenId3"],
  "markets": [],
  "operation": "subscribe",
  "custom_feature_enabled": true
}

完整 WebSocket 指南:https://docs.polymarket.com/developers/CLOB/websocket/wss-overview.md WSS 身份验证:https://docs.polymarket.com/developers/CLOB/websocket/wss-auth.md

RTDS(实时数据流)
wss://ws-live-data.polymarket.com

为加密货币价格和评论流提供低延迟数据流,针对做市商进行了优化。

体育 WebSocket

通过 WebSocket 获取实时体育赛事结果:


数据模型

事件 → 市场 → 代币层级
Event (e.g., "Who will win the 2024 election?")
├── Market 1 (e.g., "Will Candidate A win?")
│   ├── Token: Yes (token_id: "abc...")  price: 0.65
│   └── Token: No  (token_id: "def...")  price: 0.35
├── Market 2 (e.g., "Will Candidate B win?")
│   ├── Token: Yes (token_id: "ghi...")  price: 0.30
│   └── Token: No  (token_id: "jkl...")  price: 0.70
└── ...
  • 价格表示隐含概率(0.00–1.00)。Yes + No 的价格总和约为 $1。
  • Gamma API 中的 clobTokenIds 映射到交易所需的 CLOB 代币 ID。
  • outcomes 和 outcomePrices 数组按 1:1 对应。
负风险事件

在多结果事件中,如果只有一个结果可以结算为“Yes”,则使用负风险架构。任何市场中的一份 No 份额都可以转换为所有其他市场各一份 Yes 份额,从而提高资金效率。

  • 事件中的 negRisk: true 表示存在负风险。
  • negRiskAugmented: true 表示占位结果之后可以进一步明确。

完整 NegRisk 文档:https://docs.polymarket.com/developers/neg-risk/overview.md


常见模式

获取活跃事件
curl -s "https://gamma-api.polymarket.com/events?active=true&closed=false&limit=10" | jq '.[].title'
获取包含市场的事件详情
curl -s "https://gamma-api.polymarket.com/events?slug=will-bitcoin-reach-100k-by-2025" | jq '.[0] | {title, markets: [.markets[] | {question, outcomePrices, clobTokenIds}]}'
获取代币当前价格
curl -s "https://clob.polymarket.com/price?token_id=YOUR_TOKEN_ID&side=buy"
# Returns: { "price": "0.65" }
获取订单簿深度
curl -s "https://clob.polymarket.com/book?token_id=YOUR_TOKEN_ID" | jq '{bids: .bids[:3], asks: .asks[:3]}'
获取中间价
curl -s "https://clob.polymarket.com/midpoint?token_id=YOUR_TOKEN_ID"
# Returns: { "mid": "0.655" }
搜索市场
curl -s "https://gamma-api.polymarket.com/search?query=bitcoin&limit=5" | jq '.markets[] | {question, slug}'
发现体育市场
# Get all supported sports leagues
curl -s "https://gamma-api.polymarket.com/sports" | jq '.'

# Get NBA events
curl -s "https://gamma-api.polymarket.com/events?series_id=10345&active=true&closed=false" | jq '.[].title'
获取用户持仓(Data API)
curl -s "https://data-api.polymarket.com/positions?user=0xYOUR_ADDRESS" | jq '.'
下单(TypeScript)
import { ClobClient, Side, OrderType } from "@polymarket/clob-client";
import { Wallet } from "ethers";

const client = new ClobClient(
  "https://clob.polymarket.com", 137, signer, apiCreds, 2, funderAddress
);

const market = await client.getMarket("CONDITION_ID");
const response = await client.createAndPostOrder(
  { tokenID: "TOKEN_ID", price: 0.50, size: 10, side: Side.BUY },
  { tickSize: market.tickSize, negRisk: market.negRisk },
  OrderType.GTC
);
console.log("Order ID:", response.orderID);
下单(Python)
from py_clob_client.client import ClobClient
from py_clob_client.clob_types import OrderArgs, OrderType
from py_clob_client.order_builder.constants import BUY

market = client.get_market("CONDITION_ID")
response = client.create_and_post_order(
    OrderArgs(token_id="TOKEN_ID", price=0.50, size=10, side=BUY),
    options={"tick_size": market["tickSize"], "neg_risk": market["negRisk"]},
    order_type=OrderType.GTC,
)
print("Order ID:", response["orderID"])

CTF 操作(拆分 / 合并 / 赎回)

条件代币框架支持 USDCe 与结果代币之间的转换:

操作说明使用时机
拆分USDCe → 1 个 Yes 代币 + 1 个 No 代币为做市创建库存
合并1 个 Yes 代币 + 1 个 No 代币 → USDCe退出头寸,取回抵押品
赎回获胜代币 → $1 USDCe市场结算后

Builder 计划

Builder 是将 Polymarket 集成到其应用中的第三方开发者。该计划提供无需许可的集成方式,以及分级速率限制、奖励和收益机会。

资源URL
Builder 简介https://docs.polymarket.com/developers/builders/builder-intro.md
Builder 资料与密钥https://docs.polymarket.com/developers/builders/builder-profile.md
Builder 等级https://docs.polymarket.com/developers/builders/builder-tiers.md
订单归属https://docs.polymarket.com/developers/builders/order-attribution.md
Builder 方法https://docs.polymarket.com/developers/CLOB/clients/methods-builder.md
Relayer 客户端(免 Gas 交易)https://docs.polymarket.com/developers/builders/relayer-client.md
示例(Next.js)https://docs.polymarket.com/developers/builders/examples.md

Builder 凭证与用户凭证相互独立。你可以使用 Builder 凭证为订单添加标签或归属信息,但每位用户仍需要自己的 L2 凭证才能交易。


做市

资源URL
简介https://docs.polymarket.com/developers/market-makers/introduction.md
设置https://docs.polymarket.com/developers/market-makers/setup.md
交易https://docs.polymarket.com/developers/market-makers/trading.md
库存管理https://docs.polymarket.com/developers/market-makers/inventory.md
数据源https://docs.polymarket.com/developers/market-makers/data-feeds.md
流动性奖励https://docs.polymarket.com/developers/market-makers/liquidity-rewards.md
做市商返佣https://docs.polymarket.com/developers/market-makers/maker-rebates-program.md

使用技巧

  • 始终先查看 llms.txt: https://docs.polymarket.com/llms.txt 包含所有端点和指南。
  • 切勿硬编码私钥——请使用环境变量或安全的密钥存储。
  • 价格代表概率(0.00–1.00)。获胜代币可兑换为 1 美元 USDCe。
  • 查询事件时使用 active=true&closed=false,仅获取正在进行且可交易的市场。
  • 代币 ID 来自 Gamma——从 Gamma API 获取事件/市场,然后使用 clobTokenIds 进行 CLOB 查询和交易。
  • 正确设置 negRisk——多结果事件使用负风险。检查事件的 negRisk 字段,并在创建订单时传入该值。
  • 使用 SDK,而不是手动签名——L1/L2 签名流程很复杂(EIP-712 + HMAC-SHA256)。TypeScript 和 Python 客户端会处理这些操作。
  • 必须设置授权额度——下单前,出资方地址必须为 Exchange 合约设置 USDCe 授权额度(买入),或设置条件代币授权额度(卖出)。
  • 结合使用 REST + WebSocket——使用 REST 获取初始状态,使用 WebSocket 获取实时变更。
  • 遵守速率限制——受到限流时实现退避。使用批量端点(/books、/prices)减少请求数量。
  • 签名类型很重要——独立钱包使用类型 0(EOA),大多数 Polymarket.com 账户使用类型 2(Gnosis Safe)。类型不正确会导致身份验证失败。
  • 代理钱包的出资方 ≠ 签名方——出资方是代理钱包地址(可在 polymarket.com/settings 查看),而不是私钥对应的 EOA 地址。
  • 受地域限制约束——交易前请查看 https://docs.polymarket.com/developers/CLOB/geoblock.md。
  • 持续监控订单有效性——实时检查余额、授权额度和链上取消操作。滥用行为会导致被列入黑名单。

错误处理

适用标准 HTTP 错误代码。API 会返回包含详细说明的 JSON 错误响应。

  • 请求受限(触发速率限制):请求会延迟/排队处理,而非立即拒绝。请实现退避。
  • 身份验证错误:请确认私钥、签名类型、出资方地址和 API 凭据均匹配。
  • 余额不足:检查出资方地址是否有足够的 USDCe 或条件代币,并计入现有未结订单的占用金额。
  • 订单被拒绝:每个市场的最大订单规模 = balance - sum(openOrderSize - fillAmount)。
  • 地域限制:禁止在受限地区进行交易。

结算

市场由UMA 乐观预言机结算。这是一种基于智能合约的乐观预言机。结算结果可通过 UMA 协议提出争议。


链上资源

资源URL
Exchange 合约源码GitHub
Exchange 合约文档GitHub
安全审计(Chainsecurity)审计 PDF
负风险适配器Polygonscan
子图概览https://docs.polymarket.com/developers/subgraph/overview.md
区块链数据资源https://docs.polymarket.com/developers/builders/blockchain-data-resources.md
Polygon 上的 USDC0x2791bca1f2de4661ed88a30c99a7a9449aa84174

更新日志

请关注 Polymarket 更新日志,了解 CLOB、API、UI 和移动应用的更新。

评论

支持 Markdown