Class: VarianceCapFloor
URI: common_domain_model:VarianceCapFloor
classDiagram
class VarianceCapFloor
click VarianceCapFloor href "../VarianceCapFloor/"
VarianceCapFloor : boundedVariance
VarianceCapFloor --> "0..1" BoundedVariance : boundedVariance
click BoundedVariance href "../BoundedVariance/"
VarianceCapFloor : unadjustedVarianceCap
VarianceCapFloor : varianceCap
Slots
Usages
Rules
| Rule Applied |
Preconditions |
Postconditions |
Elseconditions |
| slot_conditions |
{'unadjustedVarianceCap': {'required': True}} |
{'unadjustedVarianceCap': {'comments': ['Rosetta: strictly greater than'], 'minimum_value': 0}} |
|
| Rule Applied |
Preconditions |
Postconditions |
Elseconditions |
| slot_conditions |
{'varianceCap': {'equals_string': 'True'}} |
|
|
In Subsets
- Rosetta condition: PositiveUnadjustedVarianceCap — if unadjustedVarianceCap exists then unadjustedVarianceCap > 0
- Rosetta condition: CapFloorApplicability — if varianceCap = True then unadjustedVarianceCap exists or boundedVariance exists // If CapFloor is applicable at least one cap expression must exist else unadjustedVarianceCap is absent and boundedVariance is absent // If CapFloor is not applicable, then there cannot be any volatility caps
Schema Source
Mappings
| Mapping Type |
Mapped Value |
| self |
common_domain_model:VarianceCapFloor |
| native |
common_domain_model:VarianceCapFloor |
LinkML Source
Direct
name: VarianceCapFloor
comments:
- 'Rosetta condition: PositiveUnadjustedVarianceCap — if unadjustedVarianceCap exists
then unadjustedVarianceCap > 0'
- 'Rosetta condition: CapFloorApplicability — if varianceCap = True then unadjustedVarianceCap
exists or boundedVariance exists // If CapFloor is applicable at least one cap expression
must exist else unadjustedVarianceCap is absent and boundedVariance is absent //
If CapFloor is not applicable, then there cannot be any volatility caps'
in_subset:
- cdm_product_asset
from_schema: https://w3id.org/lmodel/common-domain-model
slots:
- varianceCap
- unadjustedVarianceCap
- boundedVariance
rules:
- preconditions:
slot_conditions:
unadjustedVarianceCap:
name: unadjustedVarianceCap
required: true
postconditions:
slot_conditions:
unadjustedVarianceCap:
name: unadjustedVarianceCap
comments:
- 'Rosetta: strictly greater than'
minimum_value: 0
description: Unadjusted variance cap must be positive
- preconditions:
slot_conditions:
varianceCap:
name: varianceCap
equals_string: 'True'
postconditions:
any_of:
- slot_conditions:
unadjustedVarianceCap:
name: unadjustedVarianceCap
required: true
- slot_conditions:
boundedVariance:
name: boundedVariance
required: true
description: Caps/floors can and must be specified if varianceCap is set to true.
If false, barriers cannot be established
Induced
name: VarianceCapFloor
comments:
- 'Rosetta condition: PositiveUnadjustedVarianceCap — if unadjustedVarianceCap exists
then unadjustedVarianceCap > 0'
- 'Rosetta condition: CapFloorApplicability — if varianceCap = True then unadjustedVarianceCap
exists or boundedVariance exists // If CapFloor is applicable at least one cap expression
must exist else unadjustedVarianceCap is absent and boundedVariance is absent //
If CapFloor is not applicable, then there cannot be any volatility caps'
in_subset:
- cdm_product_asset
from_schema: https://w3id.org/lmodel/common-domain-model
attributes:
varianceCap:
name: varianceCap
description: If present and true, then variance cap is applicable.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: VarianceCapFloor
domain_of:
- VarianceCapFloor
range: boolean
required: true
unadjustedVarianceCap:
name: unadjustedVarianceCap
description: For use when varianceCap is applicable. Contains the scaling factor
of the Variance Cap that can differ on a trade-by-trade basis in the European
market. For example, a Variance Cap of 2.5^2 x Variance Strike Price has an
unadjustedVarianceCap of 2.5.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: VarianceCapFloor
domain_of:
- VarianceCapFloor
range: decimal
boundedVariance:
name: boundedVariance
description: Conditions which bound variance. The contract specifies one or more
boundary levels. These levels are expressed as prices for confirmation purposes
Underlyer price must be equal to or higher than Lower Barrier is known as Up
Conditional Swap Underlyer price must be equal to or lower than Upper Barrier
is known as Down Conditional Swap Underlyer price must be equal to or higher
than Lower Barrier and must be equal to or lower than Upper Barrier is known
as Barrier Conditional Swap.
from_schema: https://w3id.org/lmodel/common-domain-model
rank: 1000
owner: VarianceCapFloor
domain_of:
- VarianceCapFloor
range: BoundedVariance
rules:
- preconditions:
slot_conditions:
unadjustedVarianceCap:
name: unadjustedVarianceCap
required: true
postconditions:
slot_conditions:
unadjustedVarianceCap:
name: unadjustedVarianceCap
comments:
- 'Rosetta: strictly greater than'
minimum_value: 0
description: Unadjusted variance cap must be positive
- preconditions:
slot_conditions:
varianceCap:
name: varianceCap
equals_string: 'True'
postconditions:
any_of:
- slot_conditions:
unadjustedVarianceCap:
name: unadjustedVarianceCap
required: true
- slot_conditions:
boundedVariance:
name: boundedVariance
required: true
description: Caps/floors can and must be specified if varianceCap is set to true.
If false, barriers cannot be established