Releases: dxFeed/dxfeed-c-api
Releases · dxFeed/dxfeed-c-api
dxFeed C API 8.8.2
This is a test version to check the uploading of the documentation and fix the assembly under Windows. Please use version 8.8.1
dxFeed C API 8.8.1
dxFeed C API 8.8.0
- [DXFC-396] Added the ability to not shuffle resolved IP addresses.
- Added the
connectOrder
property of an address with possible values:shuffle
,random
,ordered
,priority
- The
shuffle
strategy: Example:host1:port1,host2:port2,host3:port3[connectOrder=shuffle]
It will shuffle the
resolved IP addresses, and it will go through them to the end, and then it will resolve and shuffle and so on. - The
random
strategy: Example:host1:port1,host2:port2,host3:port3[connectOrder=random]
It will shuffle IP
addresses, if the connection is successful, it will reset the state and will shuffle on the next connection after resolve, and so on. - The
ordered
strategy: Example:host1:port1,host2:port2,host3:port3[connectOrder=ordered]
It will NOT shuffle the
resolved IP addresses, and it will go through them to the end, and then it will resolve and NOT shuffle and so on. - The
priority
strategy: Example:host1:port1,host2:port2,host3:port3[connectOrder=priority]
It will NOT shuffle IP
addresses, if the connection is successful, it will reset the state and will NOT shuffle on the next connection after resolve, and so on. - The default strategy is
shuffle
- If several strategies are specified in the address line, the last one will be selected.
- Example 1:
host1:port1,host2:port2,host3:port3[connectOrder=priority,connectOrder=ordered]
will be equivalent
tohost1:port1,host2:port2,host3:port3[connectOrder=ordered]
- Example 2:
(host1:port1,host2:port2[connectOrder=random])(host3:port3[connectOrder=priority,connectOrder=ordered])
will be equivalent tohost1:port1,host2:port2,host3:port3[connectOrder=ordered]
- Example 1:
- Added the
- [DXFC-397] Fixed format for specifying a list of DNS names for resolve.
- The list of addresses can now be specified separated by commas:
host1:port1,host2:port2,host3:port3
- The last specified port will be considered the default port, i.e. such a list of
host1,host2:port2,host3:port3
will be equivalent tohost1:port3,host2:port2,host3:port3
- The notation separated by parentheses remains valid, but will be "linearized", i.e. the list
(host1:port1)(host2:port2)(host3:port3)
will be equivalent tohost1:port1,host2:port2,host3:port3
when resolving addresses
- The list of addresses can now be specified separated by commas:
- Fixed log formatting
dxFeed C API 8.7.0
- [DXFC-395] Added the ability to enumerate all resolved IP addresses by DNS names. IP addresses will be shuffled.
- For the address of QD endpoints specified in the form
(host1:port1)(host2:port2)(host3:port3)
IP addresses will be determined, then they will be shuffled. - Shuffled addresses will be selected in order until a connection occurs. When the end of the list is reached, the endpoints will again be determined by IP addresses, and so on.
- If a disconnect occurs, the next IP from the list will be selected and an attempt will be made to reconnect.
- For the address of QD endpoints specified in the form
- [DXFC-394] Disabled shuffling of specified addresses (DNS names) for connection in the form:
(hos1:port1)(host2:port2)(host3:port3)
- [DXFC-334] Fixed a bug with precision error when converting WideDecimal to Double
- [DXFC-376] The SnapshotConsoleSample was improved: added an ability to specify from-time and to-time arguments.
dxFeed C API 8.6.3
- [DXFC-331] Fixed a bug when deleting a PriceLevelBook object caused crashes.
dxFeed C API 8.6.2
- [DXFC-327] Fixed a bug where the timestamp = 0 was set for the price level when processing a removed order.
- [DXFC-328] Fixed a bug where UPDATE lists with non-existent price levels sometimes appear in PLB incremental updates.
dxFeed C API 8.6.1
- Fixed the sln-based projects build.
- Fixed possible symbol corruption
- Fixed a bug where price level updates could be treated as volume increases.
dxFeed C API 8.6.0
- [DXFC-297] Improved the handling of transaction flags and signs of transaction flags.
- [DXFC-295] Fixed a bug with incorrect filtering of orders based on MM and Quotes.
- Fixed wrong
time
parameter processing in the SnapshotConsoleSample. - [DXFC-298] Added the new PLB (Price Level Book) building mechanism.
Added the ability to specify the number of the price levels.
Added the ability to subscribe to incremental price level updates.
API changes:- Added the new handle type for PLB - dxf_price_level_book_v2_t
- Added the new listener type:
typedef void (*dxf_price_level_book_inc_listener_t)(dxf_price_level_book_const_data_ptr_t removals, dxf_price_level_book_const_data_ptr_t additions, dxf_price_level_book_const_data_ptr_t updates, void* user_data);
Incremental changes of removals, additions and updates of price levels are passed to this type of listener. - Added the new function to create PLB:
dxf_create_price_level_book_v3(dxf_connection_t connection, dxf_const_string_t symbol, const char* source, int levels_number, OUT dxf_price_level_book_v2_t* book)
You can specify only one order source (including AGGREGATE_ASK or AGGREGATE_BID), you can specify the number of levels. - Added the new functions to close PLB and set listeners:
dxf_close_price_level_book_v2(dxf_price_level_book_v2_t book)
dxf_set_price_level_book_listeners_v2(dxf_price_level_book_v2_t book, dxf_price_level_book_listener_t on_new_book_listener, dxf_price_level_book_listener_t on_book_update_listener, dxf_price_level_book_inc_listener_t on_incremental_change_listener, void* user_data);
Added a new sample: PriceLevelBookSample2.
See documentation.
dxFeed C API 8.5.3
- [DXFC-137] Fixed a bug where it was not possible to create a snapshot due to a collision of snapshot keys.
- Fixed a bug with debug logging of the
dxf_get_last_error
function. - Fixed a potential bug when static data of record field setters were not in thread local storage.
dxFeed C API 8.5.2
- Fixed a potential bug with flags that were not in thread local storage