Skip to content

Releases: wboayue/rust-ibapi

Fixes request ID mapping

14 Nov 07:05
9de0bb1
Compare
Choose a tag to compare

What's Changed

  • Fixes request ID mapping for IncomingMessages::TickReqParams. It was not being routed for market_data requests.

Full Changelog: v1.0.0...v1.0.1

Comprehensive feature set and improved reliability

10 Nov 07:32
Compare
Choose a tag to compare

This release marks the first feature-complete version of the API. It incorporates community feedback and insights from building an automated trading system to create a more robust and user-friendly API that now achieves feature parity with the official API.

Due to substantial refactoring, there are some breaking changes, but the resulting code should be easier to maintain. Here’s an overview of key enhancements:

  • Subscriptions Instead of Iterators:
Rather than returning an iterator of streamed responses, the concept of a Subscription was introduced. In simple cases, a subscription can be converted into a blocking iterator. Subscriptions also provide applications with added flexibility, enabling iteration over items with a timeout or in a non-blocking fashion.
  • Improved Connection Handling:
The Client now detects disconnections from the TWS server and automatically attempts to reconnect using a Fibonacci backoff strategy. If reconnection attempts ultimately fail, an error is returned to the application.
  • Thread Safety:
The Client and underlying code are now thread-safe. However, the recommended model remains one client per thread for optimal correctness.

Allow client to be shared between threads

02 Oct 05:00
01a521d
Compare
Choose a tag to compare

Adds changes from @mondeja thats allows the client to be shared between threads.

Sharing the client between threads was intentionally not allowed, but if you understand the potential issues this release allows that option. See discussion here.

The recommended model is still a client per thread, but now you have options.

Adds support for crypto

21 May 04:03
Compare
Choose a tag to compare

Adds support for Crypto security type SecurityType::Crypto when creating contracts. Thanks @richard-fairthorne