交易所动态

币安 SBE 是什么:Simple Binary Encoding 二进制编码在 REST、WebSocket 和行情流中的用法(2026)

6 分钟

简短回答

币安 SBE 指的是 Simple Binary Encoding(简单二进制编码),是币安现货 API 可以替代 JSON 返回的一种紧凑二进制格式,目的是让交易程序在收发和解析数据上花更少的时间。它按请求开启:REST 接口在请求头里加 Accept: application/sbe 和 X-MBX-SBE: <id>:<version>;WebSocket API 在连接地址里加 responseFormat=sbe 以及模式(schema)编号和版本;实时行情则要连接单独的 stream-sbe.binance.com,并使用 Ed25519 类型的 API Key。截至 2026 年 10 月 21 日,币安公开仓库里最新的生产环境模式是 id 3、version 5,发布于 2026 年 7 月 7 日。

收起完整分析

用大白话解释 SBE

JSON 是文本格式。每一个价格、数量和字段名都以可读字符的形式传输,你的程序收到后还得把文字重新转换成数字。SBE 是 FIX 交易社区(FIX Trading Community)发布的标准,它用 XML 模式文件事先定义好字段布局,然后以固定的二进制字段传输同样的信息。收发双方都提前知道每个字段在哪个位置,所以消息更小,解码时只需按已知位置读取字节。币安自己的常见问题文档对 SBE 的描述很直接:一种用于低延迟场景的序列化格式。

谁需要它?主要是跑自动化策略的量化团队、做市商,以及需要在本地维护订单簿、对毫秒和 CPU 占用很敏感的人。如果你每天只在 App 上手动下几单,SBE 对你没有任何影响;如果你的机器人要同时读取几十个交易对的深度更新,它能明显减少带宽和解析开销。

币安在哪些接口支持 SBE

文章表格:可横向滑动,或聚焦表格区域后使用方向键。

接口如何请求 SBESBE 不可用时会怎样
现货 REST API请求头 Accept: application/sbe 加 X-MBX-SBE: <ID>:<VERSION>只写 application/sbe:若交易所未开启 SBE,返回 HTTP 406;同时写 application/sbe 和 application/json:自动回退为 JSON
现货 WebSocket API连接地址加 responseFormat=sbe&sbeSchemaId=<ID>&sbeSchemaVersion=<VERSION>握手阶段返回 HTTP 400,握手错误信息为 JSON
FIX API参见币安 FIX 文档中的 SBE 章节按 FIX 规则拒绝
SBE 行情流连接 stream-sbe.binance.com(或 9443 端口),在 X-MBX-APIKEY 头里放 Ed25519 API Key独立域名;JSON 行情仍在原来的行情服务器

币安的常见问题文档写明,现货的 REST API、WebSocket API 和 FIX API 都支持 SBE。我们查阅的是现货文档;合约接口是否使用同样的请求头,请先查合约文档再下结论。如果你还在挑选在哪个平台跑机器人,可以先看本站的 币安交易所介绍页,上面汇总了产品和费率。

第一次发 SBE 请求的步骤

  1. 选择模式文件。 从币安 GitHub 上的 binance-spot-api-docs 仓库下载模式文件:实盘用 spot_prod_latest.xml,现货测试网用 spot_testnet_latest.xml。FIX 用户需要单独的 spot_fix_prod_latest.xml 等文件。
  2. 生成解码器。 币安推荐使用 Real Logic 的开源项目 simple-binary-encoding:克隆仓库,用 Gradle 编译,再用其中的 SbeTool 代码生成器读取模式文件生成代码。币安还提供了 Java、C++ 和 Rust 三个示例程序,演示如何解码"交易规则信息"(exchangeInfo)的返回结果。
  3. 发一个测试请求。 官方示例是对 BTCUSDT 调用 REST 接口 exchangeInfo,请求头为 Accept: application/sbe 和 X-MBX-SBE: 1:0。实际使用时,填写与你的解码器对应的 id 和版本。
  4. 测试阶段保留 JSON 回退。 在 Accept 头里同时写 application/sbe 和 application/json,这样模式头写错或 SBE 被关闭时,返回的是 JSON 而不是错误,排查问题更方便。等解码器稳定后,如果你希望出错时立刻报警,可以去掉 JSON。
  5. 注意单位。 SBE 返回的时间戳单位是微秒,而 JSON 默认是毫秒。小数字段以尾数和指数两个字段分开传输,你的代码需要自己合并;模式文件里的 mbx:exponent 属性会告诉你每个尾数对应哪个指数字段。

SBE 行情流

实时行情方面,币安专门开了一个域名 stream-sbe.binance.com。它和普通 JSON 行情流的规则有几处不同,很容易踩坑:

  • 必须使用 API Key,而且只接受 Ed25519 类型的 Key。读取公开行情不需要额外权限,但如果这个 Key 设置了 IP 白名单,白名单仍然生效。
  • 单个连接最长只能保持 24 小时,到点会被断开,要提前写好重连逻辑。
  • 服务器每 20 秒发送一次 ping,一分钟内收不到 pong 就会关闭连接。
  • 每个连接最多订阅 1,024 个数据流;客户端每秒最多发送 5 条消息;每个 IP 每 5 分钟最多发起 300 次连接。
  • 订阅请求用 JSON 文本帧发送,行情数据以 SBE 二进制帧推送。服务器即将关闭时,会推送 JSON 格式的 serverShutdown 事件提醒你重连。

可用的数据流包括:逐笔成交(<symbol>@trade,实时)、最优买卖价(<symbol>@bestBidAsk,实时)、增量深度(<symbol>@depth,每 20 毫秒)和有限档深度(<symbol>@depth20,每 50 毫秒)。最优买卖价流采用"自动剔除"机制:系统负载高时,如果某个交易对还有旧的更新没发出去,就丢掉旧的、只推最新的那一条,这通常正是交易机器人想要的效果。

模式版本:你的机器人为什么会突然失灵

币安用两个数字管理模式版本:出现不兼容的改动时 id 加一,version 归零;兼容的改动只让 version 加一。新模式上线后,旧模式即使只差一个小改动也会被标记为"已弃用",弃用后至少继续支持六个月,之后才"退役"。请求中指定已退役的模式,REST 和 WebSocket 都会返回 HTTP 400。

币安生产环境的生命周期文件目前显示:3:5 为最新版本,3:4 和 3:3 已弃用,从 1:0 到 3:2 的更早版本都已退役,其中 3:2 是最近一个退役的,日期为 2026 年 9 月 25 日。如果你的解码器基于旧模式,弃用版本的请求会以最高兼容版本返回,并在 REST 响应里带上 X-MBX-SBE-DEPRECATED 头,在 WebSocket 里把 sbeSchemaIdVersionDeprecated 字段设为 true。请把这些标记记录到日志里,它们是程序彻底失效之前的预警。

如果你在多个平台同时跑机器人,可以参考我们之前整理的 币安 SBE 与 Coinbase 行情模式管理对照清单。

要不要换成 SBE?

如果延迟或带宽确实是瓶颈,比如订阅的交易对很多、要读深度流、或者服务器托管在交易所附近,就值得切换。如果你只交易少数几个币对、看重调试方便,或者用的库已经把 JSON 处理得很好,继续用 JSON 就行。折中的做法是:只在最吃性能的行情链路上用 SBE,账户和下单接口先保留 JSON,等解码器跑稳了再说。

怎么行动

如果你正在开发币安量化机器人,先在现货测试网上测试,等解码器能正确处理模式弃用之后再切到实盘账户。还没有币安账户的话,可以通过 本站币安页面 用邀请码 11350287 注册,页面上也列出了当前的费率和产品。扩大策略规模之前,可以先在 费率对比页 把币安的交易成本和其他平台比一比。

常见问题速答

币安的 SBE 是什么意思? Simple Binary Encoding,即简单二进制编码,是 FIX 交易社区制定的二进制序列化标准,币安用它提供低延迟的 API 返回。

币安 REST 接口用哪个请求头开启 SBE? Accept: application/sbe 加上 X-MBX-SBE: <模式 id>:<版本>,官方示例中是 1:0。

币安最新的 SBE 模式是哪个版本? 据币安生产环境生命周期文件,截至 2026 年 10 月 21 日最新的是 3:5,发布于 2026 年 7 月 7 日。

接收 SBE 行情需要 API Key 吗? 需要。stream-sbe.binance.com 要求在 X-MBX-APIKEY 头里提供 Ed25519 类型的 API Key,但不需要额外权限。

为什么 SBE 的时间戳和 JSON 不一样? SBE 时间戳以微秒为单位,JSON 默认以毫秒为单位。

来源与证据

03
  1. BinanceSimple Binary Encoding (SBE) FAQ
  2. BinanceSBE Market Data Streams
  3. BinanceSBE schema life-cycle (PROD)
选择下一步研究路径