跨场所套利者的眼睛:如何用PMXT Router一键匹配同一事件并在多家交易所比价
【免费下载链接】pmxtCCXT for prediction markets. PMXT is a unified API for trading on Polymarket, Kalshi, and more.项目地址: https://gitcode.com/gh_mirrors/pm/pmxt
PMXT 是预测市场领域的 ccxt——一套统一 API,覆盖 Polymarket、Kalshi、Limitless 等 15+ 交易所。它的核心组件 PMXT Router 只需一个 API Key,就能一键匹配不同场所上的"同一事件",并横向对比各所的买价卖价,是跨场所套利者的眼睛。🎯
为什么跨场所比价这么难
同一件事,不同平台的问法完全不同:
| Polymarket 的标题 | Kalshi 的标题 |
|---|---|
| "Will BTC exceed $100k by Dec?" | "Bitcoin above $100,000 on Dec 31" |
人工逐个平台搜索、肉眼比对标题、手动抄录价格,既费时又容易漏掉机会。更棘手的是,很多匹配不是简单的"同一问题",还存在子集、超集等复杂关系,肉眼很难判断。
认识 PMXT Router:一个 API Key 的跨场所情报层
Router 是 PMXT 的跨场所智能层:背后是一个持续更新的统一目录库,实时收录各场所的市场、事件与结果。搜索和匹配查的是这份目录,而不是逐个调用各平台 API——典型响应仅约10ms,而一次真正的跨所实时轮询往往要 2~5 秒。
三大核心能力:
| 能力 | 说明 |
|---|---|
| 🔍 跨场所搜索 | 一条关键词同时搜索目录中所有场所的市场/事件 |
| 🔗 市场/事件匹配 | 给定任一场所的市场,自动找出其他场所的"同款",附带关系类型与置信度 |
| ⚖️ 跨所比价 | 并排展示同一问题的 bid/ask,一眼看出哪里买得最便宜、哪里卖得最贵 |
Router 只需一个 PMXT API Key,无需任何场所凭证即可搜索、匹配、比价。概览见 docs/router/overview.mdx。
三步上手:搜索 → 匹配 → 比价
第一步:跨场所搜索,锁定目标市场
fetch_markets(或fetch_events)一次关键词即可搜遍全部目录场所:
import pmxt router = pmxt.Router(pmxt_api_key="pmxt_live_...") markets = router.fetch_markets(query="fed rate cut", limit=5)搜索支持按类别、场所过滤,默认按 24h 成交量排序。接口细节见 docs/router/search.mdx。
第二步:一键匹配"同一事件"
把上一步返回的任意一个市场直接传给fetch_matched_market_clusters,Router 会返回该问题在所有场所的匹配簇(cluster),每条匹配都带关系类型和置信度:
clusters = router.fetch_matched_market_clusters(markets[0])关系类型(relation)速查——这是识别真套利机会的关键 💡:
| 关系 | 含义 |
|---|---|
identity | 结算条件完全相同,真正的跨场所套利对象 |
subset/superset | 一窄一宽,如"赢得大选" vs "赢得普选票" |
overlap | 相关但互不包含 |
disjoint | 互斥,不可能同时为 YES |
匹配由向量相似度 + LLM 校验完成,即使两个平台标题、区间、表述完全不同也能识别。如果要匹配"整个事件"(一个父事件下挂多个子市场),改用fetch_matched_event_clusters。细节见 docs/router/matching.mdx 和 docs/router/event-matching.mdx。
第三步:横向比价,锁定价差
compare_market_prices返回同一 identity 匹配在各场所的并排 bid/ask:
prices = router.compare_market_prices(market_id=markets[0].market_id) # polymarket bid 0.60 ask 0.65 # kalshi bid 0.58 ask 0.63 # limitless bid 0.61 ask 0.66买价最低 + 卖价最高的场所组合,就是价差所在 💹。参数与返回结构详见 docs/router/prices.mdx。
从匹配到下单:Router 负责"看",场所客户端负责"做"
Router 目前是只读的(智能订单路由已在路线图上)。真正下单时使用对应场所的客户端,并注意ID 地址空间:Router 返回的是目录 ID,直接下单需要该场所的原生 ID——先用场所客户端按标题反查一次、核对结算条件后即可下单。完整工作流示例见 docs/router/prices.mdx。
⚠️ Router 给出的是候选匹配与置信度,下单前请人工核对标题与结算条件,决策权始终在你。
快速开始:安装 SDK 与获取密钥
- 安装 SDK:
pip install pmxt(Python ≥ 3.8)或npm install pmxtjs(Node ≥ 18) - 在 PMXT 官方控制台获取以
pmxt_live_开头的 API Key,立即可用 - 创建 Router 实例,开始搜索、匹配、比价
源码位置:Python SDK 的 Router 见 sdks/python/pmxt/router.py,TypeScript 见 sdks/typescript/pmxt/router.ts,核心服务实现见 core/src/router/Router.ts。支持场所清单见 docs/concepts/venues.mdx。
常见问题
Q:市场簇(market cluster)和事件簇(event cluster)怎么选?单个可交易问题 → 市场簇;一个父事件下挂多个子市场(如各队夺冠赔率)→ 事件簇。
Q:匹配准不准?每条匹配边都有 0~1 的置信度,可用min_confidence过滤低质量匹配;开启include_raw_matches还能拿到两两匹配明细,方便人工复核。
Q:能直接通过 Router 下单吗?暂不能,Router 只读;"跨所最优执行"的智能订单路由已列入路线图。
【免费下载链接】pmxtCCXT for prediction markets. PMXT is a unified API for trading on Polymarket, Kalshi, and more.项目地址: https://gitcode.com/gh_mirrors/pm/pmxt
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考