Skip to main content

Derivatives SBE Overview

The Coinbase Derivatives Exchange Simple Binary Encoding (SBE) API is a custom high performant order entry protocol used by lead market makers to send, modify, and cancel orders.

info

SBE is a compact binary encoding with fixed-width fields at fixed offsets, in contrast to standard FIX with ASCII-encoded human-readable tag=value pairs.

Session Protocol

The SBE API implements a subset of the FIX session protocol and session messages behave like FIX.

Sequence Numbers

Sequence numbers are assigned and validated like FIX sequence numbers.

Trade Busts and Corrects

The Coinbase Derivatives Exchange SBE API does not distribute unsolicited reports about trade busts and corrections. The firms are expected to use the FIX Drop Copy connections if they need to receive these messages.

Expiration Reports

When a day order expires at the close of a trading day, an OrderCanceled message is sent.

CorrelationId

Every application message contains an 8-byte integer correlationId. Clients can assign any value to correlationId, which is not validated by the server. However, Coinbase recommends monotonically increasing the value.

Correlation ID is used for indirectly correlated messages, such as order fill and system cancel notifications. Messages from server to client use the correlationId of either the corresponding request message from the client or of the last related request.

Byte Alignment and Message Padding

Messages are layed out as follows:

  • 8-byte fields start on 8-byte boundaries
  • 4-byte fields start on 4-byte boundaries
  • 2-byte fields start on 2-byte boundaries.

The frame length of all outbound messages to the client are rounded up to the nearest multiple of 8. Clients are encouraged to do the same with inbound messages, although this is not required.

Was this helpful?