Class: ResolvablePriceQuantity
Generic class to specify the quantity for different payout legs in a contractual product, when that quantity can vary across payout legs or across time. A resolvable quantity can always be resolved into a single quantity from the quantity notation which has a corresponding asset identifier. In addition to the base case, where quantity is directly specified as a number as part of the quantity notation, the other use cases are: (i) quantity based on some pre-defined schedule (eg amortising notional), (ii) quantity based on some pre-defined events (eg resetting cross-currency notional), or quantity set as reference to another quantity (eg equity notional as no. securities x price).
URI: common_domain_model:ResolvablePriceQuantity
classDiagram
class ResolvablePriceQuantity
click ResolvablePriceQuantity href "../ResolvablePriceQuantity/"
ResolvablePriceQuantity : futureValueNotional
ResolvablePriceQuantity --> "0..1" FutureValueAmount : futureValueNotional
click FutureValueAmount href "../FutureValueAmount/"
ResolvablePriceQuantity : priceSchedule
ResolvablePriceQuantity --> "*" PriceSchedule : priceSchedule
click PriceSchedule href "../PriceSchedule/"
ResolvablePriceQuantity : quantityMultiplier
ResolvablePriceQuantity --> "0..1" QuantityMultiplier : quantityMultiplier
click QuantityMultiplier href "../QuantityMultiplier/"
ResolvablePriceQuantity : quantityReference
ResolvablePriceQuantity --> "0..1" ResolvablePriceQuantity : quantityReference
click ResolvablePriceQuantity href "../ResolvablePriceQuantity/"
ResolvablePriceQuantity : quantitySchedule
ResolvablePriceQuantity --> "0..1" NonNegativeQuantitySchedule : quantitySchedule
click NonNegativeQuantitySchedule href "../NonNegativeQuantitySchedule/"
ResolvablePriceQuantity : reset
ResolvablePriceQuantity : resolvedQuantity
ResolvablePriceQuantity --> "0..1" Quantity : resolvedQuantity
click Quantity href "../Quantity/"
Slots
| Name | Cardinality and Range | Description | Inheritance |
|---|---|---|---|
| resolvedQuantity | 0..1 Quantity |
A product's quantity as a single, non-negative amount | direct |
| quantitySchedule | 0..1 NonNegativeQuantitySchedule |
A payout's quantity specified as a schedule, which may also contain a single ... | direct |
| quantityReference | 0..1 ResolvablePriceQuantity |
Reference quantity when resolvable quantity is defined as relative to another... | direct |
| quantityMultiplier | 0..1 QuantityMultiplier |
Quantity multiplier is specified on top of a reference quantity and is used a... | direct |
| reset | 0..1 Boolean |
Whether the quantity is resettable | direct |
| futureValueNotional | 0..1 FutureValueAmount |
The future value notional is specific to BRL CDI swaps, and is specified alon... | direct |
| priceSchedule | * PriceSchedule |
A payout's price specified as a schedule, which may also contain a single val... | direct |
Usages
In Subsets
Comments
- Rosetta condition: QuantityMultiplier — if quantityMultiplier exists then quantityReference -> reference exists
Identifier and Mapping Information
Annotations
| property | value |
|---|---|
| metadata_key | True |
Schema Source
- from schema: https://w3id.org/lmodel/common-domain-model
Mappings
| Mapping Type | Mapped Value |
|---|---|
| self | common_domain_model:ResolvablePriceQuantity |
| native | common_domain_model:ResolvablePriceQuantity |
LinkML Source
Direct
name: ResolvablePriceQuantity
annotations:
metadata_key:
tag: metadata_key
value: true
description: 'Generic class to specify the quantity for different payout legs in a
contractual product, when that quantity can vary across payout legs or across time.
A resolvable quantity can always be resolved into a single quantity from the quantity
notation which has a corresponding asset identifier. In addition to the base case,
where quantity is directly specified as a number as part of the quantity notation,
the other use cases are: (i) quantity based on some pre-defined schedule (eg amortising
notional), (ii) quantity based on some pre-defined events (eg resetting cross-currency
notional), or quantity set as reference to another quantity (eg equity notional
as no. securities x price).'
comments:
- 'Rosetta condition: QuantityMultiplier — if quantityMultiplier exists then quantityReference
-> reference exists'
in_subset:
- cdm_product_common_settlement
from_schema: https://w3id.org/lmodel/common-domain-model
slots:
- resolvedQuantity
- quantitySchedule
- quantityReference
- quantityMultiplier
- reset
- futureValueNotional
- priceSchedule
slot_usage:
reset:
name: reset
description: Whether the quantity is resettable
range: boolean
Induced
name: ResolvablePriceQuantity
annotations:
metadata_key:
tag: metadata_key
value: true
description: 'Generic class to specify the quantity for different payout legs in a
contractual product, when that quantity can vary across payout legs or across time.
A resolvable quantity can always be resolved into a single quantity from the quantity
notation which has a corresponding asset identifier. In addition to the base case,
where quantity is directly specified as a number as part of the quantity notation,
the other use cases are: (i) quantity based on some pre-defined schedule (eg amortising
notional), (ii) quantity based on some pre-defined events (eg resetting cross-currency
notional), or quantity set as reference to another quantity (eg equity notional
as no. securities x price).'
comments:
- 'Rosetta condition: QuantityMultiplier — if quantityMultiplier exists then quantityReference
-> reference exists'
in_subset:
- cdm_product_common_settlement
from_schema: https://w3id.org/lmodel/common-domain-model
slot_usage:
reset:
name: reset
description: Whether the quantity is resettable
range: boolean
attributes:
resolvedQuantity:
name: resolvedQuantity
description: A product's quantity as a single, non-negative amount. When specified
as part of a product definition, this quantity attribute would not be set. Instead
it is specified on the quantity notation along with an asset identifier matching
this payout's asset identifier. This allows the quantity to be resolved for
a payout leg, which can then be specified here for convenience during data processing. There
needs to be at least one resolvable quantity across payout legs of a product
to define an anchor that other payout quantities can refer to. This attribute
is ignored when mapping existing FpML messages.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: ResolvablePriceQuantity
domain_of:
- ResolvablePriceQuantity
range: Quantity
quantitySchedule:
name: quantitySchedule
description: 'A payout''s quantity specified as a schedule, which may also contain
a single value if that quantity is constant. There can only be a single quantity
schedule applicable to a payout: e.g. the notional for an interest rate leg.
The quantity must be specified outside of the payout in a PriceQuantity object
and only referenced inside the payout using an address.'
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: ResolvablePriceQuantity
domain_of:
- ResolvablePriceQuantity
range: NonNegativeQuantitySchedule
quantityReference:
name: quantityReference
annotations:
metadata_reference:
tag: metadata_reference
value: true
description: Reference quantity when resolvable quantity is defined as relative
to another (resolvable) quantity. A resolvable quantity needs to contain either
an absolute quantity or a reference to another (resolvable) quantity. This requirement
is captured by a choice rule on the class.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: ResolvablePriceQuantity
domain_of:
- ResolvablePriceQuantity
range: ResolvablePriceQuantity
quantityMultiplier:
name: quantityMultiplier
description: Quantity multiplier is specified on top of a reference quantity and
is used as a multiplying factor when resolving the quantity. A quantity multiplier
can only exist when the resolvable quantity specifies a reference quantity.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: ResolvablePriceQuantity
domain_of:
- ResolvablePriceQuantity
range: QuantityMultiplier
reset:
name: reset
description: Whether the quantity is resettable
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: ResolvablePriceQuantity
domain_of:
- PrimitiveInstruction
- ResolvablePriceQuantity
range: boolean
futureValueNotional:
name: futureValueNotional
description: 'The future value notional is specific to BRL CDI swaps, and is specified
alongside the notional amount. The value is calculated as follows: Future Value
Notional = Notional Amount * (1 + Fixed Rate) ^ (Fixed Rate Day Count Fraction).
The currency should always match that expressed in the notional schedule. The
value date should match the adjusted termination date.'
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: ResolvablePriceQuantity
domain_of:
- ResolvablePriceQuantity
range: FutureValueAmount
priceSchedule:
name: priceSchedule
description: 'A payout''s price specified as a schedule, which may also contain
a single value if that price is constant. There may be multiple prices specified
for a single payout: e.g. a floating interest rate leg may specify a spread,
a cap and/or floor and a multiplier. The price must be specified outside of
the payout in a PriceQuantity object and only referenced inside the payout using
an address.'
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: ResolvablePriceQuantity
domain_of:
- ResolvablePriceQuantity
range: PriceSchedule
multivalued: true
inlined: true
inlined_as_list: true