finos/common-domain-model

CDM Asset Refactor Task Force - June 27th, 2024

Closed this issue · 13 comments

CDM Asset Refactor Task Force Minutes

Meeting Host: Lionel Smith Gordon, Regnosys

Date

June 27th, 2024 - 11 am ET / 4 pm BST

Untracked attendees

Meeting notices

  • FINOS Project leads are responsible for observing the FINOS guidelines for running project meetings. Project maintainers can find additional resources in the FINOS Maintainers Cheatsheet.

  • All participants in FINOS project meetings are subject to the LF Antitrust Policy, the FINOS Community Code of Conduct and all other FINOS policies.

  • FINOS meetings involve participation by industry competitors, and it is the intention of FINOS and the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws. Please contact legal@finos.org with any questions.

  • FINOS project meetings may be recorded for use solely by the FINOS team for administration purposes. In very limited instances, and with explicit approval, recordings may be made more widely available.

Agenda

  • Convene & roll call (5mins)
  • Display FINOS Antitrust Policy summary slide
  • Review Meeting Notices (see above)
  • Approve meeting minutes
  • Securities Financing Qualification part 2.
  • Phase 2 release.
  • AOB, Q&A & Adjourn (5mins)

Materials

ARTForce 27Jun24 (1).pptx

Minutes

  1. Minutes:
    a. Minutes of 20 June approved.

  2. Product Qualification:
    a. Re-capped the challenge with Product Qualification for Repo and Sec Lending.
    b. Consensus agreement on the proposal that shows that Repo and Sec Lending can be differentiated with the model (pg 3):
    i. Security Lending specifies what is being lent in an Asset Payout in Economic Terms
    ii. Repo specifies the product using an Interest Rate Payout in Economic Terms
    iii. Both types also have Collateral populated
    iv. This model cannot differentiate between Repo and Buy Back and an Enum is proposed to resolve this.
    c. The design of this Enum and where it is placed in the model has not been agreed; options include:
    i. As an attribute on Economic Terms
    ii. As an attribute on Product/ProductBase with refactoring of Product Qualification to use Product as the input. This could also include the addition of LegalAgreement to the process.
    iii. This will be addressed next (ie in Phase 3 PR).

  3. Second Phase PR:
    a. PR has been submitted including the first two phases of changes (details in deck).
    b. Participants asked to review and provide feedback.
    c. Member said they are uncomfortable with some of the contents and timeline for review; how do they escalate? Suggest that they speak with ISDA to raise concerns.
    d. Request that TradableProduct be removed and all of its attributes moved up to Trade.
    e. Agreed approach for formal review:
    i. Changes have been documented and circulated appropriately.
    ii. Present PRs at CRWG.
    iii. Seek Maintainer approval.
    f. Discussion on implementation approach; refer to page 8 on samples and testing.

  4. Carried forward items
    a. FX
    i. Discussion on the use of ForwardPayout for FX, is this changing?
    ii. How should FX Forwards be modelled.
    iii. Discussion on the concept of ‘product’ for FX trading; follow-up on ForwardPayout.
    b. Need to confirm a solution for issue 2581, ie whether it is included in the Task Force scope; Tom/Lionel to address off-line.
    c. Seeking clarity on the promotion of the Choice and Deep Path functionality in Rune DSL into CDM Dev so that it can be used with the refactoring; Discussion scheduled on 28 June.

  5. AOB
    a. Restart drop-in sessions.
    b. Participants may schedule additional sessions where required.

Zoom info

Join Zoom Meeting
https://zoom.us/j/91947398280?pwd=YS85Mmo4ejhvV2VKMlpaU1FmeDYydz09

Meeting ID: 919 4739 8280
Passcode: 867245

@Oblongs

please could we discuss the proposed change below (whether agree to consider it in-scope or not...)

for me would really make lot of sense (for sure per se, but notably in regards of the direction we've been moving to with having a "minimum" payout, etc.)

in one word proposed change consists in

  • "purifying" tradeLot->priceQuantity from any attributes being redundant, thus causing potential overlaps/inconsistencies with regards to similar attributes in payoutBase and/or in minimum payout

image

image

rationale :
cf. below potential overlaps/inconsistencies i'm referring to in current model :
image

Lionel Smith-Gordon for REGnosys

Dhruva / JPMC

Chris Rayner / ISLA

Tom Healey/ICMA

jb ziade / FRAGMOS

Dan Schwartz / FT Advisory

Please consider moving TradeLot up a level in the model as its inclusion in TradableProduct isn't very intuitive. From experience, at minimum a "trade" in non-OTC products is determined by the composition of a product, an amount, a settlement date and a price. By including TradeLot (which contains PriceQuantity) in TradableProduct the current approach is in contrast to that standard approach and implies that multiple trades in the same product will lead to multiple instances of what is essentially the same product. image001

@dschwartznyc not sure to follow your proposal or concern

kindly elaborate - thanks in advance for your answers :

  • 1 / where would you place TradeLot exactly, then, if current place might not be adequate in your view ?
  • 2 / what is the "standard approach" you are referring to ?
  • 3 / sorry do not understand the core issue you are mentioning "multiple trades in the same product will lead to multiple instances of what is essentially the same product" : please provide an example with mode details

Last feedback i would like to provide here is that at least from my experience in CDM implementation (FRAGMOS-CHAIN), I have not experienced so far any issue or inconsistency that would be caused by the fact TradeLot being an attribute of TradableProduct - hence why kindly asking more details to better understant why you are seeing potential issues (if theoretical concern about it) or actual issues (as part of an implementation ? but then which ones exactly ?)

Thanks
JB

  1. @JBZ-Fragmos as discussed in Thursday's session, for non-OTC derivatives products the recommendation is that tradeLot should be placed alongside TradableProduct not contained in TradableProduct.
  2. WRT products likes securities, a trade is generally determined by a product selection (ie UST 10yr note), the amount traded, the price and the settlement.
  3. It seems to me that the implication of TradableProduct continuing to contain the quantity and price of the trade is that there will be two instances of the essentially the same product for each trade whereas there should just be two trades in the same product.

Lastly - I appreciate that from the modeling of OTC derivatives this would not be an issue. From my perspective, the issues arise when one considers the changes envisioned to better support modeling of other types of products.

  1. implication of TradableProduct continuing to contain the quantity and price of the trade is that there will be two instances of the essentially the same product for each trade whereas there should just be two trades in the same product.

I don't think this is the case. For a negotiated Product (ie OTC), there will be a large Economic Terms structure which is unlikely to ever be duplicated as each one is bespoke.
For a transferable product (eg Security), the only information that is duplicated are the product references, eg an ISIN.

The following documentation may help: https://cdm.finos.org/docs/product-model#tradable-product

definitely confused - looked through the documentation. Since TradableProduct contains contains tradeLot, what happends if there are two trades in the same underlying product (as described by Product)? won't that result in two instances of what is essentially the same TradableProduct? Wasn't this issue the motivation for moving tradeLot up a level?

TradableProduct

Proposal presented at meeting on 3 and 4 July to resolve and accepted by @dschwartznyc