SettlementPayout
Type CDM 7.2.0Represents a forward settling payout. The underlier attribute captures the underlying payout, which is settled according to the settlementTerms attribute (which is part of PayoutBase). Both FX Spot and FX Forward should use this component.
Attributes
4 declared on SettlementPayout, 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 |
| underlier | Underlier | 1..1 | The underlying financial product that will be physically or cash settled, which can be of any type, eg an asset such as cash or a security, or the cash settlement of an index rate. | — |
| deliveryTerm | string | 0..1 | Also called contract month or delivery month. However, it's not always a month. It is usually expressed using a code, e.g. Z23 would be the Dec 2023 contract, (Z = December). For crude oil, the corresponding contract might be called CLZ23. | — |
| delivery | AssetDeliveryInformation | 0..1 | Contains the information relative to the delivery of the asset. | — |
| schedule | CalculationSchedule | 0..1 | Allows the full representation of a payout by defining a set of schedule periods. It supports standard schedule customization by expressing all the dates, quantities, and pricing data in a non-parametric way. | — |
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 NonTransferableProduct is absent if underlier as Basket exists
then (underlier as Basket -> basketConstituent
extract observable as Asset exists
) all = True if underlier as Index exists
then settlementTerms -> cashSettlementTerms exists if underlier as Cash exists then settlementTerms exists if underlier as Security exists
then (settlementTerms -> securitySettlementCentre exists
and settlementTerms -> cashSettlementCentre exists) if delivery -> deliveryCapacity exists
then schedule -> schedulePeriod -> deliveryPeriod -> deliveryCapacity is absent
and delivery -> periods -> profile -> block -> deliveryCapacity is absent
and schedule -> schedulePeriod -> deliveryPeriod -> profile -> block -> deliveryCapacity is absent
else if schedule -> schedulePeriod -> deliveryPeriod -> deliveryCapacity exists
then delivery -> deliveryCapacity is absent
and delivery -> periods -> profile -> block -> deliveryCapacity is absent
and schedule -> schedulePeriod -> deliveryPeriod -> profile -> block -> deliveryCapacity is absent
else if delivery -> periods -> profile -> block -> deliveryCapacity exists
then schedule -> schedulePeriod -> deliveryPeriod -> deliveryCapacity is absent
and schedule -> schedulePeriod -> deliveryPeriod -> profile -> block -> deliveryCapacity is absent
else if schedule -> schedulePeriod -> deliveryPeriod -> profile -> block -> deliveryCapacity exists
then delivery -> deliveryCapacity is absent
and schedule -> schedulePeriod -> deliveryPeriod -> deliveryCapacity is absent
and delivery -> periods -> profile -> block -> deliveryCapacity is absent if schedule -> schedulePeriod -> deliveryPeriod -> priceTimeIntervalQuantity exists
then delivery -> periods -> profile -> block -> priceTimeIntervalQuantity is absent
and schedule -> schedulePeriod -> deliveryPeriod -> profile -> block -> priceTimeIntervalQuantity is absent
else if delivery -> periods -> profile -> block -> priceTimeIntervalQuantity exists
then schedule -> schedulePeriod -> deliveryPeriod -> priceTimeIntervalQuantity is absent
and schedule -> schedulePeriod -> deliveryPeriod -> profile -> block -> priceTimeIntervalQuantity is absent
else if schedule -> schedulePeriod -> deliveryPeriod -> profile -> block -> priceTimeIntervalQuantity exists
then schedule -> schedulePeriod -> deliveryPeriod -> priceTimeIntervalQuantity is absent
and delivery -> periods -> profile -> block -> priceTimeIntervalQuantity 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 |
|---|---|---|
| FXFarLeg | returns | Extracts the far leg of an FX swap (deliverable or not) based on two criteria: the forward payout with the latest value date or the forward payout with the latest settlement date. |
| InterpolateForwardRate | takes | — |
| StandardizedScheduleFXSwapNotional | takes | Extracts the notional amount and currency of an FX swap. |
| StandardizedScheduleEquityForwardNotionalAmount | takes | Extracts the notional amount of an EQ forward. |
| Create_AssetFlowFromSettlementPayout | takes | Generates two opposite cashflows that correspond to a settlement payout. One leg is the asset leg, that settles the asset according to the quantity, direction and date defined in the settlement payout. The other is the price leg, that settles the price as a currency amount going in the opposite direction. The function's applicability is limited on purpose to a single asset with a single price and quantity specified. |
In the product library
Canonical products whose JSON instantiates SettlementPayout. Useful when
you want to see the type populated rather than described.
| Product | Asset class | Family |
|---|---|---|
| FX NDF | Foreign Exchange | Spot & forwards |
| FX Spot Forward | Foreign Exchange | Spot & forwards |
| FX Swap | Foreign Exchange | Spot & forwards |
| IRS Forward Debt | Interest Rate | Swaps |
| Listed Equity | Equity | Listed |
Open SettlementPayout 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.