Class HullWhiteIborFutureProductPricer
- java.lang.Object
-
- com.opengamma.strata.pricer.index.HullWhiteIborFutureProductPricer
-
public class HullWhiteIborFutureProductPricer extends Object
Pricer for for Ibor future products.This function provides the ability to price a
IborFuture
based on Hull-White one-factor model with piecewise constant volatility.Reference: Henrard M., Eurodollar Futures and Options: Convexity Adjustment in HJM One-Factor Model. March 2005. Available at http://ssrn.com/abstract=682343
Price
The price of an Ibor future is based on the interest rate of the underlying index. It is defined as(100 - percentRate)
.Strata uses decimal prices for Ibor futures in the trade model, pricers and market data. The decimal price is based on the decimal rate equivalent to the percentage. For example, a price of 99.32 implies an interest rate of 0.68% which is represented in Strata by 0.9932.
-
-
Field Summary
Fields Modifier and Type Field Description static HullWhiteIborFutureProductPricer
DEFAULT
Default implementation.
-
Constructor Summary
Constructors Constructor Description HullWhiteIborFutureProductPricer()
Creates an instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description double
convexityAdjustment(ResolvedIborFuture future, RatesProvider ratesProvider, HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider)
Calculates the convexity adjustment (to the price) of the Ibor future product.double
parRate(ResolvedIborFuture future, RatesProvider ratesProvider, HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider)
Calculates the par rate of the Ibor future product.double
price(ResolvedIborFuture future, RatesProvider ratesProvider, HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider)
Calculates the price of the Ibor future product.DoubleArray
priceSensitivityModelParamsHullWhite(ResolvedIborFuture future, RatesProvider ratesProvider, HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider)
Calculates the price sensitivity to piecewise constant volatility parameters of the Hull-White model.PointSensitivities
priceSensitivityRates(ResolvedIborFuture future, RatesProvider ratesProvider, HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider)
Calculates the price sensitivity of the Ibor future product.
-
-
-
Field Detail
-
DEFAULT
public static final HullWhiteIborFutureProductPricer DEFAULT
Default implementation.
-
-
Method Detail
-
price
public double price(ResolvedIborFuture future, RatesProvider ratesProvider, HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider)
Calculates the price of the Ibor future product.The price of the product is the price on the valuation date.
- Parameters:
future
- the futureratesProvider
- the rates providerhwProvider
- the Hull-White model parameter provider- Returns:
- the price of the product, in decimal form
-
convexityAdjustment
public double convexityAdjustment(ResolvedIborFuture future, RatesProvider ratesProvider, HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider)
Calculates the convexity adjustment (to the price) of the Ibor future product.The convexity adjustment of the product is the value on the valuation date.
- Parameters:
future
- the futureratesProvider
- the rates providerhwProvider
- the Hull-White model parameter provider- Returns:
- the convexity adjustment, in decimal form
-
parRate
public double parRate(ResolvedIborFuture future, RatesProvider ratesProvider, HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider)
Calculates the par rate of the Ibor future product.The par rate is given by (
1 - price
). The par rate of the product is the value on the valuation date.- Parameters:
future
- the futureratesProvider
- the rates providerhwProvider
- the Hull-White model parameter provider- Returns:
- the par rate of the product, in decimal form
-
priceSensitivityRates
public PointSensitivities priceSensitivityRates(ResolvedIborFuture future, RatesProvider ratesProvider, HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider)
Calculates the price sensitivity of the Ibor future product.The price sensitivity of the product is the sensitivity of the price to the underlying curves.
- Parameters:
future
- the futureratesProvider
- the rates providerhwProvider
- the Hull-White model parameter provider- Returns:
- the price curve sensitivity of the product
-
priceSensitivityModelParamsHullWhite
public DoubleArray priceSensitivityModelParamsHullWhite(ResolvedIborFuture future, RatesProvider ratesProvider, HullWhiteOneFactorPiecewiseConstantParametersProvider hwProvider)
Calculates the price sensitivity to piecewise constant volatility parameters of the Hull-White model.- Parameters:
future
- the futureratesProvider
- the rates providerhwProvider
- the Hull-White model parameter provider- Returns:
- the price parameter sensitivity of the product
-
-