Class OptionPayout.OptionPayoutImpl

java.lang.Object
cdm.product.common.settlement.PayoutBase.PayoutBaseImpl
cdm.product.template.OptionPayout.OptionPayoutImpl
All Implemented Interfaces:
PayoutBase, OptionPayout, com.rosetta.model.lib.GlobalKey, com.rosetta.model.lib.RosettaModelObject
Enclosing interface:
OptionPayout

public static class OptionPayout.OptionPayoutImpl extends PayoutBase.PayoutBaseImpl implements OptionPayout
Immutable Implementation of OptionPayout
  • Constructor Details

  • Method Details

    • getBuyerSeller

      @RosettaAttribute(value="buyerSeller", isRequired=true) @RuneAttribute(value="buyerSeller", isRequired=true) public BuyerSeller getBuyerSeller()
      Description copied from interface: OptionPayout
      Getter Methods
      Specified by:
      getBuyerSeller in interface OptionPayout
    • getOptionType

      @RosettaAttribute("optionType") @RuneAttribute("optionType") public OptionTypeEnum getOptionType()
      Description copied from interface: OptionPayout
      The type of option transaction. From a usage standpoint, put/call is the default option type, while payer/receiver indicator is used for options on index credit default swaps, consistently with the industry practice. Straddle is used for the case of straddle strategy, that combine a call and a put with the same strike.
      Specified by:
      getOptionType in interface OptionPayout
    • getFeature

      @RosettaAttribute("feature") @RuneAttribute("feature") public OptionFeature getFeature()
      Description copied from interface: OptionPayout
      The option feature, such as quanto, Asian, barrier, knock.
      Specified by:
      getFeature in interface OptionPayout
    • getExerciseTerms

      @RosettaAttribute(value="exerciseTerms", isRequired=true) @RuneAttribute(value="exerciseTerms", isRequired=true) public OptionExercise getExerciseTerms()
      Description copied from interface: OptionPayout
      The terms for exercising the option, which include the option style (e.g. American style option), the exercise procedure (e.g. manual exercise) and the settlement terms (e.g. physical vs. cash).
      Specified by:
      getExerciseTerms in interface OptionPayout
    • getUnderlier

      @RosettaAttribute(value="underlier", isRequired=true) @RuneAttribute(value="underlier", isRequired=true) public Product getUnderlier()
      Description copied from interface: OptionPayout
      The product underlying the option, which can be of any type including ContractualProduct or Security.
      Specified by:
      getUnderlier in interface OptionPayout
    • getObservationTerms

      @RosettaAttribute("observationTerms") @RuneAttribute("observationTerms") public ObservationTerms getObservationTerms()
      Description copied from interface: OptionPayout
      Class containing terms that are associated with observing a price/benchmark/index across either single or multple observations. To be used for option contracts that reference a benchmark price.
      Specified by:
      getObservationTerms in interface OptionPayout
    • getSchedule

      @RosettaAttribute("schedule") @RuneAttribute("schedule") public CalculationSchedule getSchedule()
      Description copied from interface: OptionPayout
      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.
      Specified by:
      getSchedule in interface OptionPayout
    • getDelivery

      @RosettaAttribute("delivery") @RuneAttribute("delivery") public AssetDeliveryInformation getDelivery()
      Description copied from interface: OptionPayout
      Contains the information relative to the delivery of the asset.
      Specified by:
      getDelivery in interface OptionPayout
    • getMeta

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

      public OptionPayout build()
      Description copied from interface: PayoutBase
      Build Methods
      Specified by:
      build in interface OptionPayout
      Specified by:
      build in interface PayoutBase
      Specified by:
      build in interface com.rosetta.model.lib.RosettaModelObject
      Overrides:
      build in class PayoutBase.PayoutBaseImpl
    • toBuilder

      Specified by:
      toBuilder in interface OptionPayout
      Specified by:
      toBuilder in interface PayoutBase
      Specified by:
      toBuilder in interface com.rosetta.model.lib.RosettaModelObject
      Overrides:
      toBuilder in class PayoutBase.PayoutBaseImpl
    • setBuilderFields

      protected void setBuilderFields(OptionPayout.OptionPayoutBuilder builder)
    • equals

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

      public int hashCode()
      Overrides:
      hashCode in class PayoutBase.PayoutBaseImpl
    • toString

      public String toString()
      Overrides:
      toString in class PayoutBase.PayoutBaseImpl