Class ExerciseTerms.ExerciseTermsImpl

java.lang.Object
cdm.product.template.ExerciseTerms.ExerciseTermsImpl
All Implemented Interfaces:
ExerciseTerms, com.rosetta.model.lib.GlobalKey, com.rosetta.model.lib.RosettaModelObject
Enclosing interface:
ExerciseTerms

public static class ExerciseTerms.ExerciseTermsImpl extends Object implements ExerciseTerms
Immutable Implementation of ExerciseTerms
  • Constructor Details

  • Method Details

    • getStyle

      @RosettaAttribute("style") @Accessor(GETTER) @RuneAttribute("style") public OptionExerciseStyleEnum getStyle()
      Description copied from interface: ExerciseTerms
      Whether the option has a single exercise (european), multiple exercise dates (bermuda), or a continuous range of exercise (american).
      Specified by:
      getStyle in interface ExerciseTerms
    • getCommencementDate

      @RosettaAttribute("commencementDate") @Accessor(GETTER) @RuneAttribute("commencementDate") public AdjustableOrRelativeDate getCommencementDate()
      Description copied from interface: ExerciseTerms
      The first day of the exercise period for an American style option.
      Specified by:
      getCommencementDate in interface ExerciseTerms
    • getExerciseDates

      @RosettaAttribute("exerciseDates") @Accessor(GETTER) @RuneAttribute("exerciseDates") public AdjustableOrRelativeDates getExerciseDates()
      Description copied from interface: ExerciseTerms
      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.
      Specified by:
      getExerciseDates in interface ExerciseTerms
    • getExpirationDate

      @RosettaAttribute("expirationDate") @Accessor(GETTER) @Multi @RuneAttribute("expirationDate") public List<? extends AdjustableOrRelativeDate> getExpirationDate()
      Description copied from interface: ExerciseTerms
      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.
      Specified by:
      getExpirationDate in interface ExerciseTerms
    • getRelevantUnderlyingDate

      @RosettaAttribute("relevantUnderlyingDate") @Accessor(GETTER) @RuneAttribute("relevantUnderlyingDate") public AdjustableOrRelativeDates getRelevantUnderlyingDate()
      Description copied from interface: ExerciseTerms
      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.'
      Specified by:
      getRelevantUnderlyingDate in interface ExerciseTerms
    • getEarliestExerciseTime

      @RosettaAttribute("earliestExerciseTime") @Accessor(GETTER) @RuneAttribute("earliestExerciseTime") public BusinessCenterTime getEarliestExerciseTime()
      Description copied from interface: ExerciseTerms
      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.
      Specified by:
      getEarliestExerciseTime in interface ExerciseTerms
    • getLatestExerciseTime

      @RosettaAttribute("latestExerciseTime") @Accessor(GETTER) @RuneAttribute("latestExerciseTime") public BusinessCenterTime getLatestExerciseTime()
      Description copied from interface: ExerciseTerms
      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.
      Specified by:
      getLatestExerciseTime in interface ExerciseTerms
    • getExpirationTime

      @RosettaAttribute("expirationTime") @Accessor(GETTER) @RuneAttribute("expirationTime") public BusinessCenterTime getExpirationTime()
      Description copied from interface: ExerciseTerms
      The latest time for exercise on expirationDate. It is made mandatory given that for all option styles, this field is required.
      Specified by:
      getExpirationTime in interface ExerciseTerms
    • getExpirationTimeType

      @RosettaAttribute("expirationTimeType") @Accessor(GETTER) @Required @RuneAttribute("expirationTimeType") public ExpirationTimeTypeEnum getExpirationTimeType()
      Description copied from interface: ExerciseTerms
      The time of day at which the equity option expires, for example the official closing time of the exchange.
      Specified by:
      getExpirationTimeType in interface ExerciseTerms
    • getMultipleExercise

      @RosettaAttribute("multipleExercise") @Accessor(GETTER) @RuneAttribute("multipleExercise") public MultipleExercise getMultipleExercise()
      Description copied from interface: ExerciseTerms
      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.
      Specified by:
      getMultipleExercise in interface ExerciseTerms
    • getExerciseFeeSchedule

      @RosettaAttribute("exerciseFeeSchedule") @Accessor(GETTER) @RuneAttribute("exerciseFeeSchedule") public ExerciseFeeSchedule getExerciseFeeSchedule()
      Description copied from interface: ExerciseTerms
      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.
      Specified by:
      getExerciseFeeSchedule in interface ExerciseTerms
    • getExerciseProcedure

      @RosettaAttribute("exerciseProcedure") @Accessor(GETTER) @RuneAttribute("exerciseProcedure") public ExerciseProcedure getExerciseProcedure()
      Description copied from interface: ExerciseTerms
      The set of parameters defining the procedure associated with the exercise, e.g. manual exercise.
      Specified by:
      getExerciseProcedure in interface ExerciseTerms
    • getExerciseFee

      @RosettaAttribute("exerciseFee") @Accessor(GETTER) @RuneAttribute("exerciseFee") public ExerciseFee getExerciseFee()
      Description copied from interface: ExerciseTerms
      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.
      Specified by:
      getExerciseFee in interface ExerciseTerms
    • getPartialExercise

      @RosettaAttribute("partialExercise") @Accessor(GETTER) @RuneAttribute("partialExercise") public PartialExercise getPartialExercise()
      Description copied from interface: ExerciseTerms
      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.
      Specified by:
      getPartialExercise in interface ExerciseTerms
    • getMeta

      @RosettaAttribute("meta") @Accessor(GETTER) @RuneAttribute("meta") @RuneMetaType public com.rosetta.model.metafields.MetaFields getMeta()
      Specified by:
      getMeta in interface ExerciseTerms
      Specified by:
      getMeta in interface com.rosetta.model.lib.GlobalKey
    • build

      public ExerciseTerms build()
      Description copied from interface: ExerciseTerms
      Build Methods
      Specified by:
      build in interface ExerciseTerms
      Specified by:
      build in interface com.rosetta.model.lib.RosettaModelObject
    • toBuilder

      Specified by:
      toBuilder in interface ExerciseTerms
      Specified by:
      toBuilder in interface com.rosetta.model.lib.RosettaModelObject
    • setBuilderFields

      protected void setBuilderFields(ExerciseTerms.ExerciseTermsBuilder builder)
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object