Skip to content

kdb Insights Enterprise Bloomberg Equity Analytics Accelerator - Release Notes

This page details the release notes for the kdb Insights Bloomberg Equity Analytics Accelerator.

Version 1.5.3

Release date: 2026-02-11

Enhancements

  • Compatibility fixes for kdb Insights Enterprise version 1.17.1.

  • Added backfill functionality for equity analytics generation. Refer to backfilling results for details.

    Note

    As part of this change, logging behavior in pipelines that use the eqeagentca-pipeline-spec.q file has been updated. Batching is no longer performed in the pipeline itself and has moved to the API that calculates the equity analytics. As a result, the pipeline will no longer log each published batch.

Version 1.5.2

Release date: 2025-12-02

New features

  • The .fsi.generateOrderAnalytics API can now generate order analytics from tables other than Order. See Using a Table Other Than Order for details.
  • The eqeagentca pipeline can now generate and persist order analytics from tables other than Order and OrderAnalytics. See Persisting Generated Analytics for details.
  • The .fsi.getOrderAnalyticSummary API can retrieve summary roll-ups for order analytics from tables other than OrderAnalytics. Use the table argument to the API to adjust this.

Enhancements

  • bargenerationv2-pipeline-spec.q is now the default specification file for the bargeneration pipeline.
  • When composite ticker mapping is enabled, the .fsi.generateOrderAnalytics API can be configured to reverse the mapping before returning results. This is configured using the .eqea.reverseCompositeMap variable, which is set to false by default. See .eqea.reverseCompositeMap for details.
  • When composite ticker mapping is enabled and the regenExistingIDs flag is set to true for .fsi.generateOrderAnalytics, the API will skip checking for existing IDs and will regenerate order analytics for all IDs. A message will be logged when this occurs.

Breaking changes

  • All custom analytics must now accept two arguments instead of one. Each function must take a keyed table and an argument dictionary.
  • Some utility functions now require an additional key, apiargs, in their argument dictionary. The new key is the argument dictionary passed in to the .fsi.eqea.generateOrderAnalytics API. See the Utility Functions for details. The utility functions affected are:
    • .eqea.util.tickData.getDataAndAggFromCfg
    • .eqea.util.asof.ajFromCfg
    • .eqea.util.timeRackFromCfg
    • .eqea.util.asof.ajTickDataToInput

Version 1.5.1

Release date: 2025-10-30

Enhancements

  • To improve performance, the following stream processors have been updated to support ingestion of multiple files simultaneously:
    • bbgquoteingest
    • bbgtradeingest
    • bbgquotepq
    • bbgtradepq

Bug fixes

  • Corrected the definition of inLimitInterval.
  • Corrected the definition of inLimitIntervalVolatility.

Version 1.5.0

Release date: 2025-09-04

Enhancements

  • The EQEA utility functions have been updated to take dictionary as input.

    Warning

    If your package contains custom analytics that use the .eqea.util.* functions, this update can break your existing code. Refer to the Additional Upgrade Steps section for the commands you need to update your custom code so that it works with this new version.

  • If you encounter an error while generating OrderAnalytics, the Order Analytics Generation Pipeline eqeagentca stops and reports the error to the UI.

  • The Order Analytics Generation Pipeline eqeagentca now has a configurable setting .eqea.trapErrs. If this setting is set to true, any error encountered during OrderAnalytics generation is logged and the pipeline continues to completion.

  • A method was added to prevent analytics from being calculated during OrderAnalytics generation. This is dictated by the configurable variable .eqea.cfg.removeAnalyticsList.

  • The dashboard has been updated to show instrumentID in the left-most column.

  • API .fsi.eqea.getOrderAnalyticSummary has been updated so that the column ordering of the output table now matches the order of input to args[`summaryFunctions].

  • Update to API .fsi.eqea.generateOrderAnalytics. The use of .kxi.selectTable has been improved to ensure better handling of late data.

  • Important documentation improvements, including:

Additional upgrade steps

Warning

This step is only required if your package contains functions that generate custom order analytics using the .eqea.util.* functions.

  1. Back up your original custom code.

  2. Run the code below to update all .eqea.util.* functions in your custom package:

    # Replace with the name of any file that calls the `.eqea.util.*` functions.
    FILE_NAME=INSERT_FILE_NAME_HERE;
    # Update all .eqea.util functions to use new dictionary inputs.
    sed -i 's/\.eqea\.util\.simpleAnalytics\[\([^]]*\)\]/\.eqea\.util\.simpleAnalytics\[(`OrderAnalyticsRes`cfg)!(\1)\]/' ${FILE_NAME};
    sed -i 's/\.eqea\.util\.tickData\.getDataAndAggFromCfg\[\([^]]*\)\]/\.eqea\.util\.tickData\.getDataAndAggFromCfg\[(`OrderAnalyticsRes`cfg`wcList`startTime`endTime`useQueryWindowAdjustmentFactor)!(\1)\]/' ${FILE_NAME};
    sed -i 's/\.eqea\.util\.asof\.ajFromCfg\[\([^]]*\)\]/\.eqea\.util\.asof\.ajFromCfg\[(`OrderAnalyticsRes`cfg`joinOrderTimeCol`kCols`wc)!(\1)\]/' ${FILE_NAME};
    sed -i 's/\.eqea\.util\.simpleAnalyticsWithWc\[\([^]]*\)\]/\.eqea\.util\.simpleAnalyticsWithWc\[(`OrderAnalyticsRes`cfg)!(\1)\]/' ${FILE_NAME};
    sed -i 's/\.eqea\.util\.tickData\.getDataAndAggregate\[\([^]]*\)\]/\.eqea\.util\.tickData\.getDataAndAggregate\[(`tickTabName`id`tw`wc`bc`aggDict`useQueryWindowAdjustmentFactor)!(\1)\]/' ${FILE_NAME};
    sed -i 's/\.eqea\.util\.timeRackFromCfg\[\([^]]*\)\]/\.eqea\.util\.timeRackFromCfg\[(`inputData`tickTabName`cfg`joinOrderTimeCol`kCols)!(\1)\]/' ${FILE_NAME};
    sed -i 's/\.eqea\.util\.asof\.ajTickDataToInput\[\([^]]*\)\]/\.eqea\.util\.asof\.ajTickDataToInput\[(`inputData`tickTabName`tickDataCols`numLookBackDays`wc)!(\1)\]/' ${FILE_NAME};
    sed -i 's/\.eqea\.util\.pivotByCfg\[\([^]]*\)\]/\.eqea\.util\.pivotByCfg\[(`data`cfg`timeCol`idCol`kCols`pivValues)!(\1)\]/' ${FILE_NAME};
    

Version 1.4.0

Release date: 2025-07-08

Enhancements

  • Compatibility fixes for kdb Insights Enterprise version 1.14

Version 1.3.3

Release date: 2025-06-25

New features

  • Added an index column to Order data when running .fsi.eqea.generateOrderAnalytics to ensure each order has a unique key beyond strikeTime, instrumentID, orderID, exchangeID
  • Added lookback logic to .eqea.util.asof.ajFromCfg and .eqea.util.asof.ajTickDataToInput ensuring values from previous date partitions are used when joining partitioned market data to orders that:
    • are placed near midnight so do not have market data in the specified partition OR
    • are illiquid so are not present in every date partition

Version 1.3.2

Release date: 2025-06-05

Enhancements

  • Updated the structure of the argument dictionary definition in the eqeagentca pipelines for better readability

Bug fixes

  • Fixed a bug in .fsi.eqea.getOrderAnalyticSummary which caused errors in the Equity-Execution-Analysis dashboard

Version 1.3.1

Release date: 2025-06-02

Enhancements

  • Improved the performance of aj analytics when the time period spans data across two different date partitions

Version 1.3.0

Release date: 2025-05-13

Bug fixes

  • Fixed a bug which caused null intraorderProfile values for instantly-filled Orders

Enhancements

  • Added a new cronjob example script for nightly pipeline triggers
  • Added more logging to .eqea.analytics.intraorderProfile as it is a longer multi-part analytic
  • Added more logging to .eqea.analytics.intervalOpenClose to signify when prevailing values are used
  • Log performance of all .eqea.util functions when running .fsi.eqea.generateOrderAnalytics with the environment in debug mode
  • Trace logs to show parameters used when reading from disk and running as-of joins when running .fsi.eqea.generateOrderAnalytics with the environment in trace mode
  • Switch RT sequencer logging on by default
  • Added the eqeagentav2 pipeline that has a flag to not regenerate existing calculated order analytics

Version 1.2.0

Release date: 2025-04-08

Enhancements

  • Updates for kdb Insights Enterprise version 1.13 compatibility
  • Increased amount of debug logging

Version 1.1.3

Release date: 2025-06-02

Enhancements

  • Improved the performance of aj analytics when the time period spans data across two different date partitions

Version 1.1.2

Release date: 2025-05-13

Bug fixes

  • Fixed a bug which caused null intraorderProfile values for instantly-filled Orders

Version 1.1.1

Release date: 2025-03-19

New features

  • Added the QueryWindowAdjustmentFactor option to increase window size of market data selects for analytics

Bug fixes

  • Fixed an issue in which the start and end times would reset in the dashboard when changing pages

Version 1.1.0

Release date: 2025-02-28

New features

  • Compatibility fixes for Insights Enterprise 1.12
  • Added an optimization in the Bloomberg Historical Ingest pipeline

Bug fixes

  • Fixed an issue in fxRates ingestion that caused failures for multi-day files
  • Fixed an issue causing a validation error when using .eqea.queryHdb:0b in the eqeagentca pipeline

Version 1.0.0

Release date: 2024-12-13

New features

  • A pipeline to ingest Bloomberg Data License format L1 equities quote & trade data in CSV or Parquet format: bbgquoteingest-pipeline, bbgtradeingest-pipeline and bbgquotepq-pipeline, bbgtradepq-pipeline
  • A pipeline for ingesting EOD OMS order data for analysis: eqeaorderingest-pipeline
  • Pipelines for ingesting exchange times and EOD FX reference rates: eqeaexchange-refdata-pipeline and eqeafxrates-pipeline
  • Schemas for Quote and Instrument data for the above
  • Nearly 200 customizable and extendable analytic metrics
  • Standard FSI Accelerator analytic and query APIs available through the FSI Library
  • An Insights performance report View that demonstrates summarization and visualization, including
    • Markout curves
    • Slippage distribution charts
    • Boxplot summarizations
  • An example Jupyter notebook, demonstrating Python and REST API access

Artifacts

Type Location
Accelerator Package https://portal.dl.kx.com/assets/raw/kxi-accelerators/fsi/fsi-bbg-eqea/

Version dependencies

To use the Bloomberg Equities Analytics Accelerator, you must have the following compatible versions of the underlying FSI Library, kdb Insights Enterprise, and the kxi CLI.

Bloomberg Equities Analytics Accelerator FSI Library kdb Insights Enterprise kxi CLI Combined Bloomberg Accelerator Version
1.0.0 1.1.3 1.10.1 1.10.0
1.1.0 1.2.1 1.12.3 1.12.0
1.1.1 1.2.1 1.12.3 1.12.0
1.1.2 1.2.1 1.12.3 1.12.0
1.1.3 1.2.3 1.12.3 1.12.0
1.2.0 1.2.3 1.13.0 1.13.0 1.0
1.3.0 1.3.2 1.13.2 1.13.2 1.1
1.3.1 1.3.2 1.13.2 1.13.2 1.1
1.3.2 1.3.2 1.13.2 1.13.2 1.1
1.3.3 1.3.2 1.13.2 1.13.2 1.1
1.4.0 1.3.3 1.14 1.14 1.2
1.5.0 1.3.4 1.14 1.14 1.3
1.5.1 1.3.5 1.16.0 1.16.0 1.3
1.5.2 1.3.6 1.16.0 1.16.0 1.3
1.5.3 1.3.7 1.17.1 1.17.1 1.4.1