public final class InflationInterpolatedRateComputation extends Object implements RateComputation, org.joda.beans.ImmutableBean, Serializable
A price index is typically published monthly and has a delay before publication. The rate observed by this instance will be based on four observations of the index, two relative to the accrual start date and two relative to the accrual end date. Linear interpolation based on the number of days of the payment month is used to find the appropriate value for each pair of observations.
| Modifier and Type | Class and Description |
|---|---|
static class |
InflationInterpolatedRateComputation.Meta
The meta-bean for
InflationInterpolatedRateComputation. |
| Modifier and Type | Method and Description |
|---|---|
void |
collectIndices(ImmutableSet.Builder<Index> builder)
Collects all the indices referred to by this computation.
|
boolean |
equals(Object obj) |
PriceIndexObservation |
getEndObservation()
Gets the observation at the end.
|
PriceIndexObservation |
getEndSecondObservation()
Gets the observation for interpolation at the end.
|
PriceIndex |
getIndex()
Gets the Price index.
|
PriceIndexObservation |
getStartObservation()
Gets the observation at the start.
|
PriceIndexObservation |
getStartSecondObservation()
Gets the observation for interpolation at the start.
|
double |
getWeight()
Gets the positive weight used when interpolating.
|
int |
hashCode() |
static InflationInterpolatedRateComputation.Meta |
meta()
The meta-bean for
InflationInterpolatedRateComputation. |
InflationInterpolatedRateComputation.Meta |
metaBean() |
static InflationInterpolatedRateComputation |
of(PriceIndex index,
YearMonth referenceStartMonth,
YearMonth referenceEndMonth,
double weight)
Creates an instance from an index, reference start month and reference end month.
|
String |
toString() |
public static InflationInterpolatedRateComputation of(PriceIndex index, YearMonth referenceStartMonth, YearMonth referenceEndMonth, double weight)
The second start/end observations will be one month later than the start/end month.
index - the indexreferenceStartMonth - the reference start monthreferenceEndMonth - the reference end monthweight - the weightpublic PriceIndex getIndex()
public void collectIndices(ImmutableSet.Builder<Index> builder)
RateComputationA 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.
collectIndices in interface RateComputationbuilder - the builder to usepublic static InflationInterpolatedRateComputation.Meta meta()
InflationInterpolatedRateComputation.public InflationInterpolatedRateComputation.Meta metaBean()
metaBean in interface org.joda.beans.Beanpublic PriceIndexObservation getStartObservation()
The inflation rate is the ratio between the interpolated start and end observations. The start month is typically three months before the start of the period.
public PriceIndexObservation getStartSecondObservation()
The inflation rate is the ratio between the interpolated start and end observations. The month is typically one month after the month of the start observation.
public PriceIndexObservation getEndObservation()
The inflation rate is the ratio between the interpolated start and end observations. The end month is typically three months before the end of the period.
public PriceIndexObservation getEndSecondObservation()
The inflation rate is the ratio between the interpolated start and end observations. The month is typically one month after the month of the end observation.
public double getWeight()
Given two price index observations, typically in adjacent months, the weight is used
to determine the adjusted index value. The value is given by the formula
(weight * price_index_1 + (1 - weight) * price_index_2).
Copyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at strata.opengamma.io.