This release is mostly about improving order request management and the simulation framework.
Client testing has also helped a lot with finding and resolving issues.
Order Request Management
Certain use-cases rely on guaranteed sequencing of order ack and updates:
- FIX has particularly strict requirements for request chaining.
- Certain market making strategies will require the option to track progress of individual requests even when there are many such requests simultaneously in transit.
The logic around request management has been upgraded to provide better guarantees.
Particularly so for those exchanges where
- Order ack and updates originate from different channels.
- Do not support the rewriting of client order id's.
Documentation can be found here.
The following simulation features are now supported
- Multiplex several event-logs.
- Proper latency simulation for order actions and updates.
Matcherinterface separation has been completed. This means that you can implement your own exchange matching assumptions and use those with the simulator.
OrderAckis being used identicially to the gateway, i.e. forwarded, accepted, etc.
OrderUpdatehas all fields populated by the simulator.
- Request versions are communicated through the relevant
Collectorinterface allows you to access and analyse internal strategy metrics. The same interface is used during live trading to publish strategy metrics to other strategies or third-party user interface.
Documentation can be found here.
- [CHANGE] Use web-safe "base64" encoding for
- [FEATURE] Option to initialize missing
MDEntryType's to zero (FIX Bridge) (#45).
- [FEATURE] Support order auto-cancelation (Kraken Futures) (#37).
- [FEATURE] Added parser for
Product.max_slippage_percentage(Coinbase PRO) (#35).
- [FEATURE] Generic pub/sub is now possible through
- [FEATURE] Parse error messages (BitMEX) (#32).
- [FEATURE] Publish
SETTLEMENT_PRICE(Kraken Futures) (#27).
- [FEATURE] Support event-log directories by day (
- [FEATURE] Adding
- [FEATURE] Event-logs can now be parsed using
- [FEATURE] Secrets can now be maintained in separate config file (#15).
- [FEATURE] roq-reduce can now read from stdin (#16).
- [FEATURE] Upgraded the simulator framework (#7).
- [FIXED] Statistics updates did not respect subscriptions (FIX Bridge) (#42).
OrderCancelRejectdid not contain
OrdStatusfor unknown order (FIX Bridge) (#41).
- [FIXED] Gateways will now pre-populate account cache at construction time (#40).
OrderCancelRejectuse non-standard tag 151 and 6 (Deribit) (#36).
cliOrdIdshould be web-safe (Kraken Futures) (#33).
- [FIXED] Request management has been improved to support chaining (#25).
- [FIXED] Simulator
- [FIXED] Config parser didn't validate StatisticsType overrides (FIX Bridge) (#28).
- [FIXED] Post data should be URL encoded (Kraken Futures) (#24).
- [FIXED] Request chaining wasn't working without receiving acks (#23).
- [FIXED] Order cancel/replace reject did not reset OrigClOrdID (FIX Bridge) (#22).
- [FIXED] Rate limiter will now attach order attributes to
- [FIXED] The gateways did not validate symbol permissions by user (#9).
CancelOrdernow validates after request version has been updated (#13).
Subscribehas been removed from the API (#14).
The following release will be tracked here.