Skip to content

Releases: dxFeed/dxfeed-c-api

dxFeed C API 7.6.0

20 Apr 12:31
Compare
Choose a tag to compare
  • [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

15 Apr 12:37
Compare
Choose a tag to compare
  • [DXFC-223] The new price level order source was added: iex.

dxFeed C API 7.4.0

02 Apr 10:38
Compare
Choose a tag to compare
  • [Samples] Fixed the heartbeat notifier's setting. Added lag measurements to the performance test.

dxFeed C API 7.3.0

16 Mar 19:30
Compare
Choose a tag to compare
  • [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
  • [DXFC-219] Fixed a bug with broken parsing of negative values
  • [DXFC-202] Added the ability to filter log messages by level
    The logger.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:
    dxf_load_config_from_wstring(L"logger.level = \"error\"\n");
    See the config file sample: Sample

dxFeed C API 7.2.0

05 Mar 12:57
Compare
Choose a tag to compare
  • 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 the dxf_order_t structure
      See the dxf_order_action_t enum description (documentation) where it is indicated in which cases which fields will be filled.
    • the FullOrderBook sample was added.
  • [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 of dxf_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

15 Feb 10:20
Compare
Choose a tag to compare
  • [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:
    void 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);
    }
    See usage example in the CommandLineSample.c

dxFeed C API 7.0.0

29 Jan 09:08
Compare
Choose a tag to compare
  • [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 to high_52_week_price & low_52_week_price respectively
    • the change field was added to TradeETH event
  • [DXFC-207] Extended the Trade and TradeETH events with new field dayId
    • the day_id field was added to the dx_trade_t, dx_trade_eth_t and dxf_trade_t structures. day_id - identifier of the day that Trade or TradeETH represents. Identifier of the day is the number of days passed since January 1, 1970.
  • [DXFC-181] Extended the Underlying and Series events with putVolume and callVolume fields
    • the call_volume and put_volume fields were added to the dx_series_t, dxf_series_t, dx_underlying_t and dxf_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 the dxf_series_t, dxf_underlying_t structures. option_volume - options traded volume for a day.
  • [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

24 Dec 10:35
Compare
Choose a tag to compare
  • 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

10 Dec 17:26
Compare
Choose a tag to compare
  • [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

30 Nov 16:44
Compare
Choose a tag to compare
Pre-release
pre-6.1.0