Class StubFloatingRate.StubFloatingRateImpl

java.lang.Object
cdm.product.asset.StubFloatingRate.StubFloatingRateImpl
All Implemented Interfaces:
StubFloatingRate, com.rosetta.model.lib.RosettaModelObject
Enclosing interface:
StubFloatingRate

public static class StubFloatingRate.StubFloatingRateImpl extends Object implements StubFloatingRate
Immutable Implementation of StubFloatingRate
  • Constructor Details

  • Method Details

    • getFloatingRateIndex

      @RosettaAttribute(value="floatingRateIndex", isRequired=true) @RuneAttribute(value="floatingRateIndex", isRequired=true) public FloatingRateIndexEnum getFloatingRateIndex()
      Description copied from interface: StubFloatingRate
      The floating rate index.
      Specified by:
      getFloatingRateIndex in interface StubFloatingRate
    • getIndexTenor

      @RosettaAttribute("indexTenor") @RuneAttribute("indexTenor") public Period getIndexTenor()
      Description copied from interface: StubFloatingRate
      The ISDA Designated Maturity, i.e. the tenor of the floating rate.
      Specified by:
      getIndexTenor in interface StubFloatingRate
    • getFloatingRateMultiplierSchedule

      @RosettaAttribute("floatingRateMultiplierSchedule") @RuneAttribute("floatingRateMultiplierSchedule") public Schedule getFloatingRateMultiplierSchedule()
      Description copied from interface: StubFloatingRate
      A rate multiplier or multiplier schedule to apply to the floating rate. A multiplier schedule is expressed as explicit multipliers and dates. In the case of a schedule, the step dates may be subject to adjustment in accordance with any adjustments specified in the calculationPeriodDatesAdjustments. The multiplier can be a positive or negative decimal. This element should only be included if the multiplier is not equal to 1 (one) for the term of the stream.
      Specified by:
      getFloatingRateMultiplierSchedule in interface StubFloatingRate
    • getSpreadSchedule

      @RosettaAttribute("spreadSchedule") @RuneAttribute("spreadSchedule") public List<? extends SpreadSchedule> getSpreadSchedule()
      Description copied from interface: StubFloatingRate
      The ISDA Spread or a Spread schedule expressed as explicit spreads and dates. In the case of a schedule, the step dates may be subject to adjustment in accordance with any adjustments specified in calculationPeriodDatesAdjustments. The spread is a per annum rate, expressed as a decimal. For purposes of determining a calculation period amount, if positive the spread will be added to the floating rate and if negative the spread will be subtracted from the floating rate. A positive 10 basis point (0.1%) spread would be represented as 0.001.
      Specified by:
      getSpreadSchedule in interface StubFloatingRate
    • getRateTreatment

      @RosettaAttribute("rateTreatment") @RuneAttribute("rateTreatment") public RateTreatmentEnum getRateTreatment()
      Description copied from interface: StubFloatingRate
      The specification of any rate conversion which needs to be applied to the observed rate before being used in any calculations. The two common conversions are for securities quoted on a bank discount basis which will need to be converted to either a Money Market Yield or Bond Equivalent Yield. See the Annex to the 2000 ISDA Definitions, Section 7.3. Certain General Definitions Relating to Floating Rate Options, paragraphs (g) and (h) for definitions of these terms.
      Specified by:
      getRateTreatment in interface StubFloatingRate
    • getCapRateSchedule

      @RosettaAttribute("capRateSchedule") @RuneAttribute("capRateSchedule") public List<? extends StrikeSchedule> getCapRateSchedule()
      Description copied from interface: StubFloatingRate
      The cap rate or cap rate schedule, if any, which applies to the floating rate. The cap rate (strike) is only required where the floating rate on a swap stream is capped at a certain level. A cap rate schedule is expressed as explicit cap rates and dates and the step dates may be subject to adjustment in accordance with any adjustments specified in calculationPeriodDatesAdjustments. The cap rate is assumed to be exclusive of any spread and is a per annum rate, expressed as a decimal. A cap rate of 5% would be represented as 0.05.
      Specified by:
      getCapRateSchedule in interface StubFloatingRate
    • getFloorRateSchedule

      @RosettaAttribute("floorRateSchedule") @RuneAttribute("floorRateSchedule") public List<? extends StrikeSchedule> getFloorRateSchedule()
      Description copied from interface: StubFloatingRate
      The floor rate or floor rate schedule, if any, which applies to the floating rate. The floor rate (strike) is only required where the floating rate on a swap stream is floored at a certain strike level. A floor rate schedule is expressed as explicit floor rates and dates and the step dates may be subject to adjustment in accordance with any adjustments specified in calculationPeriodDatesAdjustments. The floor rate is assumed to be exclusive of any spread and is a per annum rate, expressed as a decimal. A floor rate of 5% would be represented as 0.05.
      Specified by:
      getFloorRateSchedule in interface StubFloatingRate
    • build

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

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

      protected void setBuilderFields(StubFloatingRate.StubFloatingRateBuilder 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