行情数据 API 概览
实时与历史行情数据:Ticker 价格、K 线、订单簿深度、成交,以及交易对元信息。
REST 接口适合一次性查询和历史数据;WebSocket 流则适合低延迟的持续更新。
| 使用场景 | 推荐方式 |
|---|---|
| 最新价格快照 | REST ticker |
| 持续价格更新 | WebSocket ticker |
| 历史 K 线 | REST klines |
| 实时 K 线 | WebSocket klines |
| 订单簿快照 | REST depth |
| 实时订单簿 | WebSocket depth |
| 最近成交 | REST trades |
| 交易对元信息 | REST exchange-info |
鉴权
所有行情数据接口都可公开访问,无需 API Key。按 鉴权 章节描述对请求进行签名是可选的,可提升每个 Key 的限流配额。
时间戳
行情数据模块的所有时间戳字段均使用 Unix 毫秒(整数),例如 open_time、close_time、time、serverTime、ts 等。这与 Binance 现货/合约的 OHLCV 数据约定一致,并与策略模块(使用 ISO 8601 字符串)不同。
交易对命名
交易对由基础资产与计价资产以大写形式直接拼接而成,无分隔符,如 BTCUSDT、ETHUSDT、SOLUSDC。不接受小写形式,否则将返回 INVALID_PARAMETER。
时间间隔
interval 参数接受以下取值:
| 分组 | 取值 |
|---|---|
| 分钟 | 1m、3m、5m、15m、30m |
| 小时 | 1h、2h、4h、6h、8h、12h |
| 天 | 1d、3d |
| 周 | 1w |
| 月 | 1M |
请注意,1M(月)使用大写以与 1m(分钟)区分。
最佳实践
- WebSocket 流适用于实时数据和交易信号。订阅一次即可持续消费推送流。
- REST 接口适用于历史回填、一次性快照,以及无需实时性的数据。
- 切勿以亚秒级频率轮询 REST 接口。 低于 1 秒的轮询频率会触发限流,且运行上脆弱——应改用 WebSocket。
- 将 REST
depth快照与market.depth流结合使用,以引导本地订单簿。 - 所有十进制数值(
price、qty、volume等)应作为字符串处理;若精度对账务有影响,请勿在不使用十进制库的情况下解析为浮点数。