roq-sbe-publisher

Purpose

  • Publish market data as SBE message to UDP/multicast

Conda

$ mamba install \
  --channel https://roq-trading.com/conda/stable \
  roq-sbe-publisher
$ roq-sbe-publisher
      --name publisher \
      --config_file test.toml \
      --local_interface 192.168.188.64 \
      --multicast_address_snapshot 224.1.1.1 \
      --multicast_port_snapshot 1234 \
      --multicast_address_incremental 224.1.1.1 \
      --multicast_port_incremental 6789 \
      --multicast_ttl 4 \
      --multicast_loop=true \
      --snapshot_publish_freq 5s \
      ~/run/deribit.sock

Flags

$ roq-sbe-publisher --help
--config_file

Config file

--snapshot_publish_freq (1s)

Snapshot publish frequency

--encode_buffer_size (1048576)

Encode buffer size

--max_depth (100)

Depth (maximum)

--local_interface

UDP publish address

--multicast_address_snapshot

UDP publish address

--multicast_port_snapshot

UDP publish port

--multicast_address_incremental

UDP publish address

--multicast_port_incremental

UDP publish port

--multicast_ttl (4)

UDP publish ttl

--multicast_loop (false)

UDP publish loop

Config

The config file defines the subscriptions.

Symbols

Defined per exchange

[symbols.deribit]
regex = [ "BTC-PERPETUAL", "ETH-PERPETUAL" ]

Currencies

Defined for all exchanges

[symbols]
regex = [ "USD.*", "BTC.*" ]