Core vs Finance¶
This page explains what each package provides, how they relate, and what the Finance layer adds for capital-markets use cases.
Core is the engine. Finance is the engine tuned for capital markets.
KX Refinery Core is a general-purpose platform for capturing, storing, and analyzing time-series data — it makes no assumptions about your business domain. The Finance package is a domain layer that sits on top of Core and turns it into a ready-to-run market-data refinery for trades, quotes, order books, reference data, and corporate actions.
Finance does not replace Core — it extends it. A Finance deployment is Core plus the Finance layer, running together.
KX Refinery Core¶
Core is a modular platform for data capture, storage, and analytics. Its architecture keeps business logic out of the platform and in the applications that use it, so applications plug into the data they need without being tightly bound to specific schemas or process topology. See Features and Architecture for detail.
What Core gives you:
- Access to both historical and streaming real-time content.
- Horizontally and vertically scalable — no fixed limit on performance or capacity.
- "Hot-Hot" high-availability architecture for mission-critical use cases.
- Flexible deployment: on-premise, cloud (AWS, GCP, Azure), or hybrid.
- Sandboxes for data science and research.
- An extensible analytics API (user-defined functions) and extensible schemas.
- A complete system-management and monitoring solution.
- A full pub/sub layer for streaming real-time content.
Core's data API is deliberately generic: getTicks (query time-series data), getStats (query analytics over that data), and getUDF (user-defined functions).
Core ships with no data pipelines
Out of the box, Core provides the platform, the storage tiers, the query gateway, and the generic API — but the schemas and pipelines that describe your data are added by a domain or client package on top. This is what makes Core reusable across any industry. See Domain and Client Extensions.
The Finance package¶
Finance is a domain package layered on top of Core that pre-configures the platform for capital markets. It ships the schemas, pipelines, feed integrations, and market-data analytics that a financial-data platform needs on day one — so you start with a working market-data refinery rather than an empty platform.
The Finance layer adds:
- Prebuilt market-data pipelines across asset classes: equities, equity L2, futures, futures L2, FX, fixed income, indices, money markets, and listed options.
- Trade & quote (TAQ) and Level 2 order-book data models — including order-book depth and intraday/current snapshots.
- Refinitiv market-data integration — Tick History (TRTH) ingestion, real-time feed handling, and DataScope Plus (DSP) reference-data downloads.
- Corporate actions — split and dividend adjustments applied to historical prices.
- Cancellations and corrections handling for trade data.
- Condition-code filter rules — named rules that cleanse the trade/quote data the API returns.
- Security-master and reference data, plus a trading calendar / venue data.
- Real-time daily summaries tracked continuously and served instantly.
- Client-facing tooling: watchlist management, CSV client upload, and a request/report generator.
Finance requires Core
Finance is a layer on top of Core and is released in lockstep with it — both are on the same 5.16.0 release line. See the Finance admin guide and Finance server-side API.
How the two relate¶
Refinery is built to be layered. Packages stack in a fixed order, each able to customize the layer beneath it without breaking or overwriting it:
| Layer | Role | Load order |
|---|---|---|
| Client | Your site-specific tables, pipelines, and overrides | 3rd (highest priority) |
| Domain (for example, Finance) | Industry-specific schemas, pipelines, APIs | 2nd |
| Core | The general-purpose platform | 1st (base) |
Packages load core → domain → client, and configuration priority runs the other way (client > domain > core). Because the domain layer plugs in through defined hooks, a domain feature adds capability where Core alone would behave generically — the platform underneath is unchanged and upgradeable. See Domain and Client Extensions.
Side-by-side comparison¶
| Capability | Core (platform) | Finance (Core + Finance layer) |
|---|---|---|
| Purpose | Domain-agnostic capture, storage & analytics | Capital-markets market-data refinery |
| Data pipelines out of the box | None — you define them | Prebuilt across 9 asset classes |
| Data model / schemas | Generic, user-defined | Trade & quote (TAQ), L2 order-book depth & snapshots, reference data |
| Market-data ingestion | Generic loaders | Refinitiv TRTH, real-time feed handler, DataScope Plus |
| Data API | getTicks, getStats, getUDF |
Enhanced getTicks / getStats, plus getBars, getSummary, getRef |
| Corporate actions | — | Split & dividend adjustments on demand |
| Cancellations / corrections | — | Built-in handling |
| Condition-code filtering | — | Named filter rules to cleanse trade/quote data |
| Reference data | — | Security master, trading calendar, venue data |
| Real-time daily stats | Via generic analytics | Dedicated getSummary (tracked in real time) |
| Scalability & HA | Hot-Hot, cloud/on-prem/hybrid, elastic | Inherited from Core |
| Monitoring & management | Included | Inherited from Core |
Advantages of the Finance package¶
For a financial-market-data use case, the Finance layer delivers value that a bare Core install would otherwise require you to build yourself:
-
Faster time to value.
Prebuilt pipelines for equities, futures, FX, fixed income, indices, money markets, and listed options (including L2) mean you are capturing and querying market data on day one instead of designing schemas and pipelines from scratch.
-
A richer, market-aware API.
Finance enhances the generic
getTicksandgetStatswith capital-markets parameters — apply corporate-action adjustments (adjustCorAx), cancellations/corrections (applyCanCor), condition-code filters (filterRule), select anassetClass, choose an identifier type (idType), and pull L2 depth (numLevels) — all applied on demand at query time. It also adds three finance-specific functions:getBars(pre-aggregated bars),getRef(static reference data), andgetSummary. See the Finance server-side API. -
Familiar, capital-markets vocabulary.
The Finance API speaks the terms a market-data user already knows, rather than the platform's generic ones. Instrument lists are
symList(the generic core parameter isidList), the class of instrument isassetClass— with readable values such asequity,future,foreignExchange,fixedIncome,index,moneyMarket, andlistedOptions— and identifier remapping iscustomSymbologyMapping. Finance also adds parameters with no generic equivalent (adjustCorAx,applyCanCor,filterRule,numLevels), so a single query expresses a full market-data request in domain language. -
Built-in data quality.
Corporate-action adjustments, cancellation/correction handling, and named condition-code filter rules mean the data your users receive is already cleansed and adjusted — without bespoke post-processing.
-
Depth and breadth of market data.
Native Level 2 order-book support (depth and snapshots) alongside trade & quote (TAQ) data covers both top-of-book and full-depth use cases.
-
Real-time daily summaries, fast.
Current daily statistics are tracked in real time and served through
getSummary, whose response time is orders of magnitude faster than running the equivalentgetStatsquery against real-time data. -
Refinitiv integration out of the box.
Tick History (TRTH) ingestion, real-time feed handling, and DataScope Plus reference-data downloads are pre-integrated — no custom feed engineering to connect to Refinitiv sources.
-
All the platform strengths of Core, unchanged.
Because Finance is a layer on Core, it inherits Core's scalability, Hot-Hot high availability, multi-cloud/on-prem deployment options, monitoring, and extensibility. You add finance capability without giving up any platform capability.
Which to choose¶
Choose Core when you need a general-purpose, high-performance time-series platform and will define your own domain schemas and pipelines.
Choose Finance when your domain is capital markets. You get everything Core offers plus a ready-made market-data refinery: prebuilt asset-class pipelines, trade/quote and L2 data models, Refinitiv ingestion, corporate-action and filter-rule processing, reference data, and a market-aware API.