Releases: dxFeed/dxfeed-c-api
Releases · dxFeed/dxfeed-c-api
dxFeed C API 7.6.0
- [DXFC-224] Fixed a bug with a race conditions occurred while reading files
- [DXFC-225] Added initial support for the WideDecimal type. This will allow reading data coming from CandleWebService or data recorded in
tape
format. The examples of usage added to CommandLineSample and CandleSample help output. - Now heartbeat logging in the CommandLineSample is optional. To enable, you must use the
-b
flag. - [DXFC-227] Improved the project brief in the doxygen documentation
dxFeed C API 7.5.0
- [DXFC-223] The new price level order source was added: iex.
dxFeed C API 7.4.0
- [Samples] Fixed the heartbeat notifier's setting. Added lag measurements to the performance test.
dxFeed C API 7.3.0
- [DXFC-218] Improved the SnapshotConsoleSample
- the
date
(-t) parameter was added. Format: DD-MM-YYYY, default value: current date and time.
Previously, without this parameter, the time was set equal to 0 (01-01-1970)! - the cross platform synchronization primitives were added
- the
- [DXFC-219] Fixed a bug with broken parsing of negative values
- [DXFC-202] Added the ability to filter log messages by level
Thelogger.level
config property was added. This property describes a minimum logging level.
Possible values: "error", "warn", "info", "debug", "trace". Default value = "info"
An example of limiting the output of logs:See the config file sample: Sampledxf_load_config_from_wstring(L"logger.level = \"error\"\n");
dxFeed C API 7.2.0
- All sample programs were moved to the
samples
directory - [DXFC-212] Extended the Order event for Full Order Book
- the
action
,action_time
,order_id
,aux_order_id
,trade_id
,trade_price
,trade_size
fields were added to thedxf_order_t
structure
See thedxf_order_action_t
enum description (documentation) where it is indicated in which cases which fields will be filled. - the FullOrderBook sample was added.
- the
- [DXFC-211] Fixed a bug with broken construction of order snapshots (books), based on Quote (order scope = Composite|Regional) & MarketMaker (order scope = Aggregate) events
- Improved the
dxf_event_listener_t
&dxf_event_listener_t_v2
documentation - The
data_count
parameter ofdxf_event_listener_t
&dxf_event_listener_t_v2
listeners was deprecated (it always returns 1). It will be removed in 8.0.0 version
dxFeed C API 7.1.0
- [DXFC-209] Implemented the heartbeat semantics with payload
- Added the new function
dxf_set_on_server_heartbeat_notifier(dxf_connection_t connection, dxf_conn_on_server_heartbeat_notifier_t notifier, void* user_data)
that sets a server heartbeat notifier's callback to the connection.
This notifier will be invoked when the new heartbeat arrives from a server and contains non empty payload
Function parameters:- connection - The handle of a previously created connection
- notifier - The notifier callback function pointer
- user_data - The data to be passed to the callback function
- Added the new callback type of a connection incoming heartbeat notification
dxf_conn_on_server_heartbeat_notifier_t
Passed parameters:- connection - The connection handle
- server_millis - The server time in milliseconds (from the incoming heartbeat payload)
- server_lag_mark - The server's messages composing lag time in microseconds (from the incoming heartbeat payload)
- connection_rtt - The calculated connection RTT in microseconds
- user_data - The user data passed to dxf_set_on_server_heartbeat_notifier
An example of implementation:
See usage example in the CommandLineSample.cvoid on_server_heartbeat_notifier(dxf_connection_t connection, dxf_long_t server_millis, dxf_int_t server_lag_mark, dxf_int_t connection_rtt, void* user_data) { fwprintf(stderr, L"\n##### Server time (UTC) = %" PRId64 " ms, Server lag = %d us, RTT = %d us #####\n", server_millis, server_lag_mark, connection_rtt); }
- Added the new function
dxFeed C API 7.0.0
- [DXFC-175] [Breaking changes] Extended the Trade and Profile events to support additional fields from QD records
- the
_52_high_price
&_52_low_price
Profile
event fields were renamed tohigh_52_week_price
&low_52_week_price
respectively - the
change
field was added toTradeETH
event
- the
- [DXFC-207] Extended the Trade and TradeETH events with new field dayId
- the
day_id
field was added to thedx_trade_t
,dx_trade_eth_t
anddxf_trade_t
structures.day_id
- identifier of the day thatTrade
orTradeETH
represents. Identifier of the day is the number of days passed since January 1, 1970.
- the
- [DXFC-181] Extended the Underlying and Series events with putVolume and callVolume fields
- the
call_volume
andput_volume
fields were added to thedx_series_t
,dxf_series_t
,dx_underlying_t
anddxf_underlying_t
structures.call_volume
- call options traded volume for a day.put_volume
- put options traded volume for a day - the
option_volume
field was added to thedxf_series_t
,dxf_underlying_t
structures.option_volume
- options traded volume for a day.
- the
- [DXFC-176] [Samples] Subscription methods are now called in a more correct order. Fixed output of hostnames.
- [DXFC-208] Added the ability to configure clientserver heartbeat parameters
- The default heartbeat period (DEFAULT_HEARTBEAT_PERIOD) is set to 10 seconds. Which corresponds to the defaults of Java API. The default heartbeat timeout remains the same (120 seconds).
- Added the ability to load a configuration from a file or a string:
The config file sample: Sample
The config file properties:network.heartbeatPeriod
-- The period between sending heartbeat messages (default value = 10 seconds)network.heartbeatTimeout
-- Timeout for receiving messages from the server, after which the api tries to change the server and/or reconnect (default value = 120 seconds)
- Added the new function
dxf_load_config_from_file(const char* file_name)
that initializes the C-API configuration and loads a config (in TOML format) from a file.file_name
-- The config (in TOML format) file name
- Added the new function
dxf_load_config_from_string(const char* config)
that initializes the C-API configuration and loads a config (in TOML format) from a string.config
-- The config (in TOML format) string
- Added the new function
dxf_load_config_from_wstring(dxf_const_string_t config)
that initializes the C-API configuration and loads a config (in TOML format) from a wide string (dxf_const_string_t)config
-- The config (in TOML format) string For the successful application of the configuration, these functions must be called before creating any connection. Examples of using functions can be found in their descriptions and in the generated documentation.
dxFeed C API 6.2.0
- Added missing documentation to EventData.h file
- [DXFC-205] Fixed a bug with disconnecting (by server side) when removing symbols if no symbols have been added
- [DXFC-203] Fixed segfaults and debug assertion failings when clearing symbols in a subscription's event listener
- [DXFC-201] Added the ability to call logging initialization again without any effect
- [DXFC-206] Fixed a minor memory leak related to incomplete deinitialization of the server message processor context.
dxFeed C API 6.1.0
- [DXFC-199] Fixed the IPF parsing in the PerformanceTest
- The minimal version of CMake changed to 3.0.0
- Build on CentOS switched to CentOS 7
- [DXFC-200] [Linux] Added ability to build a static library and samples
- Windows pthreads headers were removed from the project
dxFeed C API pre-6.1.0
pre-6.1.0