研究文章
N / 260905

为什么 Polymarket 的 Chainlink 结算,让 BTC 5 分钟机器人更难研究?

从 Binance、Chainlink BTC/USD TWAP 60s 和 Polymarket 三层数据结构出发,讨论为什么结算机制提高了 BTC 5 分钟机器人回测与实时研究的门槛,以及这种差异本身可能带来的研究价值。

如果你在研究 Polymarket BTC 5 分钟 Up/Down,一个很自然的想法是:

既然标的是 BTC,那直接使用 Binance 的 BTCUSDT 数据研究,不就够了吗?

从传统量化研究的角度看,这个思路完全合理。

Binance 可以提供:

  • 5 分钟 K 线;
  • 成交量;
  • 逐笔成交;
  • 买卖方向;
  • 订单簿;
  • 长时间连续历史数据。

如果一个市场最终也是按照 Binance 的 BTCUSDT 开盘价和收盘价判断 Up / Down,那么历史研究会非常直接:

5m Close >= 5m Open
→ UP

5m Close < 5m Open
→ DOWN

但 Polymarket BTC 5 分钟市场并不是这样结算的。

当前市场规则明确指定,结算依据是 Chainlink BTC/USD TWAP 60s Data Stream,而不是 Binance、Coinbase 或任何其他单一现货市场。

这一个看起来只是“换了价格源”的变化,实际上把问题从:

预测下一根 BTC 5 分钟 K 线。

变成了:

预测真实 BTC 市场如何变化,同时理解 Chainlink 如何描述这个市场,并最终判断 Polymarket 会如何结算。

对机器人来说,这已经不是同一个研究问题了。


首先需要区分一件事:

Chainlink 不是交易所。

Binance 是一个真实的交易场所。

里面有真实买单、卖单和成交,因此可以产生:

Price
Volume
Trades
Order Book
OHLC

Chainlink 的角色不同。

它提供的是一个经过多层数据聚合后的市场参考价格。

按照 Chainlink 对 Data Feeds 的说明,上游数据提供商会从多个中心化和去中心化交易市场收集价格,并考虑时间、成交量以及异常值;随后多个 Chainlink 节点继续聚合这些结果,形成最终的 oracle report。

可以把它简化理解成:

Binance ─┐
Coinbase ├─→ 数据提供商聚合 ─→ Chainlink 节点聚合 ─→ BTC/USD Reference Price
其他市场 ┘

所以 Chainlink 的目标不是告诉你:

Binance 现在是多少钱?

而更接近:

当前更广泛市场里的 BTC/USD 参考价格是多少?

从结算角度看,这有一个非常明显的优点:

Polymarket 不需要把一个市场的输赢完全绑定在单一交易所上。

如果某一家交易所短时间出现:

  • 异常成交;
  • 流动性下降;
  • 单一价格尖刺;
  • API 或市场故障;

最终结算受到的影响会更小。

但从机器人研究角度看,这也意味着:

Binance BTCUSDT 和 Polymarket 的真实结算标签不再天然相同。


2. 第一个研究难点:历史标签没那么容易获得

如果使用 Binance 做回测,一年的 BTC 5 分钟历史数据很好获得。

理论上一年大约有:

365 × 24 × 12
≈ 105,120 个 5m 窗口

每一根 K 线都天然带有:

Open
High
Low
Close
Volume

所以方向标签几乎是免费的。

但如果真正按照 Polymarket 的 Chainlink 结算标准研究,问题立刻变得复杂。

你需要知道:

  • 每个 5 分钟窗口开始时的 Chainlink 参考状态;
  • 结算时所使用的 TWAP 数据;
  • 时间戳是否严格对齐;
  • 数据中间有没有缺失;
  • 历史数据是否与当时实际使用的数据流一致。

真正困难的甚至还不是策略。

而是:

历史数据在哪里?

Chainlink 的实时数据可以获取,但它并不像 Binance Kline API 那样,为普通研究者提供一个可以轻松匿名下载多年秒级历史数据的接口。

这会产生一个很实际的数据壁垒。

大量 BTC 5 分钟策略很容易使用 Binance 做研究。

但如果交易最终发生在 Polymarket,而 Polymarket 最终按照 Chainlink 结算,那么:

研究数据源
≠
最终结算数据源

这两个世界之间存在一个很小、但不能忽略的缝隙。


另一个很重要的区别是:

Chainlink 最终给机器人的主要输出是价格,而不是一个完整交易市场。

机器人从 Chainlink 价格里无法直接看到:

  • 最近一分钟成交了多少 BTC;
  • 主动买入量和主动卖出量;
  • 买一卖一深度;
  • 订单簿是否突然变薄;
  • 某次上涨究竟伴随着强成交,还是短暂价格跳动。

这些都是短周期交易策略非常常见的输入。

需要注意:

Chainlink 输出没有 Volume,不代表 Chainlink 上游价格形成完全不考虑 Volume。

Chainlink 官方资料明确提到,其数据提供商会综合多个市场,并考虑成交量、流动性和异常值等因素。

问题在于:

这些信息在最终输出时已经被压缩进了一个参考价格。

对结算来说,这是非常合理的。

因为结算真正需要的是一个可靠价格。

但对于量化研究来说,这意味着部分市场微观结构信息消失了。

所以:

Chainlink 很适合回答“最终按照什么价格结算”,但它无法单独回答“BTC 为什么正在这样运动”。


4. TWAP 60s 又增加了一层差异

现在 BTC 5 分钟市场使用的是:

Chainlink BTC/USD TWAP 60s Data Stream

TWAP 是:

Time-Weighted Average Price,时间加权平均价格。

这意味着 Polymarket 使用的并不是某个交易所在最后一秒刚好出现的现货价格。

在短周期市场里,这一点非常重要。

假设 BTC 在一个 5 分钟窗口里,大部分时间都处于起始参考价下方:

100,000
99,970
99,960
99,980

但是最后十几秒突然上涨:

99,990
100,005
100,015

如果只看 Binance 的 5 分钟 Open / Close:

Open  = 100,000
Close = 100,015

→ UP

但一个包含时间平均特征的 Chainlink TWAP 参考值,不一定会因为最后几秒穿过 100,000 就立即表现出同样的方向。

这也是为什么:

越接近开盘价的 BTC 5 分钟窗口,数据源和结算方式之间的差异越值得关注。

如果 BTC 5 分钟已经上涨 20、30 甚至更多 basis points,几美元级别的数据差异通常很难改变 Up / Down。

但如果最终只上涨:

1 bp
2 bp
3 bp

那么:

  • Binance 与广泛市场的微小基差;
  • Chainlink 聚合后的参考价格;
  • TWAP 的时间平滑;

都有可能影响最终方向。

所以真正危险的区域不是“大行情”。

而是:

接近 0 的小实体 K 线。


5. Polymarket 是不是故意增加机器人研究难度?

这是一个很容易产生的猜测。

因为从研究者视角看,结果确实如此:

Binance:
历史数据丰富
量价信息完整
回测简单

Chainlink:
历史高频数据获取更困难
没有独立成交量
还有聚合与 TWAP

客观效果就是:

机器人研究的基础设施门槛提高了。

但我目前并不认为有足够证据说明:

Polymarket 使用 Chainlink 的目的,就是为了故意增加机器人的研究难度。

一个很直接的原因是,Polymarket 自己其实提供了相当完整的程序化交易基础设施。

官方开发文档提供:

  • REST API;
  • CLOB API;
  • WebSocket;
  • Python / TypeScript / Rust SDK;
  • 专门的 Market Maker 文档;
  • 实时订单簿与市场生命周期数据。

甚至 Market Maker 文档本身就指导参与者连接数据源、自动报价和管理订单。

如果平台的目标是阻止机器人,它没有必要把交易基础设施做得这么程序化。

更合理的解释是:

Chainlink 和 TWAP 首先解决的是结算可靠性问题,而研究难度上升只是这个选择带来的副作用。


6. 为什么这种结算结构对 Polymarket 有意义?

预测市场和普通交易所存在一个很大的区别:

最终一定要有一个确定的 Resolution Source。

如果 BTC 5 分钟市场直接规定:

Binance 最后一秒 >= Binance 五分钟前
→ UP

那么整个市场的最终输赢都会依赖:

一个交易所
+
一个非常短的时间点

对于一个交易量较大的二元市场,这并不是非常理想。

Chainlink 的多来源聚合降低了对单一交易所的依赖。

TWAP 又进一步降低了某一个瞬间价格对结果的影响。

可以简单理解成:

单一交易所异常
        ↓
影响降低

单一瞬间尖刺
        ↓
影响降低

最后几秒随机噪声
        ↓
影响降低

从市场结算设计来看,这其实是合理的。

只是对于量化研究者来说:

“更难操纵的结算源”往往也是“更难完整复现的研究数据源”。

这是同一件事的两个侧面。


7. BTC 5m 的数据结构实际上应该拆成三层

研究到这里,我认为把 Binance 和 Chainlink 二选一并不是最好的方式。

更合理的结构是三层。

第一层:真实 BTC 市场

例如 Binance。

它提供:

Price
Volume
Trades
Order Book
Market Microstructure

它回答的问题是:

BTC 市场现在正在发生什么?

它提供:

Aggregated BTC/USD Reference Price
TWAP Settlement Reference

它回答的问题是:

Polymarket 的结算价格体系现在怎么看 BTC?

第三层:Polymarket

Polymarket 自己还有:

UP / DOWN Price
Order Book
Liquidity
Spread
Trading Flow

它回答的问题是:

市场参与者现在给 Up / Down 定了多少概率?

所以一个更完整的 BTC 5 分钟机器人,实际上在同时面对三个市场状态:

真实 BTC 市场
      ↓
Chainlink 结算状态
      ↓
Polymarket 概率市场

这三个状态高度相关。

但不完全相同。

而真正有研究价值的地方,很可能恰恰存在于:

它们不相同的时候。


假设一个 BTC 5 分钟市场还有 30 秒结束。

状态 A:

Binance      → UP
Chainlink    → UP
Polymarket   → UP 0.72

状态 B:

Binance      → UP
Chainlink    → DOWN
Polymarket   → UP 0.58

虽然 Binance 都显示 Up,但这两个状态显然不是同一种市场。

第二种情况意味着:

真实交易市场已经发生变化,但 Chainlink 的结算参考状态仍然没有完全同步到同一个方向。

这时候:

Binance Direction
-
Chainlink Direction

可能就不应该被简单看作“数据误差”。

它可能描述的是一种真实的短期状态差异。

例如:

  • 现货价格变化速度;
  • TWAP 跟随程度;
  • 距离结算还有多少时间;
  • Polymarket 是否已经对这种变化完成定价。

这让我觉得,一个有意思的研究方向不是:

怎样把 Binance 修正得尽量像 Chainlink?

而是:

Binance 与 Chainlink 出现分歧时,后续 10 秒、30 秒、60 秒会发生什么?

如果这种 divergence 有稳定的统计结构,它本身就可能成为一个模型特征。


9. 对机器人来说,真正合理的架构可能不是“替换数据源”

我现在更倾向于下面这种结构:

             Binance / Exchange Data
          Price / Volume / Trades / Book
                     │
                     │
             市场方向与状态研究
                     │
                     ▼
                 Decision
                     ▲
                     │
          Chainlink BTC/USD TWAP
             结算状态与参考价
                     │
                     ▼
              Polymarket CLOB
          Price / Spread / Liquidity

这里没有任何一个数据源能够完全替代另外两个。

Binance 负责提供信息密度。

Chainlink 负责提供结算真实性。

Polymarket 负责提供交易价格。

机器人真正需要解决的不是:

哪一个数据源最好?

而是:

怎样理解这三个数据源之间的关系。


结论

我不认为有证据表明 Polymarket 使用 Chainlink,是为了故意增加机器人策略研究的难度。

但从实际结果看:

它确实显著提高了研究门槛。

原因包括:

  1. Chainlink 历史高频数据不像 Binance Kline 那样容易批量获取;
  2. Chainlink 不是交易所,没有独立的成交量和订单簿;
  3. Chainlink 的价格本身已经经过多来源聚合;
  4. BTC 5 分钟现在进一步使用 TWAP 数据流;
  5. Binance 方向和最终结算方向在临界行情下可能出现差异;
  6. 因此仅使用交易所 K 线建立历史标签,并不能完全复现 Polymarket 的真实结算环境。

但换一个角度看,这也可能意味着新的研究空间。

如果:

Binance
Chainlink
Polymarket

永远完全同步,那么第二、第三个数据源的研究价值反而会非常有限。

真正有意思的地方,是它们偶尔不同步。

特别是在 BTC 5 分钟这种极短周期市场里:

数据源之间那些很小的差异,可能最终比某一个单独指标更值得研究。

这也是接下来我准备继续验证的问题。


References

项目:

Polymarket BTC 5m Bot

本文仅用于技术研究、教育和信息记录,不构成投资、交易或财务建议。本文讨论的是数据结构与研究方法,不代表任何策略能够产生未来收益。