Skip to content

Software Roadmap and Release Notes

Past Releases

2026-02-26 Release Notes

Software Version 1.0.4.d977fd4

New Features

  • Public order fill information from CME Trade Summary messages is now normalized into onbookorder with orderupdatetype::OU_FILL. Docs
  • New field bookorder::aggressing indicates whether the public filled order was aggressive. This field is only available when the aggressor side is provided by CME. Docs
  • New field trade::numOrders is populated with the number of affected orders from the CME Trade Summary message. Docs

Enhancements

  • CME iLink (cmeilink3) persist-file minor optimizations for improved resiliency.
  • Fixed an issue where the tradelogtoion application occasionally built a cumulative HOST file instead of an iterative one.
  • nanoconda-cli logging improvements for API errors when log-api-errors is enabled.

2026-02-19 Release Notes

Software Version 1.0.4.c568aba

New Features

  • Pre-trade risk settings now persist across session restarts. Set persist-risk to false to revert to legacy behavior. Docs
  • Added new CLI application resetrisk, which resets risk to the configured values. Docs
  • New pre-trade risk parameter Max Daily Lots limits the total number of contracts that can be traded per day. This prevents runaway trading if an algo loops. Configure per asset using maxdailylots under the RiskInstrument node. Docs
  • Spread instruments must be subscribed by pattern for groups via the pattern parameter, for example: <SpreadGroup pattern="SR3:AB" />. Docs

Enhancements

  • throttle-limit and throttle-window values are now displayed in the GUI.
  • PTR errors are now logged in the Access log (in addition to the GUI) when log-api-errors is enabled.
  • DBN files now exit when playback completes.
  • persist-risk and log-api-errors now default to true.
  • A new trading session will not start if another instance for the same accountID is already running (prevents potential user errors).
  • resetrisk application will not run if another instance for the same accountID is already running (prevents potential user errors).
  • tradelogclear application will not run if another instance for the same accountID is already running (prevents potential user errors).

2026-02-12 Release Notes

Software Version 1.0.4.56d05d3

New Features

  • Added new CLI application dbnbacktester, enabling high-speed strategy backtesting using Databento DBN files with inline plugin execution. Docs
  • Added new CLI application dbnpublisher, which replays Databento DBN files and publishes normalized market data to shared memory, simulating a production environment. Docs

Enhancements

  • Improved the simulator to handle order queue priority more accurately during order modifications.

2026-01-29 Release Notes

Software Version 1.0.4.463bb96

Enhancements

  • The uilistener interface has been deprecated and its functionality incorporated as part of core listener interface.
  • initUIManager() has been deprecated, as Algo API functionality is now part of the core API.
  • Simplified WebAgent handling of remote client and GUI disconnects.

Recompile Required

A full application recompile is required to work with this software version.

2026-01-26 Release Notes

Software Version 1.0.4.e7b749b

New Features

  • Added support for forwarding API reasoncode errors to GUI for improved visibility. The log-api-errors option must be set to true to enable this feature. Docs
  • The tradelogtoion application can now generate subsequent HOST files that include all executions for the trading day.
  • Introduced a new onlegfill() callback to provide leg-level execution details for spread instruments.

Enhancements

  • Fixed an issue where onbookorder callback could be received for unsubscribed symbols.
  • Spread instruments are now tracked on a dedicated line in order manager rather than on a per-leg basis, enabling correct risk limit configuration for inter-commodity spreads.
  • Improved handling of Treasury futures contract multiplers expressed as as percentage of par.
  • Reduced memory usage of the simulator application by approximately 30%.
  • Improved simulator support for MODIFY orders involving trigger prices on STP and SLMT order types.

Recompile Required

A full application recompile is required to work with this software version.

2026-01-15 Release Notes

Software Version 1.0.4.a803f99

Enhancements

  • CRITICAL BUG FIX: Resolved an issue in CME deep book levels where total size and order count could be inflated.
  • Added a new reasoncode::API_VERSION_ERROR to explicitly detect and report API version mismatches.
  • The tradelogtoion application can now accept tradelog files as input, in addition to the XML.
  • The tradelogtoion can now generate empty HOST files.
  • Minor cache locality improvements in client-side API.
  • Minor stability improvements.

2026-01-08 Release Notes

Software Version 1.0.4.4fa7ba2

New Features

  • Added a new getSecurityLegs api to retrieve legs details for spread instruments. Docs
  • Introduced capitalreq and fee configurations for better Margin use and Fee visibility . Docs
  • CME Match Event Indicator is normalized to lastEvent flag for trade, book, bookorder. Docs

Enhancements

  • The GUI server now processes requests using an asynchronous architecture, improving resource utilization and stability when handling stale or disconnected user sessions.
  • The simulator now correctly handles public trades with no aggressor side and zero-priced spread trades.

Recompile Required

A full application recompile is required to work with this software version.

2025-12-18 Release Notes

Software Version 1.0.4.8a334d2

New Features

  • Added a new starting-balance configuration option to specify the initial account balance for a session. Docs
  • Added accountBalance() to the API to retrieve the real-time account balance. Docs

Enhancements

  • Reworked simulator logic for Stop, Stop Limit, and Limit orders to enable more accurate execution based on order book depth.

2025-12-01 Release Notes

Software Version 1.0.4.ae534b0

New Features

  • simulator Application now executes Limit orders based on queue-priority for orders originally placed within the top 10 price levels.
  • CME Order Request ID is now propogated to nanoconda::order::orderRequestId.

Enhancements

  • CRITICAL BUG FIX: L3 Orders could become corrupted due to recent memory layout changes related to the writetime field.
  • Minor Stability improvements for handling XML misconfigurations and GUI sessions resets.

Recompile Required

A full application recompile is required to apply the critical bug fix. The change affects the recently added receivetime and writetime fields.

2025-11-25 Release Notes

Software Version 1.0.4.6b8a54c

New Features

  • Added new CLI application tradelogstats, which generates trading statistics report from a tradelog. Docs
  • Added new CLI application latencyreport, which displays a snapshot of session latency metrics. Docs
  • Added new efvi-hw-timestamps config option for cmemdp3 application. When enabled, the receivetime field is with hardware timestamps. Docs
  • Added new timestamp fields receivetime and writetime to nanoconda::bookorder for improved API consistency. Docs

Recompile Required for Timestamp Fields

The new receivetime and writetime fields are not available in existing builds. Recompile your client applications to access these new timestamp fields.

Enhancements

  • GUI now clears the selected Instrument in the Algo Window on any Algo disconnect or reconnect.
  • GUI now properly handles small integer values such as NC_US and NC_UC.

2025-11-20 Release Notes

Software Version 1.0.4.2019e19

Enhancements

  • Improved Remote Client API behavior when stop() and start() are called multiple times.
  • The API now notifies algos with *reject() callbacks in the corner case where an in-flight request is discarded by the exchange gateway because the user blocked it mid-flight.

2025-11-13 Release Notes

Software Version 1.0.4.267b362

New Features

  • New onconnectionerror callback added to Remote client API Docs

Enhancements

  • RAM Usage Reduced by 40% for Nanoconda CLI by reducing the total number of symbols to 50K.
  • Improvements for cmebacktester processing of network data for product definitions.

2025-10-29 Release Notes

Software Version 1.0.4.d51e02a

New Features

  • Remote client now supports callbacks for important events. Docs
  • New order type nanoconda::orderType::WARM that can be used to warm cache on the sending path. Docs
  • Real-time session statistics (TCP activity, latency histogram and breakdown) reporting to Redis and Web portal.

Enhancements

  • Various minor latency improvements for TCPDirect critical path.
  • Data rate improvements for GUI and Server communication.
  • Remote Client to handle server shutdowns with grace.
  • CME Business Rejects (without Order ID) are optimized and get passed to API more transparently

2025-10-07 Release Notes

Software Version 1.0.4.b300ba2

Highlights - Version 1.0.4

  • Transition to Version 104 introduces core architectural rework for streamlined DMA operations.
  • Full support for trading options and spreads in both live trading and the simulator.
  • Re-architected DMA sessions to run on a single core, improving efficiency and simplifying resource allocation. Docs

Performance Enhancements

  • Latency improvements: Reduced round-trip and processing delays.
  • Throughput improvements: Higher capacity and faster handling of market data and orders.
  • Stability improvements: Increased robustness under production load.
  • Incoming latency and tradelog size improvements: Optimized handling of order and fill logs with reduced overhead.

This release marks a substantial step forward in stability, performance, and functionality. We recommend all users upgrade to Version 104 to take full advantage of these improvements.

2025-08-14 Release Notes

Software Version 1.0.2.7271e22

API Changes

  • GUI Algo controls API has been modified based on client usage. nanoconda::algodata structure has been replaced by two separate stuctures: nanoconda::algorequest and nanoconda::algorecord. This change allows for more Algo Report lines in the GUI (up to 40) and improves network efficiency by 300%. Docs

New Features

  • A new nanoconda_prototypes.h header file with sample algorithms will be destributed to clients. It is intended to be a starting point for user algos. Users may freely copy, modify or inherit the header. The header file will evolve with common algorithms examples. Initial algorithms provided: Bracket Orders and Simple orders

2025-07-24 Release Notes

Software Version 1.0.2.7f77e27

New Features

  • Support for individual Book Order Update – This feature enables Level 3 (L3) processing by the algorithm, such as constructing the full order book or identifying order-level changes between two onbook() callbacks. Docs
  • New CLI application cmebacktester - Runs user-defined plugin code inline while reading from a set of PCAP files. This enables high-speed backtesting without concerns about client-side latency. All trading is simulated using the in-memory Simulator. Docs

2025-07-17 Release Notes

Software Version 1.0.2.f4cb9e2

New Features

  • Redis Reporting Support – The CLI now supports submitting reports to a Redis database, enabling remote monitoring and streamlined session administration.

2025-07-03 Release Notes

Software Version 1.0.2.2ecec39

Improvements

  • Simulator: Orders with a quantity of 3 or more are now always executed as partial fills. This change helps test algorithm behavior under partial fill conditions.
  • Improved stability for multithreaded use of the recently added getSecurityStats() API.

2025-06-26 Release Notes

Software Version 1.0.2.b90c71a4

API Changes

  • Added nanoconda::remotesession API for accessing the trading session remotely and ability to monitor and manage risk limits programmatically. Docs
  • Added nanoconda::listener::oncancelall() and nanoconda::listener::ontracecomplete() callbacks, which can be useful when replaying a trace file

Improvements

  • Added functionality to replay multuple PCAP files in the same process. PCAP files will be synchronized based on timestamps. Docs
  • Added trace functionality for Order Entry CLI applications (Ex: -a cmeilink3), which traces all API activity for a session (including both Algo and GUI activity) in a file specified by trace-file attribute. Docs

2025-06-19 Release Notes

Software Version 1.0.2.8af7d98

API Changes

  • Added nanoconda::dmasession::getSecurityStats API for accessing individual instrument trading statistics Docs
  • Added nanoconda::dmasession::sessionPnl() and nanoconda::dmasession::maxDrawdown() APIs for accessing total session P&L and Maximum configured drawdown values Docs
  • Added nanoconda::getSymbolId() API to retrieve Nanoconda symbolId ad hoc. Docs
  • Added nanoconda::security::segmentId field to pass Market Segment Id information for an instrument. Docs

Improvements

  • Trade Log is now backed up by disk and saved in /var/nanoconda. Transparent HugePages will be used at best effort at kernel discretion.
  • GUI stale connections are now recognized after 20 seconds of inactivity to allow for slower remote clients.
  • File Logger latency slightly improved by pre-caching next sequential write memory in CPU.

Roadmap

Multiple Exchange sessions per DMA core - ETA 2026-03-05

Support for multiple exchange sessions per DMA core, allowing a single core to handle parallel CME MSGW flows and tenant-specific sessions in multi-tenant environments. This reduces resource contention while preserving ultra-low latency.

Remote Client Trading API - ETA 2026-03-19

This feature exposes the remote client trading functionality—currently used by the Nanoconda GUI—as a standalone API. It enables running algorithms on a remote machine and supports trader-specific limits and strategies. The API is particularly useful in scenarios where trading is semi-automatic, not latency-sensitive or needs to integrate into an existing Trading System or GUI. It also allows for multiple traders and algos to share a single order session with the exchange while keeping their trading separate from each other.