PerformancePayout
Type CDM 7.2.0Contains the necessary specifications for all performance payouts, encompassing equity return, dividend, variance, volatility and correlation products.
Attributes
10 declared on PerformancePayout, 4 inherited. Cardinality in amber is required.
| Name | Type | Card. | Description | From |
|---|---|---|---|---|
| payerReceiver | PayerReceiver | 1..1 | Canonical representation of the payer and receiver parties applicable to each payout leg. | PayoutBase |
| priceQuantity | ResolvablePriceQuantity | 0..1 | Each payout leg must implement the quantity concept as a 'resolvable' type, which allows for different payout legs to be linked to each other (e.g. in the case of cross-curreny products). | PayoutBase |
| principalPayment | PrincipalPayments | 0..1 | The specification of the principal exchange. Optional as only applicable in the case of cross-currency or zero-coupon swaps with a final payment. | PayoutBase |
| settlementTerms | SettlementTerms | 0..1 | Each payout leg must specifies its settlement terms, including the delivery type (i.e. cash vs physical, and their respective terms), the transfer type (DvP etc.) and settlement date, if any. | PayoutBase |
| observationTerms | ObservationTerms | 0..1 | Defines how and when a performance type option or performance type swap is to be observed. | — |
| valuationDates | ValuationDates | 1..1 | Defines how and when a performance type option or performance type swap is to be valued, including both interim and final valuation. | — |
| paymentDates | PaymentDates | 1..1 | Defines the payment date schedule, as defined by the parameters that are needed to specify it, either in a parametric way or by reference to another schedule of dates (e.g. the valuation dates). | — |
| underlier | Underlier | 0..1 | Identifies the underlying product that is referenced for pricing of the applicable leg in a swap. Referenced in the '2018 ISDA CDM Equity Confirmation for Security Equity Swap' as Security. | — |
| fxFeature | FxFeature | 0..* | Defines quanto or composite FX features that are included in the swap leg. | — |
| returnTerms | ReturnTerms | 0..1 | Specifies the type of return of a performance payout. | — |
| portfolioReturnTerms | PortfolioReturnTerms | 0..* | Specifies an individual type of return of a Performance Payout, when such individual return is part of an aggregation of multiple similar returns, at Performance Payout level | — |
| initialValuationPrice | PriceSchedule | 0..* | Specifies the net initial valuation price(s) of the underlier at Performance Payout level. This price can be expressed either as an actual amount/currency, as a determination method, or by reference to another value specified in the swap document. | — |
| interimValuationPrice | PriceSchedule | 0..* | Specifies the net initial valuation price(s) of the underlier at Performance Payout level. This price can be expressed either as an actual amount/currency, as a determination method, or by reference to another value specified in the swap document. | — |
| finalValuationPrice | PriceSchedule | 0..* | Specifies the net final valuation price(s) of the underlier at Performance Payout level. This price can be expressed either as an actual amount/currency, as a determination method, or by reference to another value specified in the swap document. | — |
Conditions
Validation rules the model enforces on this type, in Rune. An instance that breaks one of these is invalid CDM, whatever produced it.
underlier as Observable exists required choice returnTerms, portfolioReturnTerms if portfolioReturnTerms exists
then portfolioReturnTerms count > 1 if portfolioReturnTerms -> priceReturnTerms exists
then underlier as Basket exists priceQuantity exists if underlier as Index exists
then returnTerms -> varianceReturnTerms -> sharePriceDividendAdjustment is absent
and returnTerms -> volatilityReturnTerms -> sharePriceDividendAdjustment is absent if underlier as ForeignExchangeRateIndex exists
then returnTerms -> varianceReturnTerms -> sharePriceDividendAdjustment is absent
and returnTerms -> volatilityReturnTerms -> sharePriceDividendAdjustment is absent if returnTerms -> correlationReturnTerms exists
then underlier as Basket exists if Qualify_UnderlierObservable_Equity(underlier as Observable) = False
then returnTerms -> varianceReturnTerms -> dividendApplicability is absent
and returnTerms -> varianceReturnTerms -> equityUnderlierProvisions is absent
and returnTerms -> varianceReturnTerms -> sharePriceDividendAdjustment is absent
and returnTerms -> volatilityReturnTerms -> dividendApplicability is absent
and returnTerms -> volatilityReturnTerms -> equityUnderlierProvisions is absent
and returnTerms -> volatilityReturnTerms -> sharePriceDividendAdjustment is absent
and returnTerms -> correlationReturnTerms -> dividendApplicability is absent
and returnTerms -> correlationReturnTerms -> equityUnderlierProvisions is absent
and returnTerms -> correlationReturnTerms -> sharePriceDividendAdjustment is absent Functions
Model functions that produce or consume this type. These are the CDM's own behaviour — the logic a correct implementation has to match.
| Function | Role | Description |
|---|---|---|
| NewSingleNameEquityPerformancePayout | returns | Function specification to create the equity payout part of an Equity Swap according to the 2018 ISDA CDM Equity Confirmation template. |
| ResolvePerformanceObservationIdentifiers | takes | Defines which attributes on the PerformancePayout should be used to locate and resolve the underlier's price, for example for the reset process. |
| ResolvePerformanceReset | takes | Defines how to resolve the reset value for a performance payout. |
| StandardizedScheduleFXVarianceNotionalAmount | takes | Extracts the notional amount of an FX variance swap. |
| StandardizedScheduleVarianceSwapNotionalAmount | takes | Extracts the notional amount of an EQ variance swap. |
| ResolvePerformancePeriodStartPrice | takes | Resolves the price from the end of the previous period. If first period, then take the initial price. |
In the product library
Canonical products whose JSON instantiates PerformancePayout. Useful when
you want to see the type populated rather than described.
| Product | Asset class | Family |
|---|---|---|
| Equity Swap CFD | Equity | Swaps |
| Equity Swap Composite Basket Long Form | Equity | Swaps |
| Equity Swap Composite Basket Long Form Separate Spreads | Equity | Swaps |
| Equity Swap Compounding Swap | Equity | Swaps |
| Equity Swap European Interdealer Fair Value Share Swap Short Form | Equity | Swaps |
| Equity Swap Forward Starting Post European Interdealer Share Swap Short Form | Equity | Forwards |
| Equity Swap Index Quanto Long Form | Equity | Swaps |
| Equity Swap Long Form With Stub | Equity | Swaps |
| Equity Swap On European Index Underlyer Short Form | Equity | Swaps |
| Equity Swap On European Single Stock Underlyer Short Form | Equity | Swaps |
| Equity Swap Pan Asia Interdealer Share Swap Short Form | Equity | Swaps |
| Equity Swap Short Form Interestleg Driving Schedule Dates | Equity | Swaps |
| Equity Swap Single Index Long Form | Equity | Swaps |
| Equity Swap Single Underlyer Execution Long Form | Equity | Swaps |
| Equity Swap Single Underlyer Execution Long Form Ois | Equity | Swaps |
and 9 more across the library.
Open PerformancePayout in the Model Browser
Walk the tree and the reference graph interactively, and switch releases to see how the type has changed. Free, no signup.