Interface InterestRatePayout

All Superinterfaces:
com.rosetta.model.lib.GlobalKey, PayoutBase, com.rosetta.model.lib.RosettaModelObject
All Known Subinterfaces:
InterestRatePayout.InterestRatePayoutBuilder
All Known Implementing Classes:
InterestRatePayout.InterestRatePayoutBuilderImpl, InterestRatePayout.InterestRatePayoutImpl

@RosettaDataType(value="InterestRatePayout", builder=InterestRatePayoutBuilderImpl.class, version="5.30.0") @RuneDataType(value="InterestRatePayout", model="cdm", builder=InterestRatePayoutBuilderImpl.class, version="5.30.0") public interface InterestRatePayout extends PayoutBase, com.rosetta.model.lib.GlobalKey
A class to specify all of the terms necessary to define and calculate a cash flow based on a fixed, a floating or an inflation index rate. The interest rate payout can be applied to interest rate swaps and FRA (which both have two associated interest rate payouts), credit default swaps (to represent the fee leg when subject to periodic payments) and equity swaps (to represent the funding leg). The associated globalKey denotes the ability to associate a hash value to the InterestRatePayout instantiations for the purpose of model cross-referencing, in support of functionality such as the event effect and the lineage.
Version:
5.30.0
  • Field Details

  • Method Details

    • getRateSpecification

      RateSpecification getRateSpecification()
      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.
    • getDayCountFraction

      FieldWithMetaDayCountFractionEnum getDayCountFraction()
      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.
    • getCalculationPeriodDates

      CalculationPeriodDates getCalculationPeriodDates()
      The parameters used to generate the calculation period dates schedule, including the specification of any initial or final stub calculation periods.
    • getPaymentDates

      PaymentDates getPaymentDates()
      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).
    • getPaymentDate

      AdjustableDate getPaymentDate()
      The payment date, where only one date is specified, as for the FRA product.
    • getPaymentDelay

      Boolean getPaymentDelay()
      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.
    • getResetDates

      ResetDates getResetDates()
      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.
    • getDiscountingMethod

      DiscountingMethod getDiscountingMethod()
      The parameters specifying any discounting conventions that may apply. This element must only be included if discounting applies.
    • getCompoundingMethod

      CompoundingMethodEnum getCompoundingMethod()
      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.
    • getCashflowRepresentation

      CashflowRepresentation getCashflowRepresentation()
      The cashflow representation of the swap stream.
    • getStubPeriod

      StubPeriod getStubPeriod()
      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.
    • getBondReference

      BondReference getBondReference()
      Reference to a bond underlier to represent an asset swap or Condition Precedent Bond.
    • getFixedAmount

      String getFixedAmount()
      Fixed Amount Calculation
    • getFloatingAmount

      String getFloatingAmount()
      Floating Amount Calculation
    • getSpreadCalculationMethod

      SpreadCalculationMethodEnum getSpreadCalculationMethod()
      Method by which spread is calculated. For example on an asset swap: 'ParPar' or 'Proceeds' may be the method indicated.
    • getMeta

      com.rosetta.model.metafields.MetaFields getMeta()
      Specified by:
      getMeta in interface com.rosetta.model.lib.GlobalKey
    • build

      Build Methods
      Specified by:
      build in interface PayoutBase
      Specified by:
      build in interface com.rosetta.model.lib.RosettaModelObject
    • toBuilder

      Specified by:
      toBuilder in interface PayoutBase
      Specified by:
      toBuilder in interface com.rosetta.model.lib.RosettaModelObject
    • builder

    • metaData

      default com.rosetta.model.lib.meta.RosettaMetaData<? extends InterestRatePayout> metaData()
      Utility Methods
      Specified by:
      metaData in interface PayoutBase
      Specified by:
      metaData in interface com.rosetta.model.lib.RosettaModelObject
    • getType

      @RuneAttribute("@type") default Class<? extends InterestRatePayout> getType()
      Specified by:
      getType in interface PayoutBase
      Specified by:
      getType in interface com.rosetta.model.lib.RosettaModelObject
    • process

      default void process(com.rosetta.model.lib.path.RosettaPath path, com.rosetta.model.lib.process.Processor processor)
      Specified by:
      process in interface PayoutBase
      Specified by:
      process in interface com.rosetta.model.lib.RosettaModelObject