Skip to content

Commit 0fe5ca8

Browse files
regnosys-prod-userrogerguitartJayasriR
authored
Roger Guitart TRS on a Bond (finos#2855)
* TRS on a Bond Coverage of AssetClass = CRDT for a TRS with a debt instrument as an underlier * Update RELEASE.md * update release notes --------- Co-authored-by: Roger Guitart <rguitart@tradeheader.com> Co-authored-by: JayasriR <124573358+JayasriR@users.noreply.github.com> Co-authored-by: Jayasri Radhakrishnan <jayasri.radhakrishnan@regnosys.com>
1 parent d214cb9 commit 0fe5ca8

File tree

2 files changed

+41
-0
lines changed

2 files changed

+41
-0
lines changed

RELEASE.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,38 @@
1+
# _Product Model - Qualification of Total Return Swaps (TRS) with a Debt Underlier_
2+
3+
_Background_
4+
5+
Following ESMA Guidelines, Total Return Swaps with a debt instrument as their underlier (bond, loan, etc) must report field 2.11 - `Asset Class` as 'CRDT', while TRS on an equity index or a basket of equities should report `Asset Class` as 'EQUI'. Currently in the CDM, a Total Return Swap with a debt underlier is not classified correctly, and thus is being reported incorrectly as well. This release aims at fixing the `Qualify_AssetClass_Credit` function such that Total Return Swaps on a bond or a loan report AssetClass as 'CRDT'.
6+
7+
_What is being released?_
8+
9+
- The function `Qualify_AssetClass_Credit` is increasing its coverage to include Total Return Swaps with an underlier of a `loan` or a `securityType` of `debt`.
10+
11+
_Functions_
12+
13+
- Updated `Qualify_AssetClass_Credit` function to support Total Return Swap products, defined as having an `interestRatePayout` and a `performancePayout`. The function checks the `performancePayout` that `underlier -> loan` is present or that `underlier -> security -> securityType = Debt`.
14+
15+
_Review directions_
16+
17+
In Rosetta, select the Textual View and inspect the change identified above
18+
19+
The changes can be reviewed in PR: [#2855](https://github.com/finos/common-domain-model/pull/2855)
20+
21+
# _Product Model - Qualification of Foreign Exchange NDS_
22+
23+
_Background_
24+
25+
Currently, Foreign Exchange Non-Deliverable Swaps are not supported in the Common Domain Model. This release adds qualification support for this kind of product.
26+
27+
_What is being released?_
28+
29+
- Added the function `Qualify_ForeignExchange_NDS` that qualifies as true if a product has two forward payouts with an FX underlier and the `cashSettlementTerms` populated.
30+
_Review directions_
31+
32+
In the Rosetta platform, select the Textual View and inspect each of the changes identified above.
33+
34+
PR: [#2866](https://github.com/finos/common-domain-model/pull/2866)
35+
136
# _Addition of new enumeration to AvailableInventory_
237

338
_Background_

rosetta-source/src/main/rosetta/product-qualification-func.rosetta

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ func Qualify_AssetClass_Credit: <"Qualifies a product as having the Asset Class
6060

6161
alias optionUnderlier: economicTerms -> payout -> optionPayout only-element -> underlier
6262
alias forwardUnderlier: economicTerms -> payout -> forwardPayout only-element -> underlier
63+
alias performanceUnderlier: economicTerms -> payout -> performancePayout only-element -> underlier
6364

6465
set is_product:
6566
economicTerms -> payout -> creditDefaultPayout only exists
@@ -80,6 +81,11 @@ func Qualify_AssetClass_Credit: <"Qualifies a product as having the Asset Class
8081
else False
8182

8283
)
84+
// Interest Rate Payout + Performance Payout (Total Return Swap with a debt instrument as underlier)
85+
or ((economicTerms -> payout -> interestRatePayout, economicTerms -> payout -> performancePayout) only exists
86+
and if performanceUnderlier exists
87+
then (performanceUnderlier -> loan exists or performanceUnderlier -> security -> securityType = SecurityTypeEnum -> Debt)
88+
)
8389

8490
func Qualify_AssetClass_ForeignExchange: <"Qualifies a product as having the Asset Class classification Foreign Exchange">
8591
inputs:

0 commit comments

Comments
 (0)