public class VolatilityIborCapFloorTradePricer extends Object
This function provides the ability to price IborCapFloorTrade.
The pricing methodologies are defined in individual implementations of the
volatilities, IborCapletFloorletVolatilities.
Greeks of the underlying product are computed in the product pricer, VolatilityIborCapFloorProductPricer.
| Modifier and Type | Field and Description |
|---|---|
static VolatilityIborCapFloorTradePricer |
DEFAULT
Default implementation.
|
| Constructor and Description |
|---|
VolatilityIborCapFloorTradePricer(VolatilityIborCapFloorProductPricer productPricer,
DiscountingPaymentPricer paymentPricer)
Creates an instance.
|
| Modifier and Type | Method and Description |
|---|---|
MultiCurrencyAmount |
currencyExposure(ResolvedIborCapFloorTrade trade,
RatesProvider ratesProvider,
IborCapletFloorletVolatilities volatilities)
Calculates the currency exposure of the Ibor cap/floor trade.
|
MultiCurrencyAmount |
currentCash(ResolvedIborCapFloorTrade trade,
RatesProvider ratesProvider,
IborCapletFloorletVolatilities volatilities)
Calculates the current cash of the Ibor cap/floor trade.
|
IborCapletFloorletPeriodAmounts |
forwardRates(ResolvedIborCapFloorTrade trade,
RatesProvider ratesProvider)
Calculates the forward rates for each caplet/floorlet of the Ibor cap/floor trade.
|
protected DiscountingPaymentPricer |
getPaymentPricer()
Gets the payment pricer.
|
IborCapletFloorletPeriodAmounts |
impliedVolatilities(ResolvedIborCapFloorTrade trade,
RatesProvider ratesProvider,
IborCapletFloorletVolatilities volatilities)
Calculates the implied volatilities for each caplet/floorlet of the Ibor cap/floor trade.
|
MultiCurrencyAmount |
presentValue(ResolvedIborCapFloorTrade trade,
RatesProvider ratesProvider,
IborCapletFloorletVolatilities volatilities)
Calculates the present value of the Ibor cap/floor trade.
|
IborCapletFloorletPeriodCurrencyAmounts |
presentValueCapletFloorletPeriods(ResolvedIborCapFloorTrade trade,
RatesProvider ratesProvider,
IborCapletFloorletVolatilities volatilities)
Calculates the present value for each caplet/floorlet of the Ibor cap/floor trade.
|
PointSensitivityBuilder |
presentValueSensitivityModelParamsVolatility(ResolvedIborCapFloorTrade trade,
RatesProvider ratesProvider,
IborCapletFloorletVolatilities volatilities)
Calculates the present value volatility sensitivity of the Ibor cap/floor product.
|
PointSensitivities |
presentValueSensitivityRates(ResolvedIborCapFloorTrade trade,
RatesProvider ratesProvider,
IborCapletFloorletVolatilities volatilities)
Calculates the present value rates sensitivity of the Ibor cap/floor trade.
|
public static final VolatilityIborCapFloorTradePricer DEFAULT
public VolatilityIborCapFloorTradePricer(VolatilityIborCapFloorProductPricer productPricer, DiscountingPaymentPricer paymentPricer)
productPricer - the pricer for ResolvedIborCapFloorpaymentPricer - the pricer for Paymentprotected DiscountingPaymentPricer getPaymentPricer()
public MultiCurrencyAmount presentValue(ResolvedIborCapFloorTrade trade, RatesProvider ratesProvider, IborCapletFloorletVolatilities volatilities)
The present value of the trade is the value on the valuation date.
The cap/floor leg and pay leg are typically in the same currency, thus the present value gamma is expressed as a single currency amount in most cases.
trade - the Ibor cap/floor traderatesProvider - the rates providervolatilities - the volatilitiespublic IborCapletFloorletPeriodCurrencyAmounts presentValueCapletFloorletPeriods(ResolvedIborCapFloorTrade trade, RatesProvider ratesProvider, IborCapletFloorletVolatilities volatilities)
The present value of each caplet/floorlet is the value on the valuation date. The result is returned using the payment currency of the leg.
The present value will not be calculated for the trade premium or for the pay leg if the cap/floor product has one.
trade - the Ibor cap/floor legratesProvider - the rates providervolatilities - the volatilitiespublic PointSensitivities presentValueSensitivityRates(ResolvedIborCapFloorTrade trade, RatesProvider ratesProvider, IborCapletFloorletVolatilities volatilities)
The present value rates sensitivity of the trade is the sensitivity of the present value to the underlying curves.
trade - the Ibor cap/floor traderatesProvider - the rates providervolatilities - the volatilitiespublic PointSensitivityBuilder presentValueSensitivityModelParamsVolatility(ResolvedIborCapFloorTrade trade, RatesProvider ratesProvider, IborCapletFloorletVolatilities volatilities)
The present value volatility sensitivity of the product is the sensitivity of the present value to the volatility values.
trade - the Ibor cap/floor traderatesProvider - the rates providervolatilities - the volatilitiespublic MultiCurrencyAmount currencyExposure(ResolvedIborCapFloorTrade trade, RatesProvider ratesProvider, IborCapletFloorletVolatilities volatilities)
trade - the Ibor cap/floor traderatesProvider - the rates providervolatilities - the volatilitiespublic MultiCurrencyAmount currentCash(ResolvedIborCapFloorTrade trade, RatesProvider ratesProvider, IborCapletFloorletVolatilities volatilities)
trade - the Ibor cap/floor traderatesProvider - the rates providervolatilities - the volatilitiespublic IborCapletFloorletPeriodAmounts forwardRates(ResolvedIborCapFloorTrade trade, RatesProvider ratesProvider)
trade - the Ibor cap/floor traderatesProvider - the rates providerpublic IborCapletFloorletPeriodAmounts impliedVolatilities(ResolvedIborCapFloorTrade trade, RatesProvider ratesProvider, IborCapletFloorletVolatilities volatilities)
trade - the Ibor cap/floor traderatesProvider - the rates providervolatilities - the volatilitiesCopyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at strata.opengamma.io.