Class InterestRatePayout.InterestRatePayoutImpl

java.lang.Object
cdm.product.common.settlement.PayoutBase.PayoutBaseImpl
cdm.product.asset.InterestRatePayout.InterestRatePayoutImpl
All Implemented Interfaces:
InterestRatePayout, PayoutBase, com.rosetta.model.lib.GlobalKey, com.rosetta.model.lib.RosettaModelObject
Enclosing interface:
InterestRatePayout

public static class InterestRatePayout.InterestRatePayoutImpl extends PayoutBase.PayoutBaseImpl implements InterestRatePayout
Immutable Implementation of InterestRatePayout
  • Constructor Details

  • Method Details

    • getRateSpecification

      @RosettaAttribute("rateSpecification") @RuneAttribute("rateSpecification") public RateSpecification getRateSpecification()
      Description copied from interface: InterestRatePayout
      The specification of the rate value(s) applicable to the contract using either a floating rate calculation, a single fixed rate, a fixed rate schedule, or an inflation rate calculation.
      Specified by:
      getRateSpecification in interface InterestRatePayout
    • getDayCountFraction

      @RosettaAttribute("dayCountFraction") @RuneAttribute("dayCountFraction") public FieldWithMetaDayCountFractionEnum getDayCountFraction()
      Description copied from interface: InterestRatePayout
      The day count fraction. The cardinality has been relaxed when compared with the FpML interest rate swap for the purpose of accommodating standardized credit default swaps which DCF is not explicitly stated as part of the economic terms. The data rule InterestRatePayout_dayCountFraction requires that the DCF be stated for interest rate products.
      Specified by:
      getDayCountFraction in interface InterestRatePayout
    • getCalculationPeriodDates

      @RosettaAttribute("calculationPeriodDates") @RuneAttribute("calculationPeriodDates") public CalculationPeriodDates getCalculationPeriodDates()
      Description copied from interface: InterestRatePayout
      The parameters used to generate the calculation period dates schedule, including the specification of any initial or final stub calculation periods.
      Specified by:
      getCalculationPeriodDates in interface InterestRatePayout
    • getPaymentDates

      @RosettaAttribute("paymentDates") @RuneAttribute("paymentDates") public PaymentDates getPaymentDates()
      Description copied from interface: InterestRatePayout
      The payment date schedule, as defined by the parameters that are needed to specify it, either in a parametric way or by reference to another schedule of dates (e.g. the reset dates).
      Specified by:
      getPaymentDates in interface InterestRatePayout
    • getPaymentDate

      @RosettaAttribute("paymentDate") @RuneAttribute("paymentDate") public AdjustableDate getPaymentDate()
      Description copied from interface: InterestRatePayout
      The payment date, where only one date is specified, as for the FRA product.
      Specified by:
      getPaymentDate in interface InterestRatePayout
    • getPaymentDelay

      @RosettaAttribute("paymentDelay") @RuneAttribute("paymentDelay") public Boolean getPaymentDelay()
      Description copied from interface: InterestRatePayout
      Applicable to CDS on MBS to specify whether payment delays are applicable to the fixed Amount. RMBS typically have a payment delay of 5 days between the coupon date of the reference obligation and the payment date of the synthetic swap. CMBS do not, on the other hand, with both payment dates being on the 25th of each month.
      Specified by:
      getPaymentDelay in interface InterestRatePayout
    • getResetDates

      @RosettaAttribute("resetDates") @RuneAttribute("resetDates") public ResetDates getResetDates()
      Description copied from interface: InterestRatePayout
      The reset dates schedule, i.e. the dates on which the new observed index value is applied for each period and the interest rate hence begins to accrue.
      Specified by:
      getResetDates in interface InterestRatePayout
    • getDiscountingMethod

      @RosettaAttribute("discountingMethod") @RuneAttribute("discountingMethod") public DiscountingMethod getDiscountingMethod()
      Description copied from interface: InterestRatePayout
      The parameters specifying any discounting conventions that may apply. This element must only be included if discounting applies.
      Specified by:
      getDiscountingMethod in interface InterestRatePayout
    • getCompoundingMethod

      @RosettaAttribute("compoundingMethod") @RuneAttribute("compoundingMethod") public CompoundingMethodEnum getCompoundingMethod()
      Description copied from interface: InterestRatePayout
      If one or more calculation period contributes to a single payment amount this element specifies whether compounding is applicable and, if so, what compounding method is to be used. This element must only be included when more than one calculation period contributes to a single payment amount.
      Specified by:
      getCompoundingMethod in interface InterestRatePayout
    • getCashflowRepresentation

      @RosettaAttribute("cashflowRepresentation") @RuneAttribute("cashflowRepresentation") public CashflowRepresentation getCashflowRepresentation()
      Description copied from interface: InterestRatePayout
      The cashflow representation of the swap stream.
      Specified by:
      getCashflowRepresentation in interface InterestRatePayout
    • getStubPeriod

      @RosettaAttribute("stubPeriod") @RuneAttribute("stubPeriod") public StubPeriod getStubPeriod()
      Description copied from interface: InterestRatePayout
      The stub calculation period amount parameters. This element must only be included if there is an initial or final stub calculation period. Even then, it must only be included if either the stub references a different floating rate tenor to the regular calculation periods, or if the stub is calculated as a linear interpolation of two different floating rate tenors, or if a specific stub rate or stub amount has been negotiated.
      Specified by:
      getStubPeriod in interface InterestRatePayout
    • getBondReference

      @RosettaAttribute("bondReference") @RuneAttribute("bondReference") public BondReference getBondReference()
      Description copied from interface: InterestRatePayout
      Reference to a bond underlier to represent an asset swap or Condition Precedent Bond.
      Specified by:
      getBondReference in interface InterestRatePayout
    • getFixedAmount

      @RosettaAttribute("fixedAmount") @RuneAttribute("fixedAmount") public String getFixedAmount()
      Description copied from interface: InterestRatePayout
      Fixed Amount Calculation
      Specified by:
      getFixedAmount in interface InterestRatePayout
    • getFloatingAmount

      @RosettaAttribute("floatingAmount") @RuneAttribute("floatingAmount") public String getFloatingAmount()
      Description copied from interface: InterestRatePayout
      Floating Amount Calculation
      Specified by:
      getFloatingAmount in interface InterestRatePayout
    • getSpreadCalculationMethod

      @RosettaAttribute("spreadCalculationMethod") @RuneAttribute("spreadCalculationMethod") public SpreadCalculationMethodEnum getSpreadCalculationMethod()
      Description copied from interface: InterestRatePayout
      Method by which spread is calculated. For example on an asset swap: 'ParPar' or 'Proceeds' may be the method indicated.
      Specified by:
      getSpreadCalculationMethod in interface InterestRatePayout
    • 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 InterestRatePayout
    • build

      public InterestRatePayout build()
      Description copied from interface: PayoutBase
      Build Methods
      Specified by:
      build in interface InterestRatePayout
      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 InterestRatePayout
      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(InterestRatePayout.InterestRatePayoutBuilder 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