如果你刚接触量化交易,想用 Binance、Bybit 这些中心化交易所(CEX)的历史高频数据来回测自己的策略,但又不知道 WebSocket 怎么连、数据怎么存、API Key 从哪来——这篇文章就是为你写的。我会从最基础的 Python 安装开始,一步步带你把 Tardis.dev 的逐笔成交、Order Book、强平、资金费率数据拉到自己电脑里。

文章里我会用一个对国内开发者更友好的方案:立即注册 HolySheep AI。它不仅提供大模型 API 中转(汇率 ¥1=$1 无损,比官方 ¥7.3=$1 节省 85% 以上),还能直接中转 Tardis.dev 的加密货币高频数据,国内直连延迟 <50ms,比裸连国外服务器稳定得多。

一、先搞清楚:Tardis.dev 到底是什么?

Tardis.dev 是一个专门做加密货币历史行情数据的平台。它的数据特点可以用四个字形容:「全、快、准、稳」:

但它有个小问题:服务器在海外,国内直连经常掉线、延迟动辄 300ms 以上。这就是为什么我推荐走 HolySheep 的中转通道。

二、准备工作:装好 Python 和必要的库

假设你电脑是 Windows 系统(Mac 也类似),按下面步骤操作:

步骤 1:下载 Python

步骤 2:打开命令行验证

步骤 3:安装 WebSocket 客户端库

在命令行里执行下面这段,把 websockets 和 pandas 一起装上:

pip install websockets pandas nest_asyncio

装完之后,你电脑上就具备了「连接 WebSocket、收数据、存表格」的全部能力。

三、注册 HolySheep 拿到 API Key

访问 HolySheep 注册页面,用微信扫码即可注册,新用户赠送免费额度,足够你跑完一整套回测。

注册完成后:

四、第一段代码:连接到 Tardis WebSocket

新建一个文件叫 tardis_test.py,把下面代码复制进去。注意把 YOUR_HOLYSHEEP_API_KEY 换成你自己的 key。

import asyncio
import websockets
import json

async def hello_tardis():
    # HolySheep 中转的 Tardis WebSocket 地址
    uri = "wss://api.holysheep.ai/tardis/v1/data-feeds/binance.futures"
    
    # 订阅 Binance USDT 永续合约的逐笔成交 + 10档深度
    subscribe_msg = {
        "api_key": "YOUR_HOLYSHEEP_API_KEY",
        "data_type": "trades",
        "symbols": ["btcusdt", "ethusdt"],
        "depth_level": 10  # 仅当订阅 order_book 时生效
    }
    
    async with websockets.connect(uri) as ws:
        # 发送订阅消息
        await ws.send(json.dumps(subscribe_msg))
        print("订阅成功,等待数据中...")
        
        # 持续接收 5 条消息就退出(演示用)
        for i in range(5):
            msg = await ws.recv()
            data = json.loads(msg)
            print(f"第 {i+1} 条: {data}")

运行

asyncio.run(hello_tardis())

在命令行里运行 python tardis_test.py,你应该能看到类似下面的输出:

订阅成功,等待数据中...
第 1 条: {'symbol': 'BTCUSDT', 'price': 67234.5, 'qty': 0.012, 'side': 'buy', 'ts': 1730000000123}
第 2 条: {'symbol': 'ETHUSDT', 'price': 3456