选购指南

最佳的 Kalshi 订单簿数据,以及如何挑选

你能找到的大多数 Kalshi 数据,都是每小时采样一次的最新价——画个走势图够用,做回测却毫无价值。下面讲清楚:到底是什么,把一个真正能拿来交易的 Kalshi 数据源,和一个只是"看起来像数据"的来源区分开来。

决定数据能否回测的五大标准

1. 精度:事件驱动,而非按固定间隔采样

按固定时钟采集的快照——每小时、每分钟、每隔几百毫秒——会漏掉每两次采样之间发生的一切。Kalshi 的短期市场在 5 到 60 分钟内就会结算,因此按间隔采样在整个市场生命周期里只能捕捉到寥寥几帧。

DepthFeedDepthFeed 在每一次订单簿与价格变动事件发生时即时记录——在 Polymarket 上中位交付约 10ms,在 Kalshi 上持续进行全深度轮询——因此两次采样之间的内容不会有任何丢失。

2. 深度,而非最新价

一个最新成交价(或单一中间价)掩盖了价差,也掩盖了每一档上挂着的挂单数量。没有完整的盘口阶梯,你就无法衡量滑点,而一个假定你以中间价成交的回测,就是一个会骗人的回测。

DepthFeedDepthFeed 提供完整的买卖盘订单簿,双边、每一档俱全——在 Kalshi 上每侧最多 100 levels——因此成交是按当时真实存在的流动性来撮合的。

3. 覆盖范围:一套 schema,覆盖每个场所与每种资产

单一场所的数据集,逼着你为每个市场拼凑出不同的格式,每新增一个就得重写一遍加载器。资产覆盖不全,则悄悄限定了你究竟能测试哪些策略。

DepthFeedDepthFeed 以一套稳定的列式 schema 提供 Polymarket、Kalshi 与 Limitless 的数据,覆盖七种资产——BTC、ETH、SOL、XRP、DOGE、BNB、HYPE——因此同一套代码就能读取每一个场所。

4. 交付方式:实时 API 与数据流,而非静态文件

一个可下载的 CSV 或 Parquet 文件是一份冻结的快照——它会过期,你得重新下载,而且它永远不会变成你真正用来交易的东西。研究用的格式和生产用的格式最终各不相同,于是为了上线,你得把一切重新打通。

DepthFeedDepthFeed 是一个用于历史数据的计量 REST API,以及一个用于当下行情的实时 WebSocket 流,两者推送完全相同的 JSON。先回测,再把同一套代码指向实时数据流去交易。

5. 值得信赖的真实成交

回测的全部意义,就在于弄清一个策略当时究竟能否成交、以及以什么价格成交。只有当你重放该策略当时真正会去成交的那本订单簿、并以足够精细的时间戳与驱动行情的那波波动对齐时,这个答案才存在。

DepthFeed每一份 DepthFeed 快照都带有以 epoch-millis 表示的交易所时间戳与接收时间戳,并关联到一条高频的标的价格,因此盘口状态能与现货行情逐 tick 对齐。

常见选项的不足之处

人们寻找 Kalshi 数据时,通常会想到四类东西。每一类都有各自的用处——但没有一类是你用来回测的订单簿。

交易所自家的 API
它暴露当前市场、成交以及实时盘口顶部,却不提供历史订单簿快照——根本无从重放当时那本订单簿的样子。
免费的每小时归档
给你的是每小时采样一次的最新价。那只是一个可能只存活了五分钟的市场里的一帧——没有价差、没有深度,没有任何可供撮合成交的东西。
最新价与成交流水 API
告诉你的是成交打印出来的价格,而非当时挂着的单。你看到的是已执行的成交,却永远看不到其背后的流动性,于是滑点和成交概率始终是隐形的。
单一场所的文件导出
往往带有真实深度,但只针对一个场所、采用一种定制格式、以静态下载的方式提供——没有实时数据流、没有第二个场所,而且一落地就已过期。

为什么选 DepthFeed

DepthFeed 正是为 Kalshi 同时跨过这五道门槛而打造的数据源:事件驱动的全深度采集,既以历史数据形式通过简洁的 REST API 提供,也通过实时 WebSocket 流以完全相同的 JSON 推送。完整的 Kalshi 订单簿与价格数据,让你既能对着真实流动性回测,又能用同一套代码直接交易。

你的疑问,已解答。

最佳来源应当:记录每一次订单簿变动(而非按固定间隔采样),提供双边完整的买卖盘阶梯(而非仅有最新价),以一套 schema 覆盖你所交易的场所与资产,并以相同格式交付历史数据与实时数据,让你能用回测过的那套代码直接交易。DepthFeed 正是为 Kalshi 做到这一切而打造的:在 Polymarket 上中位实时交付约 10ms,对 Kalshi 进行持续的全深度采集。