roq-btse-futures

$ conda install \
      --channel https://roq-trading.com/conda/unstable \
      roq-btse-futures
$ conda install \
      --channel https://roq-trading.com/conda/stable \
      roq-btse-futures

Supports

Products

Spot

Futures

Swap

Option

Orders & Quotes
Account

Funds

Position

Note

✅ = Available.

❎ = Not implemented.

❌ = Unavailable.

❶ = The exchange protocol does not support streaming updates for reference data and market status.

Using

$ roq-btse-futures [FLAGS]

Flags

$ roq-btse-futures --help
--exchange (btse-futures)

Exchange identifier

--rest_uri (https://testapi.btse.io/futures)

Exchange end-point

--rest_proxy

Proxy end-point

--rest_ping_freq (5s)

Ping frequency

--rest_ping_path (/api/v2.1/price?symbol=BTCPFC)

Ping path

--rest_request_timeout (30s)

Request timeout

--rest_download_orders_page_size (500)

Page size used when downloading orders

--rest_download_orders_begin (24h)

Download orders since (now - begin)

--rest_download_only_active_orders (false)

Download only active orders?

--rest_download_fills_page_size (500)

Page size used when downloading fills

--rest_download_fills_begin (24h)

Download fills since (now - begin)

--rest_cancel_on_disconnect (false)

Auto-cancel orders on disconnect?

--ws_uri (wss://testws.btse.io/ws/futures)

Exchange end-point

--ws_uri_oss (wss://testws.btse.io/ws/oss/futures)

Exchange end-point

--ws_ping_freq (15s)

Ping frequency

--ws_request_timeout (15s)

Request timeout

--ws_max_subscriptions_per_stream (100)

Maximum number of symbols per connection

--request_limit (80)

Request limit per interval

--request_limit_interval (10s)

Request limit monitor interval

--encode_buffer_size (1048576)

Encode buffer size

--decode_buffer_size (10485760)

Decode buffer size

--mbp_allow_price_inversion (false)

Allow price inversion?

--mbp_max_depth (50)

Order-book max-depth (exchange limit)

--number_of_order_entry_connections (1)

Number of order-entry connections

Environments

$ --flagfile $CONDA_PREFIX/share/roq-btse-futures/flags/prod/flags.cfg
# flagfile for the roq-btse-futures gateway

--rest_uri=https://api.btse.com/futures
--ws_uri=wss://ws.btse.com/ws/futures
--ws_uri_oss=wss://ws.btse.com/ws/oss/futures
$ --flagfile $CONDA_PREFIX/share/roq-btse-futures/flags/test/flags.cfg
# flagfile for the roq-btse-futures gateway

--rest_uri=https://testapi.btse.io/futures
--ws_uri=wss://testws.btse.io/ws/futures
--ws_uri_oss=wss://testws.btse.io/ws/oss/futures

Configuration

$ --config_file $CONDA_PREFIX/share/roq-btse-futures/config.toml

Important

The template will be replaced when the software is upgraded. Make a copy and modify to your needs.

# config template for the roq-btse-futures gateway

symbols = [
 "^BTCUSDT$",
 "^BTCPERP$",
]

[accounts]

  [accounts.A1]
  master = true
  login = "YOUR_BTSE_FUTURES_API_KEY_GOES_HERE"
  secret = "YOUR_BTSE_FUTURES_SECRET_GOES_HERE"
  symbols = [ ".*" ]

[users]

  [users.test]
  password = "1234"
  symbols = ".*"

  [users.trader]
  password = "secret"
  accounts = [ "A1" ]
  symbols = [ "BTCUSDT", "BTCPERP" ]

[rate_limits]

  [rate_limits.global]
    type = "ORDER_ACTION"
    aggregate = true
    request_limit = 100
    monitor_period = "10s"
    ban_period = "5m"

Market Data

Inbound

Event

Field

Comment

MarketSummary

active

= false

HALT

MarketSummary

active

= true

OPEN

Order Management

Inbound

Outbound

Comments

  • TODO check if order book max-depth is really 50 when applying incremental updates

  • Achieving maker fees requires more than placing a resting order

References

Common

Exchange