Package org.isda.cdm

Class FloatingRate

  • All Implemented Interfaces:
    com.rosetta.model.lib.GlobalKey
    Direct Known Subclasses:
    FloatingRateSpecification

    @RosettaClass
    @RosettaSynonym(value="FloatingRate",source="FpML_5_10") @RosettaSynonym(value="FloatingRate",source="CME_SubmissionIRS_1_0") @RosettaSynonym(value="FloatingRate",source="DTCC_11_0") @RosettaSynonym(value="FloatingRate",source="DTCC_9_0") @RosettaSynonym(value="FloatingRate",source="CME_ClearedConfirm_1_17") @RosettaSynonym(value="FloatingRate",source="FpML_5_10") @RosettaSynonym(value="FloatingRate",source="CME_SubmissionIRS_1_0") @RosettaSynonym(value="FloatingRate",source="DTCC_11_0") @RosettaSynonym(value="FloatingRate",source="DTCC_9_0") @RosettaSynonym(value="FloatingRate",source="CME_ClearedConfirm_1_17")
    public class FloatingRate
    extends com.rosetta.model.lib.RosettaModelObject
    implements com.rosetta.model.lib.GlobalKey
    A class defining a floating interest rate through the specification of the floating rate index, the tenor, the multiplier schedule, the spread, the qualification of whether a specific rate treatment and/or a cap or floor apply.
    Version:
    2.5.4
    • Method Detail

      • getCapRateSchedule

        @RosettaSynonym(value="capRateSchedule",source="FpML_5_10",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="capRateSchedule",source="FpML_5_10",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="capRateSchedule",source="CME_SubmissionIRS_1_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="capRateSchedule",source="CME_SubmissionIRS_1_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="capRateSchedule",source="DTCC_11_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="capRateSchedule",source="DTCC_11_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="capRateSchedule",source="DTCC_9_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="capRateSchedule",source="DTCC_9_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="capRateSchedule",source="CME_ClearedConfirm_1_17",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="capRateSchedule",source="CME_ClearedConfirm_1_17",path="periodicPayment.floatingAmountCalculation.floatingRate")
        public final java.util.List<StrikeSchedule> getCapRateSchedule()
        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.
      • getFloatingRateIndex

        @RosettaSynonym(value="floatingRateIndex",source="FpML_5_10",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floatingRateIndex",source="CME_SubmissionIRS_1_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floatingRateIndex",source="DTCC_11_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floatingRateIndex",source="DTCC_9_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floatingRateIndex",source="CME_ClearedConfirm_1_17",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floatingRateIndex",source="FpML_5_10",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floatingRateIndex",source="CME_SubmissionIRS_1_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floatingRateIndex",source="DTCC_11_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floatingRateIndex",source="DTCC_9_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floatingRateIndex",source="CME_ClearedConfirm_1_17",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floatingRateIndex",source="FpML_5_10") @RosettaSynonym(value="floatingRateIndex",source="CME_SubmissionIRS_1_0") @RosettaSynonym(value="floatingRateIndex",source="DTCC_11_0") @RosettaSynonym(value="floatingRateIndex",source="DTCC_9_0") @RosettaSynonym(value="floatingRateIndex",source="CME_ClearedConfirm_1_17") @RosettaSynonym(value="floatingRateIndex",source="FpML_5_10",path="interestCalculation.floatingRateCalculation") @RosettaSynonym(value="floatingRateIndex",source="FpML_5_10",path="floatingRateCalculation")
        public final FieldWithMetaFloatingRateIndexEnum getFloatingRateIndex()
        The reference index that is used to specify the floating interest rate. The FpML standard maintains the list of such indices, which are positioned as enumeration values as part of the CDM.
      • getFloatingRateMultiplierSchedule

        @RosettaSynonym(value="floatingRateMultiplierSchedule",source="FpML_5_10",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floatingRateMultiplierSchedule",source="FpML_5_10",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floatingRateMultiplierSchedule",source="CME_SubmissionIRS_1_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floatingRateMultiplierSchedule",source="CME_SubmissionIRS_1_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floatingRateMultiplierSchedule",source="DTCC_11_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floatingRateMultiplierSchedule",source="DTCC_11_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floatingRateMultiplierSchedule",source="DTCC_9_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floatingRateMultiplierSchedule",source="DTCC_9_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floatingRateMultiplierSchedule",source="CME_ClearedConfirm_1_17",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floatingRateMultiplierSchedule",source="CME_ClearedConfirm_1_17",path="periodicPayment.floatingAmountCalculation.floatingRate")
        public final Schedule getFloatingRateMultiplierSchedule()
        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.
      • getFloorRateSchedule

        @RosettaSynonym(value="floorRateSchedule",source="FpML_5_10",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floorRateSchedule",source="FpML_5_10",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floorRateSchedule",source="CME_SubmissionIRS_1_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floorRateSchedule",source="CME_SubmissionIRS_1_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floorRateSchedule",source="DTCC_11_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floorRateSchedule",source="DTCC_11_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floorRateSchedule",source="DTCC_9_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floorRateSchedule",source="DTCC_9_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="floorRateSchedule",source="CME_ClearedConfirm_1_17",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="floorRateSchedule",source="CME_ClearedConfirm_1_17",path="periodicPayment.floatingAmountCalculation.floatingRate")
        public final java.util.List<StrikeSchedule> getFloorRateSchedule()
        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.
      • getIndexTenor

        @RosettaSynonym(value="indexTenor",source="FpML_5_10",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="indexTenor",source="FpML_5_10",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="indexTenor",source="CME_SubmissionIRS_1_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="indexTenor",source="CME_SubmissionIRS_1_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="indexTenor",source="DTCC_11_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="indexTenor",source="DTCC_11_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="indexTenor",source="DTCC_9_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="indexTenor",source="DTCC_9_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="indexTenor",source="CME_ClearedConfirm_1_17",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="indexTenor",source="CME_ClearedConfirm_1_17",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="indexTenor",source="FpML_5_10") @RosettaSynonym(value="indexTenor",source="CME_SubmissionIRS_1_0") @RosettaSynonym(value="indexTenor",source="DTCC_11_0") @RosettaSynonym(value="indexTenor",source="DTCC_9_0") @RosettaSynonym(value="indexTenor",source="CME_ClearedConfirm_1_17") @RosettaSynonym(value="indexTenor",source="FpML_5_10",path="interestCalculation.floatingRateCalculation") @RosettaSynonym(value="indexTenor",source="FpML_5_10",path="floatingRateCalculation")
        public final Period getIndexTenor()
        The ISDA Designated Maturity, i.e. the floating rate tenor.
      • getMeta

        public final MetaFields getMeta()
        Specified by:
        getMeta in interface com.rosetta.model.lib.GlobalKey
      • getRateTreatment

        @RosettaSynonym(value="rateTreatment",source="FpML_5_10",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="rateTreatment",source="FpML_5_10",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="rateTreatment",source="CME_SubmissionIRS_1_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="rateTreatment",source="CME_SubmissionIRS_1_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="rateTreatment",source="DTCC_11_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="rateTreatment",source="DTCC_11_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="rateTreatment",source="DTCC_9_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="rateTreatment",source="DTCC_9_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="rateTreatment",source="CME_ClearedConfirm_1_17",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="rateTreatment",source="CME_ClearedConfirm_1_17",path="periodicPayment.floatingAmountCalculation.floatingRate")
        public final RateTreatmentEnum getRateTreatment()
        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.
      • getSpreadSchedule

        @RosettaSynonym(value="spreadSchedule",source="FpML_5_10",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="spreadSchedule",source="FpML_5_10",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="spreadSchedule",source="CME_SubmissionIRS_1_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="spreadSchedule",source="CME_SubmissionIRS_1_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="spreadSchedule",source="DTCC_11_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="spreadSchedule",source="DTCC_11_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="spreadSchedule",source="DTCC_9_0",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="spreadSchedule",source="DTCC_9_0",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="spreadSchedule",source="CME_ClearedConfirm_1_17",path="calculationPeriodAmount.calculation.floatingRateCalculation") @RosettaSynonym(value="spreadSchedule",source="CME_ClearedConfirm_1_17",path="periodicPayment.floatingAmountCalculation.floatingRate") @RosettaSynonym(value="spreadSchedule",source="FpML_5_10",path="interestCalculation.floatingRateCalculation") @RosettaSynonym(value="spreadSchedule",source="FpML_5_10",path="floatingRateCalculation")
        public final java.util.List<SpreadSchedule> getSpreadSchedule()
        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.
      • metaData

        public com.rosetta.model.lib.meta.RosettaMetaData<? extends FloatingRate> metaData()
        Specified by:
        metaData in class com.rosetta.model.lib.RosettaModelObject
      • process

        public void process​(com.rosetta.model.lib.path.RosettaPath path,
                            com.rosetta.model.lib.process.Processor processor)
        Specified by:
        process in class com.rosetta.model.lib.RosettaModelObject
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

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

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object