Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The FINOS Common Domain Model for Capital Marke...

The FINOS Common Domain Model for Capital Markets by Tom Healey (FINXIS LLC) & Daniel Schwartz (FT Advisory LLC)

The FINOS Common Domain Model for Capital Markets
Tom Healey, Founder & Director at FINXIS LLC
Daniel Schwartz, Managing Partner at FT Advisory LLC

apidays New York 2025
API Management for Surfing the Next Innovation Waves: GenAI and Open Banking
Convene 360 Madison, New York
May 14 & 15, 2025

------

Check out our conferences at https://www.apidays.global/

Do you want to sponsor or talk at one of our conferences?
https://apidays.typeform.com/to/ILJeAaV8

Learn more on APIscene, the global media made by the community for the community:
https://www.apiscene.io

Explore the API ecosystem with the API Landscape:
https://apilandscape.apiscene.io/

Avatar for apidays

apidays

May 24, 2025
Tweet

More Decks by apidays

Other Decks in Programming

Transcript

  1. FINOS Fintech Open Source Day Developing APIs using the CDM

    Tom Healey I FINXIS LLC I Consultant to International Capital Market Association May 2025
  2. Capital Markets Data Connectivity Problem Differences in data models lead

    to real world events in those models producing different outcomes: • Reconciliation breaks • Valuation differences • Collateral disputes • Reporting mismatches • Operational inefficiency • Settlement failures • Barriers to automation  Banks, asset managers, brokers and other firms in the financial industry need to connect with hundreds of trading platforms, service providers, clearing firms and vendors.  Mckinsey estimates that a typical global bank has hundreds to thousands of applications.  Most applications have their own data model and API.  Over time firms have adopted programming languages dating back over 50 years.
  3. How does the CDM address the capital market data problem?

    CDM Trading Systems Risk Management Systems Inhouse Systems Reference Data Systems Client Applications Exchanges and Venues  Integrates applications across the enterprise.  Common code generated APIs and services in multiple program languages.  Custom data model integration and mapping.  Embedded events and services.  Custom modelling.
  4.  Standardizes financial products and business events across participants in

    trading, clearing, settlement and reporting.  Implements an open-source standard language and taxonomy that supports future model expansion and integration.  Utilizes model-driven workflows and events developed with consensus of members and contributors.  Helps eliminate bi-lateral, custom development, configurations and setup by utilizing the CDM pre-defined workflows and objects.  Accelerates transition to shared cloud services by simplifying architecture integration. Benefits of the CDM
  5. Product Coverage The use of common elements allow for representation

    of multiple types of products and events in the trade workflow with minimal incremental work. Thus, this coverage list does not represent an exhaustive list of all possible combinations of elements or events Vanilla Products Interest Rate ad Credit Derivatives Financing Interest Rate Derivatives: • Interest Rate Swaps (incl. cross- currency swaps, non-deliverable swaps, basis swaps, swaps with non-regular periods, ...) • Swaptions, Caps/floors, FRAs • OTC Options on Bonds Repurchase Agreements: • Open Term, Fixed Term, Fixed Rate, Floating Rate Securities Lending: • Single underlier, cash collateralised, open/term security loan Bonds Equities Foreign Exchange Commodities Funds Credit derivatives: • Credit Default Swaps (incl. baskets, tranche, swaps with mortgage and loans underliers, ...) • Options on Credit Default Swaps Commodity derivatives: • Swaps, options, swaptions Foreign Exchange derivatives: • FX Swap, Forward, NDF, Options Equity derivatives: • Equity Swaps (TRS, PRS, single name/index/basket, VarSwap, VolSwap, Dispersion, Correlation, Dividend Swap) • Options & Forwards Exchange Traded derivatives
  6. CDM Technology Framework Key Features: • Common domain specific language.

    • Multi-language code generator. • Data Mapping • Model customization • Embedded libraries, APIs or web services. * Developed by Regnosys. Lead developers: Minesh Patel, Hugo Hills.
  7. Using the CDM to Develop API services JAVA API Library

    C# API Library Typescript API Library Python API Library Standard UML CDM Code Generators Meta Data Model Classes and Attributes Model Events Model Conditions CDM RUNE Language and Code Generators APIs
  8. CDM DLT API Example CDM Event Instructions Execution Termination Roll

    Rerate Reprice/Adjust Substitution Shape/Pair-off Partial Delivery CDM Primitive Events Tokenize Assets DLT Actions Transfer Assets Authorizations Compliance Off-chain Access Increase/Decrease Execution Contract Formation Terms Change Transfer Reset Quantity Change Web3 Interface Off-chain Services Reference Data Asset Lockup Reporting Pricing/Valuation Off-chain transfers Serialization/Hash Business Event Token Constructors DLT Events Off-Chain Event Storage Custody
  9. Web3 Model Interface to CDM APIs Web3 Service Platforms Cross

    Chain Services DLT Platforms Direct Onchain Access Services Accounts Contracts Providers Abi Config type Web3Interface: contractAddress string (1..1) abi Abi (1..1) provider Provider (1..1) type Accounts: keyStore string (1..1) password string (1..1) recordOptions Record (0..*) privateKey string (1..1) cipherOptions CipherOptions (1..1) type CipherOptions: cc number (0..1) dken number (0..1) iv Uint8Array (0..1) kdf Scrypt (0..1 n number (0..1) p number (0..1) r number (0..1) sale UintArray (0..1) CDM DSL Web3 Interface Specification
  10. CDM Resources  CDM Home Page: https://cdm.finos.org/docs/home  GitHub Repository,

    https://github.com/finos/common-domain-model  git clone -b “6.5.0" https://github.com/finos/common-domain-model (latest production release)  git clone -b “7.0.0-dev.12" https://github.com/finos/common-domain-model (latest development release)  Open Issues: • See https://github.com/finos/common-domain-model/issues • Submit questions and proposals for group comment  CDM Core Examples: https://github.com/finos/common-domain-model/tree/master/examples  Training Example: https://github.com/tomhealey-icma/cdm-training-app  Repo Example: https://github.com/tomhealey-icma/cdm-repo-demo-app  Basket Builder: https://github.com/tomhealey-icma/cdm-gc-basket-builder
  11. ICMA Contacts and Resources ICMA contacts: Gabriel Callsen, Senior Director

    [email protected] +44 (0)20 7213 0334 Tom Healey, Consultant [email protected] Useful links: FINOS CDM GitHub repository FinTech Overview ICMA’s CDM webpage ICMA CDM Demo – Automating repo transactions (April 2023) Bond Data Taxonomy DLT Bonds Working Group FinTech newsletter Podcasts This presentation is provided for information purposes only and should not be relied upon as legal, financial, or other professional advice. While the information contained herein is taken from sources believed to be reliable, ICMA does not represent or warrant that it is accurate or complete and neither ICMA nor its employees shall have any liability arising from or relating to the use of this publication or its contents. © International Capital Market Association (ICMA), Zurich, 2024. All rights reserved. No part of this publication may be reproduced or transmitted in any form or by any means without permission from ICMA.
  12. CDM: apidays CDM: Using and Integrating APIs APIs • A

    set of rules that allows different software applications to communicate and share data with each other. • Acts as a bridge between different systems, enabling them to work together without needing to understand each other's internal workings. CDM API Usage • Serialization-based CDM APIs • Interrogating the CDM API • An API Collaboration Architecture
  13. CDM: apidays Serialization-based CDM APIs • Recap: CDM is a

    data and event software library defined in Rune and produced by generators (Java, Python, et al) • Serialization provides one means to realize API-based interoperability • Rune-based objects are serialized in JSON • Standard established in CDM 7 System A System B CDM (JSON) Deserialize Execute Function (e.g. QuantityReduced)
  14. CDM: apidays Rune and Serialization • Deserialization automatically creates objects

    of the appropriate type Rune JSON namespace test.passing.extension type A: fieldA string (1..1) type B extends A: fieldB string (1..1) type Root: typeA A (0..1) typeB B (0..1) { "@model" : "serialization", "@type" : "test.passing.extension.Root", "@version" : "0.0.0", "typeA" : { "fieldA" : "bar", "fieldB" : "foo", "@type" : "test.passing.extension.B" } }
  15. CDM: apidays Interrogating the CDM API • Rune • Software

    libraries (Java, Python) • JSON Schema • Generated from CDM • Generated from Python • Swagger? • Needs an implementation • Complex data model may lead to rendering challenges
  16. CDM: apidays An API Collaboration Architecture Directory Entity A Entity

    B CDM Collaboration Network Workflow Engine Workflow Engine Message Bus Microservices One time interaction On going interactions Router 1 2 3 4 5 6 7
  17. CDM: apidays CDMFLOW ™ CDMFLOW is a pioneering technology firm

    and consultancy dedicated to empowering clients to realize transformative efficiencies and innovation. Contacts • Daniel Schwartz: [email protected] • Plamen Neykov: [email protected]