Skip to main content

Module trading

Module trading 

Source
Expand description

Binance Spot WebSocket API client with SBE (Simple Binary Encoding) support.

This module provides a WebSocket API client for Binance Spot trading using the request/response pattern with SBE-encoded responses. It complements the HTTP client by offering lower-latency order submission via WebSocket.

§Architecture

The client uses a two-tier architecture per the adapter design guidelines:

  • Outer client (BinanceSpotWsTradingClient): Orchestrates connection lifecycle, maintains state for Python access, sends commands via channel.
  • Inner handler (BinanceSpotWsTradingHandler): Runs in dedicated Tokio task, owns WebSocket connection, processes commands and responses.

§Features

  • Order placement, cancellation, and modification via WebSocket
  • SBE-encoded responses for consistency with HTTP client
  • Ed25519 and HMAC authentication (auto-detected)
  • Request/response correlation by ID
  • Inline user data stream (session.logon + userDataStream.subscribe)

Re-exports§

pub use client::BinanceSpotWsTradingClient;
pub use error::BinanceWsApiError;
pub use error::BinanceWsApiResult;
pub use handler::BinanceSpotWsTradingHandler;
pub use messages::BinanceSpotWsTradingCommand;
pub use messages::BinanceSpotWsTradingMessage;

Modules§

client
Binance Spot WebSocket API client for SBE trading.
decode_sbe
SBE decoders for Binance Spot user data stream events.
error
Binance Spot WebSocket API error types.
handler
Binance Spot WebSocket API message handler.
messages
Binance Spot WebSocket API message types.
parse
Parse functions for converting Binance Spot venue types to Nautilus reports.
user_data
Binance Spot User Data Stream message types.