Skip to content

Class: ExerciseTerms

A class defining the exercise period for an option together with any rules governing the notional amount of the underlying which can be exercised on any given exercise date and any associated exercise fees.

URI: common_domain_model:ExerciseTerms

 classDiagram
    class ExerciseTerms
    click ExerciseTerms href "../ExerciseTerms/"
      ExerciseTerms : commencementDate





        ExerciseTerms --> "0..1" AdjustableOrRelativeDate : commencementDate
        click AdjustableOrRelativeDate href "../AdjustableOrRelativeDate/"



      ExerciseTerms : earliestExerciseTime





        ExerciseTerms --> "0..1" BusinessCenterTime : earliestExerciseTime
        click BusinessCenterTime href "../BusinessCenterTime/"



      ExerciseTerms : exerciseDates





        ExerciseTerms --> "0..1" AdjustableOrRelativeDates : exerciseDates
        click AdjustableOrRelativeDates href "../AdjustableOrRelativeDates/"



      ExerciseTerms : exerciseFee





        ExerciseTerms --> "0..1" ExerciseFee : exerciseFee
        click ExerciseFee href "../ExerciseFee/"



      ExerciseTerms : exerciseFeeSchedule





        ExerciseTerms --> "0..1" ExerciseFeeSchedule : exerciseFeeSchedule
        click ExerciseFeeSchedule href "../ExerciseFeeSchedule/"



      ExerciseTerms : exerciseProcedure





        ExerciseTerms --> "0..1" ExerciseProcedure : exerciseProcedure
        click ExerciseProcedure href "../ExerciseProcedure/"



      ExerciseTerms : expirationDate





        ExerciseTerms --> "*" AdjustableOrRelativeDate : expirationDate
        click AdjustableOrRelativeDate href "../AdjustableOrRelativeDate/"



      ExerciseTerms : expirationTime





        ExerciseTerms --> "0..1" BusinessCenterTime : expirationTime
        click BusinessCenterTime href "../BusinessCenterTime/"



      ExerciseTerms : expirationTimeType





        ExerciseTerms --> "1" ExpirationTimeTypeEnum : expirationTimeType
        click ExpirationTimeTypeEnum href "../ExpirationTimeTypeEnum/"



      ExerciseTerms : latestExerciseTime





        ExerciseTerms --> "0..1" BusinessCenterTime : latestExerciseTime
        click BusinessCenterTime href "../BusinessCenterTime/"



      ExerciseTerms : multipleExercise





        ExerciseTerms --> "0..1" MultipleExercise : multipleExercise
        click MultipleExercise href "../MultipleExercise/"



      ExerciseTerms : partialExercise





        ExerciseTerms --> "0..1" PartialExercise : partialExercise
        click PartialExercise href "../PartialExercise/"



      ExerciseTerms : relevantUnderlyingDate





        ExerciseTerms --> "0..1" AdjustableOrRelativeDates : relevantUnderlyingDate
        click AdjustableOrRelativeDates href "../AdjustableOrRelativeDates/"



      ExerciseTerms : style





        ExerciseTerms --> "0..1" OptionExerciseStyleEnum : style
        click OptionExerciseStyleEnum href "../OptionExerciseStyleEnum/"



Slots

Name Cardinality and Range Description Inheritance
style 0..1
OptionExerciseStyleEnum
Whether the option has a single exercise (european), multiple exercise dates ... direct
commencementDate 0..1
AdjustableOrRelativeDate
The first day of the exercise period for an American style option direct
exerciseDates 0..1
AdjustableOrRelativeDates
The dates that define the Bermuda option exercise dates and the expiration da... direct
expirationDate *
AdjustableOrRelativeDate
The last day within an exercise period for an American style option direct
relevantUnderlyingDate 0..1
AdjustableOrRelativeDates
The effective date on the underlying product if the option is exercised direct
earliestExerciseTime 0..1
BusinessCenterTime
The earliest time at which notice of exercise can be given by the buyer to th... direct
latestExerciseTime 0..1
BusinessCenterTime
For a Bermuda or American style option, the latest time on an exercise busine... direct
expirationTime 0..1
BusinessCenterTime
The latest time for exercise on expirationDate direct
expirationTimeType 1
ExpirationTimeTypeEnum
The time of day at which the equity option expires, for example the official ... direct
multipleExercise 0..1
MultipleExercise
As defined in the 2000 ISDA Definitions, Section 12 direct
exerciseFeeSchedule 0..1
ExerciseFeeSchedule
The fees associated with an exercise date direct
exerciseProcedure 0..1
ExerciseProcedure
The set of parameters defining the procedure associated with the exercise, e direct
exerciseFee 0..1
ExerciseFee
A fee to be paid on exercise direct
partialExercise 0..1
PartialExercise
As defined in the 2000 ISDA Definitions, Section 12 direct

Usages

used by used in type used
OptionPayout exerciseTerms range ExerciseTerms
CancelableProvision exerciseTerms range ExerciseTerms
ExtendibleProvision exerciseTerms range ExerciseTerms
OptionalEarlyTermination exerciseTerms range ExerciseTerms

Rules

Rule Applied Preconditions Postconditions Elseconditions

Rule Applied Preconditions Postconditions Elseconditions
slot_conditions {'commencementDate': {'required': True}} {'expirationDate': {'required': True}}

Rule Applied Preconditions Postconditions Elseconditions
slot_conditions {'style': {'equals_string': 'European'}} {'expirationDate': {'required': True}, 'exerciseFeeSchedule': {'required': False}, 'multipleExercise': {'required': False}, 'latestExerciseTime': {'required': False}, 'commencementDate': {'required': False}}

Rule Applied Preconditions Postconditions Elseconditions
slot_conditions {'style': {'equals_string': 'Bermuda'}} {'exerciseDates': {'required': True}, 'earliestExerciseTime': {'required': True}, 'partialExercise': {'required': False}, 'exerciseFee': {'required': False}}

In Subsets

Comments

  • Rosetta condition: ExerciseDateExpirationDateChoice — required choice exerciseDates, expirationDate
  • Rosetta condition: CommencementAndExpirationDate — if commencementDate exists then expirationDate exists
  • Rosetta condition: AmericanExercise — if style = OptionExerciseStyleEnum -> American then commencementDate exists and exerciseFee is absent and partialExercise is absent and expirationDate count = 1
  • Rosetta condition: EuropeanExercise — if style = OptionExerciseStyleEnum -> European then expirationDate exists and exerciseFeeSchedule is absent and multipleExercise is absent and latestExerciseTime is absent and commencementDate is absent
  • Rosetta condition: BermudaExercise — if style = OptionExerciseStyleEnum -> Bermuda then exerciseDates exists and earliestExerciseTime exists and partialExercise is absent and exerciseFee is absent
  • Rosetta condition: ExpirationTimeChoice — (if expirationTime exists then expirationTimeType = ExpirationTimeTypeEnum -> SpecificTime and if expirationTimeType = ExpirationTimeTypeEnum -> SpecificTime then expirationTime exists)

Identifier and Mapping Information

Annotations

property value
metadata_key True

Schema Source

Mappings

Mapping Type Mapped Value
self common_domain_model:ExerciseTerms
native common_domain_model:ExerciseTerms

LinkML Source

Direct

name: ExerciseTerms
annotations:
  metadata_key:
    tag: metadata_key
    value: true
description: A class defining the exercise period for an option together with any
  rules governing the notional amount of the underlying which can be exercised on
  any given exercise date and any associated exercise fees.
comments:
- 'Rosetta condition: ExerciseDateExpirationDateChoice  required choice exerciseDates,
  expirationDate'
- 'Rosetta condition: CommencementAndExpirationDate  if commencementDate exists then
  expirationDate exists'
- 'Rosetta condition: AmericanExercise  if style = OptionExerciseStyleEnum -> American
  then commencementDate exists and exerciseFee is absent and partialExercise is absent
  and expirationDate count = 1'
- 'Rosetta condition: EuropeanExercise  if style = OptionExerciseStyleEnum -> European
  then expirationDate exists and exerciseFeeSchedule is absent and multipleExercise
  is absent and latestExerciseTime is absent and commencementDate is absent'
- 'Rosetta condition: BermudaExercise  if style = OptionExerciseStyleEnum -> Bermuda
  then exerciseDates exists and earliestExerciseTime exists and partialExercise is
  absent and exerciseFee is absent'
- 'Rosetta condition: ExpirationTimeChoice  (if expirationTime exists then expirationTimeType
  = ExpirationTimeTypeEnum -> SpecificTime and if expirationTimeType = ExpirationTimeTypeEnum
  -> SpecificTime then expirationTime exists)'
in_subset:
- cdm_product_template
from_schema: https://w3id.org/lmodel/common-domain-model
slots:
- style
- commencementDate
- exerciseDates
- expirationDate
- relevantUnderlyingDate
- earliestExerciseTime
- latestExerciseTime
- expirationTime
- expirationTimeType
- multipleExercise
- exerciseFeeSchedule
- exerciseProcedure
- exerciseFee
- partialExercise
slot_usage:
  expirationDate:
    name: expirationDate
    description: The last day within an exercise period for an American style option.
      For a European style option it is the only day within the exercise period.
    multivalued: true
rules:
- postconditions:
    exactly_one_of:
    - slot_conditions:
        exerciseDates:
          name: exerciseDates
          required: true
    - slot_conditions:
        expirationDate:
          name: expirationDate
          required: true
  description: Required choice rule between exercise dates and expiration date. The
    exerciseDates field can be used to extract the expiration date of a bermuda option,
    while the expirationDate field refers to the expiration date of an american or
    european option.
- preconditions:
    slot_conditions:
      commencementDate:
        name: commencementDate
        required: true
  postconditions:
    slot_conditions:
      expirationDate:
        name: expirationDate
        required: true
  description: Condition to check that expiration date is present when commencement
    date is present.
- preconditions:
    slot_conditions:
      style:
        name: style
        equals_string: European
  postconditions:
    slot_conditions:
      expirationDate:
        name: expirationDate
        required: true
      exerciseFeeSchedule:
        name: exerciseFeeSchedule
        required: false
      multipleExercise:
        name: multipleExercise
        required: false
      latestExerciseTime:
        name: latestExerciseTime
        required: false
      commencementDate:
        name: commencementDate
        required: false
  description: Condition to check that only fields expected for a european option
    are present.
- preconditions:
    slot_conditions:
      style:
        name: style
        equals_string: Bermuda
  postconditions:
    slot_conditions:
      exerciseDates:
        name: exerciseDates
        required: true
      earliestExerciseTime:
        name: earliestExerciseTime
        required: true
      partialExercise:
        name: partialExercise
        required: false
      exerciseFee:
        name: exerciseFee
        required: false
  description: Condition to check that only fields expected for a bermuda option are
    present.

Induced

name: ExerciseTerms
annotations:
  metadata_key:
    tag: metadata_key
    value: true
description: A class defining the exercise period for an option together with any
  rules governing the notional amount of the underlying which can be exercised on
  any given exercise date and any associated exercise fees.
comments:
- 'Rosetta condition: ExerciseDateExpirationDateChoice  required choice exerciseDates,
  expirationDate'
- 'Rosetta condition: CommencementAndExpirationDate  if commencementDate exists then
  expirationDate exists'
- 'Rosetta condition: AmericanExercise  if style = OptionExerciseStyleEnum -> American
  then commencementDate exists and exerciseFee is absent and partialExercise is absent
  and expirationDate count = 1'
- 'Rosetta condition: EuropeanExercise  if style = OptionExerciseStyleEnum -> European
  then expirationDate exists and exerciseFeeSchedule is absent and multipleExercise
  is absent and latestExerciseTime is absent and commencementDate is absent'
- 'Rosetta condition: BermudaExercise  if style = OptionExerciseStyleEnum -> Bermuda
  then exerciseDates exists and earliestExerciseTime exists and partialExercise is
  absent and exerciseFee is absent'
- 'Rosetta condition: ExpirationTimeChoice  (if expirationTime exists then expirationTimeType
  = ExpirationTimeTypeEnum -> SpecificTime and if expirationTimeType = ExpirationTimeTypeEnum
  -> SpecificTime then expirationTime exists)'
in_subset:
- cdm_product_template
from_schema: https://w3id.org/lmodel/common-domain-model
slot_usage:
  expirationDate:
    name: expirationDate
    description: The last day within an exercise period for an American style option.
      For a European style option it is the only day within the exercise period.
    multivalued: true
attributes:
  style:
    name: style
    description: Whether the option has a single exercise (european), multiple exercise
      dates (bermuda), or a continuous range of exercise (american).
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: OptionExerciseStyleEnum
  commencementDate:
    name: commencementDate
    description: The first day of the exercise period for an American style option.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: AdjustableOrRelativeDate
  exerciseDates:
    name: exerciseDates
    description: The dates that define the Bermuda option exercise dates and the expiration
      date. The last specified date is assumed to be the expiration date. The dates
      can either be specified as a series of explicit dates and associated adjustments
      or as a series of dates defined relative to another schedule of dates, for example,
      the calculation period start dates. Where a relative series of dates are defined
      the first and last possible exercise dates can be separately specified.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: AdjustableOrRelativeDates
  expirationDate:
    name: expirationDate
    description: The last day within an exercise period for an American style option.
      For a European style option it is the only day within the exercise period.
    from_schema: https://w3id.org/lmodel/common-domain-model
    close_mappings:
    - fpml_5_10:CancelableProvision.expirationDate
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - CancelableProvision
    - ExerciseTerms
    range: AdjustableOrRelativeDate
    multivalued: true
  relevantUnderlyingDate:
    name: relevantUnderlyingDate
    description: The effective date on the underlying product if the option is exercised.  For
      example, for a swaption it is the swap effective date, for an option on an FX
      spot or forward it is the value date for settlement, and in an extendible/cancelable
      provision it is the swap termination date, which is the date on which the termination
      is effective.'
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: AdjustableOrRelativeDates
  earliestExerciseTime:
    name: earliestExerciseTime
    description: The earliest time at which notice of exercise can be given by the
      buyer to the seller (or seller's agent) to, and including, the expiration date.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: BusinessCenterTime
  latestExerciseTime:
    name: latestExerciseTime
    description: For a Bermuda or American style option, the latest time on an exercise
      business day (excluding the expiration date) within the exercise period that
      notice can be given by the buyer to the seller or seller's agent. Notice of
      exercise given after this time will be deemed to have been given on the next
      exercise business day.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: BusinessCenterTime
  expirationTime:
    name: expirationTime
    description: The latest time for exercise on expirationDate. It is made mandatory
      given that for all option styles, this field is required.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: BusinessCenterTime
  expirationTimeType:
    name: expirationTimeType
    description: The time of day at which the equity option expires, for example the
      official closing time of the exchange.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: ExpirationTimeTypeEnum
    required: true
  multipleExercise:
    name: multipleExercise
    description: As defined in the 2000 ISDA Definitions, Section 12.4. Multiple Exercise,
      the buyer of the option has the right to exercise all or less than all the unexercised
      notional amount of the underlying swap on one or more days in the exercise period,
      but on any such day may not exercise less than the minimum notional amount or
      more that the maximum notional amount, and if an integral multiple amount is
      specified, the notional amount exercised must be equal to, or be an integral
      multiple of, the integral multiple amount.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: MultipleExercise
  exerciseFeeSchedule:
    name: exerciseFeeSchedule
    description: The fees associated with an exercise date. The fees are conditional
      on the exercise occurring. The fees can be specified as actual currency amounts
      or as percentages of the notional amount being exercised.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: ExerciseFeeSchedule
  exerciseProcedure:
    name: exerciseProcedure
    description: The set of parameters defining the procedure associated with the
      exercise, e.g. manual exercise.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: ExerciseProcedure
  exerciseFee:
    name: exerciseFee
    description: A fee to be paid on exercise. This could be represented as an amount
      or a rate and notional reference on which to apply the rate.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: ExerciseFee
  partialExercise:
    name: partialExercise
    description: As defined in the 2000 ISDA Definitions, Section 12.3. Partial Exercise,
      the buyer of the option has the right to exercise all or less than all the notional
      amount of the underlying swap on the expiration date, but may not exercise less
      than the minimum notional amount, and if an integral multiple amount is specified,
      the notional amount exercised must be equal to, or be an integral multiple of,
      the integral multiple amount.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: ExerciseTerms
    domain_of:
    - ExerciseTerms
    range: PartialExercise
rules:
- postconditions:
    exactly_one_of:
    - slot_conditions:
        exerciseDates:
          name: exerciseDates
          required: true
    - slot_conditions:
        expirationDate:
          name: expirationDate
          required: true
  description: Required choice rule between exercise dates and expiration date. The
    exerciseDates field can be used to extract the expiration date of a bermuda option,
    while the expirationDate field refers to the expiration date of an american or
    european option.
- preconditions:
    slot_conditions:
      commencementDate:
        name: commencementDate
        required: true
  postconditions:
    slot_conditions:
      expirationDate:
        name: expirationDate
        required: true
  description: Condition to check that expiration date is present when commencement
    date is present.
- preconditions:
    slot_conditions:
      style:
        name: style
        equals_string: European
  postconditions:
    slot_conditions:
      expirationDate:
        name: expirationDate
        required: true
      exerciseFeeSchedule:
        name: exerciseFeeSchedule
        required: false
      multipleExercise:
        name: multipleExercise
        required: false
      latestExerciseTime:
        name: latestExerciseTime
        required: false
      commencementDate:
        name: commencementDate
        required: false
  description: Condition to check that only fields expected for a european option
    are present.
- preconditions:
    slot_conditions:
      style:
        name: style
        equals_string: Bermuda
  postconditions:
    slot_conditions:
      exerciseDates:
        name: exerciseDates
        required: true
      earliestExerciseTime:
        name: earliestExerciseTime
        required: true
      partialExercise:
        name: partialExercise
        required: false
      exerciseFee:
        name: exerciseFee
        required: false
  description: Condition to check that only fields expected for a bermuda option are
    present.