createIndexCurveWithSeasonality
public static Curve createIndexCurveWithSeasonality(String name,
LocalDate referenceDate,
Map<LocalDate,Double> indexFixings,
Map<String,Double> seasonalityAdjustments,
Integer seasonalAveragingNumberOfYears,
Map<LocalDate,Double> annualizedZeroRates,
String forwardsFixingLag,
String forwardsFixingType)
Creates a monthly index curve with seasonality and past fixings.
This methods creates an index curve (e.g. for a CPI index) using provided annualizedZeroRates
for the forwards (expected future CPI values) and indexFixings
for the past
fixings.
It may also "overlay" the future values with a seasonality adjustment. The seasonality adjustment
is either taken from adjustment factors provided in seasonalityAdjustments
or
(if that argument is null) estimated from the indexFixings
. The the latter case
use seasonalAveragingNumerOfYears
to specify the number of years which should be used
to estimate the seasonality adjustments.
- Parameters:
name
- The name of the curve.
referenceDate
- The reference date of the curve.
indexFixings
- A Map<LocalDate, Double> of past fixings.
seasonalityAdjustments
- A Map<String, Double> of seasonality adjustments (annualized continuously compounded rates for the given month, i.e., the seasonality factor is exp(seasonalityAdjustment/12)), where the String keys are "january", "february", "march", "april", "may", "june", "july", "august", "september", "october", "november", "december".
seasonalAveragingNumberOfYears
- If seasonalityAdjustments is null you may provide an integer representing a number of years to have the seasonality estimated from the past fixings in indexFixings
.
annualizedZeroRates
- Map<LocalDate, Double> of annualized zero rates for given maturities.
forwardsFixingLag
- The fixing lag (e.g. "-3M" for -3 month)
forwardsFixingType
- The fixing type (e.g. "endOfMonth")
- Returns:
- An index curve.