Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lionel Smith-Gordon Phase-1-Asset-Refactor #2997

Conversation

regnosys-prod-user
Copy link
Collaborator

No description provided.

@regnosys-prod-user regnosys-prod-user requested a review from a team as a code owner June 18, 2024 12:42
@regnosys-prod-user regnosys-prod-user added the Rosetta This Pull Request can be viewed in Rosetta label Jun 18, 2024
Copy link

netlify bot commented Jun 18, 2024

Deploy Preview for finos-cdm failed. Why did it fail? →

Name Link
🔨 Latest commit 605a001
🔍 Latest deploy log https://app.netlify.com/sites/finos-cdm/deploys/667ee1167f109d0008e2c7e4

@JBZ-Fragmos
Copy link
Contributor

@Oblongs

not sure the suggestion below (recorded in some Minutes) have been taken into account ? please let me know about it

This Enum type should be included in the scope of our discussion

I guess “Asset” concept will imply refactoring here, for instance :

  • shall we replace Share by Asset ?
  • else shall we list all Asset types inside as new values that would extend the existing in the Enum list in order to encompass explicitly here all types of Asset ?

image

Updates to ListedDerivative
@JBZ-Fragmos
Copy link
Contributor

in addition to the above @Oblongs,

change proposal :

  • simplifying_ PriceQuantity by removing attributes :
    • SettlementTerms
    • and BuyerSeller

image
image

  • considering renaming as well ?
    • new name ObservablePriceQuantity (instead of current name PriceQuantity)

rationale :

  • cause of potential overlaps/inconsistencies, because these attributes are redundant with regards to similar ones in payoutBase and/or settlementCommitment* recently discussed :
    image

  • rationale for renaming is just to evidence the fact such type would effectively contain exactly these 3 items : observable+price+quantity...

@JBZ-Fragmos
Copy link
Contributor

another improvement to discuss please @Oblongs
about some PriceSchedule and QuantitySchedule in Payout for which [metadata address] is currently missing

Background

Purpose of having [metadata address] for PriceSchedule and QuantitySchedule in Payout, permits to reference the corresponding type with [metada location] in TradeLot.

One main benefit for having such referencing is for updating the related components inside Payout in regards of a LifeCycle Event represented with quantityChange Instruction (or more generally with any Intruction that may be contemplated where PriceSchedule or QuantitySchedule would be used).

In case such reference annotation is missing for a given PriceSchedule or QuantitySchedule component in Payout, there is no other ways to update it than using termsChange Instruction (that being heavy compared to quantityChange for the only purpose of updating a kind of components for which quantityChange is originally designed)

Problem Statement

The [metadata address] annotation is missing for PriceSchedule and QuantitySchedule in some Payout, that is to say the possibility to reference **PriceSchedule and QuantitySchedule with [metada location] fromTradeLot is not implemented in consistent/exhaustive manner in current model e.g. in some case it is present (OK) but in ther cases it is missing (KO=inconsistent)

Example where it is already present
(OK = already aligned with target)

  • payoutBase->priceQuantity->priceSchedule
  • payoutBase->priceQuantity->quantitySchedule
  • performancePayout -> (initialValuationPrice, interimValuationPrice, finalValuationPrice)
  • etc.

Example where it is missing
(KO = need to insert the [metadata address] for these items)

  • optionPayout->exerciseTerms->strike

  • performancePayout->returnTerms->varianceReturnTerms->varianceStrikePrice

  • performancePayout->returnTerms->volatilityReturnTerms->volatilityStrikePrice

  • performancePayout->returnTerms->volatilityReturnTerms->vegaNotionalAmount

  • performancePayout->returnTerms->correlationReturnTerms->correlationStrikePrice

  • etc. (other ocurrences may exist)

  • also missing for mostly all ocurrences where a kind of barrier is represented (usually that is because poor type "number" being used with no good reason, instead of using more rich type such as "PriceSchedule") :

    • performancePayout->returnTerms->varianceReturnTerms->varianceCapFloor->unadjustedVarianceCap
    • trigger->level
    • etc. (other ocurrences may exist)

documentation updates
Change to Rune DSL
Updates to introduce the changes in this PR
@LionelSG-REGnosys
Copy link
Contributor

change proposal :

  • simplifying_ PriceQuantity by removing attributes :
    • SettlementTerms
    • and BuyerSeller

This aligns with the scope of the planned 3rd tranche of changes and is not relevant to this PR.

@LionelSG-REGnosys
Copy link
Contributor

another improvement to discuss please @Oblongs about some PriceSchedule and QuantitySchedule in Payout for which [metadata address] is currently missing

This proposal is also aligned with the third tranche and is not relevant to this PR.

@LionelSG-REGnosys
Copy link
Contributor

First phase of changes required to assress Issue #2805

Copy link
Contributor

@dshoneisda dshoneisda left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed in CRWG 2nd July and approved on that basis

@hugohills-regnosys
Copy link
Contributor

Replaced by #3022

@PayalKhanna PayalKhanna deleted the lionel_auth0_65080e6e10b98cc73ac44ca1-Phase1-ART branch July 9, 2024 13:05
@PayalKhanna PayalKhanna restored the lionel_auth0_65080e6e10b98cc73ac44ca1-Phase1-ART branch July 9, 2024 13:05
@PayalKhanna PayalKhanna deleted the lionel_auth0_65080e6e10b98cc73ac44ca1-Phase1-ART branch July 9, 2024 13:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Rosetta This Pull Request can be viewed in Rosetta
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants