跳转至

CEX订单簿方案

VectorOrderBook:

  1. 极致性能要求 - 高频交易系统,需要纳秒级延迟
  2. 主流币种交易 - BTC, ETH, BNB等价格范围可预测的币种
  3. 订单密集场景 - 大部分价格级别都有订单
  4. 内存充足环境 - 可以预分配240MB+内存

HashOrderBook:

  1. 极低价币交易 - SHIB, PEPE等需要最高精度的币种
  2. 极稀疏订单簿 - 价格点非常分散
  3. 不需要频繁遍历 - 主要进行单点查询

TreeOrderBook:

  1. 生产环境 - 性能和灵活性的最佳平衡
  2. 订单匹配引擎 - 需要频繁按价格顺序遍历
  3. 市场深度查询 - 需要显示LOB深度数据
  4. 确定性性能要求 - 相比HashMap更可预测
  5. 通用场景 - 适合大多数交易对

CircularArrayOrderBook:

  1. 超高频做市商系统 - 订单取消 / 插入频率极高,依赖 O (1) 稳定延迟
  2. 短生命周期订单场景 - 大量 IOC(立即成交或取消)、FOK 订单,需快速标记无效并通过压缩回收空间
  3. 内存敏感型高频交易 - 相比 VectorOrderBook 节省 90%+ 内存(无需预分配 3000 万价格点),同时保持高频操作性能
  4. 活跃价格层级集中 - 2^8=256 个价格层级足够覆盖主流币短期波动区间

多币种交易所:

  1. 主流币(BTC/ETH/BNB) → TreeOrderBook(平衡性能和功能)或 CircularArrayOrderBook(高频做市专区)
  2. 极低价币(SHIB/PEPE) → TreeOrderBook或HashOrderBook
  3. 高频交易专用 → VectorOrderBook 或 CircularArrayOrderBook(内存 + 延迟平衡)

单一场景推荐:

  • 如果不确定选哪个 → 直接用TreeOrderBook
  • 追求极致低延迟 → VectorOrderBook
  • 追求高频性能但内存受限 → CircularArrayOrderBook
  • 资源受限环境 → HashOrderBook