Release 1.0.9

2025-09-26

Gateways

Important

The --download_* flags are now shared across all gateways.

Warning

JSON parsing has been reviewed for all gateways.

This was done to better support the auto-generation of code to parse complex JSON documents, in particular deeply nested arrays used by some exchange protocols.

Note

A new gateway flag (--allow_unknown_event_types) was introduced to optionally allow gateways to continue when receiving unexpected message types.

The default is to terminate the application and print the message so you can notify Roq’s support. when using this flag, the message will only be logged with a prefix of PLEASE REPORT. You should be careful about using this flag since new message types could have impact on the business logic. So please notify Roq’s support in either of the cases just outlined.

Bitget

Has been reviewed and brought up to date.

Now supporting the UTA protocol for both market data and order management.

The UTA protocol supports all product types and the roq-bitget-futures gateway has therefore been removed.

Note

Order-management support was made possible by a customer who offered access to an exchange account with small funding.

Kucoin-Futures

Has been reviewed and brought up to date.

Now supporting the v2 protocol for both market data and order management.

Note

Order-management support was made possible by a customer who offered access to an exchange account with small funding.

Deribit

Now defaulting to use Deribit’s new FIX end-points.

Hyperliquid

Has been implemented to support market data.

Development

There are issues when using fmt 11.2 together with clang 21.x. Both are the default installs from conda-forge.

Important

A work-around is to #include "roq/compat/fmt.hpp" BEFORE #include <fmt/format.h>.

#include "roq/compat/fmt.hpp"  // note! this include comes first
#include <fmt/format.h>

Note

The fmt library fails to include certain std headers. It appears that clang has changed their implementation of the standard library to be more compliant.

CHANGELOG

Milestone on GitHub.

Fixed

  • HTTP response with status code 503 (service unavailable) should map to RequestStatus::REJECTED (Many) (#522).

  • Event-type liabilityChange not handled (Binance+Binance-Futures) (#519).

  • Event-type ExecutionReport not handled (Binance-Futures) (#518).

Changed

  • Workaround for fmt 11.2 and clang 21.x (API) (#521).

  • Add new gateway flag: --allow_unknown_event_types (Server) (#520).

Added

Removed

Other