Class InflationMonthlyRateComputation

  • All Implemented Interfaces:
    RateComputation, java.io.Serializable, Bean, ImmutableBean

    public final class InflationMonthlyRateComputation
    extends java.lang.Object
    implements RateComputation, ImmutableBean, java.io.Serializable
    Defines the computation of inflation figures from a price index.

    A price index is typically published monthly and has a delay before publication. The rate observed by this instance will be based on two observations of the index, one relative to the accrual start date and one relative to the accrual end date.

    See Also:
    Serialized Form
    • Method Detail

      • of

        public static InflationMonthlyRateComputation of​(PriceIndex index,
                                                         java.time.YearMonth referenceStartMonth,
                                                         java.time.YearMonth referenceEndMonth)
        Creates an instance from an index, reference start month and reference end month.
        Parameters:
        index - the index
        referenceStartMonth - the reference start month
        referenceEndMonth - the reference end month
        Returns:
        the inflation rate computation
      • getIndex

        public PriceIndex getIndex()
        Gets the Price index.
        Returns:
        the Price index
      • collectIndices

        public void collectIndices​(com.google.common.collect.ImmutableSet.Builder<Index> builder)
        Description copied from interface: RateComputation
        Collects all the indices referred to by this computation.

        A computation will typically refer to one index, such as 'GBP-LIBOR-3M'. Each index that is referred to must be added to the specified builder.

        Specified by:
        collectIndices in interface RateComputation
        Parameters:
        builder - the builder to use
      • getStartObservation

        public PriceIndexObservation getStartObservation()
        Gets the observation at the start.

        The inflation rate is the ratio between the start and end observation. The start month is typically three months before the start of the period.

        Returns:
        the value of the property, not null
      • getEndObservation

        public PriceIndexObservation getEndObservation()
        Gets the observation at the end.

        The inflation rate is the ratio between the start and end observation. The end month is typically three months before the end of the period.

        Returns:
        the value of the property, not null
      • equals

        public boolean equals​(java.lang.Object obj)
        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