public final class BlackBondFutureOptionMarginedTradePricer extends Object
The bond future option is priced based on Black model.
BondFuture.| Modifier and Type | Field and Description |
|---|---|
static BlackBondFutureOptionMarginedTradePricer |
DEFAULT
Default implementation.
|
| Constructor and Description |
|---|
BlackBondFutureOptionMarginedTradePricer(BlackBondFutureOptionMarginedProductPricer productPricer)
Creates an instance.
|
| Modifier and Type | Method and Description |
|---|---|
MultiCurrencyAmount |
currencyExposure(ResolvedBondFutureOptionTrade trade,
LegalEntityDiscountingProvider discountingProvider,
BondFutureVolatilities volatilities,
double lastOptionSettlementPrice)
Calculates the currency exposure of the bond future option trade.
|
MultiCurrencyAmount |
currencyExposure(ResolvedBondFutureOptionTrade trade,
LocalDate valuationDate,
double currentOptionPrice,
double lastOptionSettlementPrice)
Calculates the currency exposure of the bond future option trade from the current option price.
|
CurrencyAmount |
presentValue(ResolvedBondFutureOptionTrade trade,
LegalEntityDiscountingProvider discountingProvider,
BlackBondFutureVolatilities volatilities,
double futurePrice,
double lastOptionSettlementPrice)
Calculates the present value of the bond future option trade from the underlying future price.
|
CurrencyAmount |
presentValue(ResolvedBondFutureOptionTrade trade,
LegalEntityDiscountingProvider discountingProvider,
BondFutureVolatilities volatilities,
double lastOptionSettlementPrice)
Calculates the present value of the bond future option trade.
|
CurrencyAmount |
presentValue(ResolvedBondFutureOptionTrade trade,
LocalDate valuationDate,
double currentOptionPrice,
double lastOptionSettlementPrice)
Calculates the present value of the bond future option trade from the current option price.
|
BondFutureOptionSensitivity |
presentValueSensitivityModelParamsVolatility(ResolvedBondFutureOptionTrade futureOptionTrade,
LegalEntityDiscountingProvider discountingProvider,
BlackBondFutureVolatilities volatilities)
Computes the present value sensitivity to the Black volatility used in the pricing.
|
BondFutureOptionSensitivity |
presentValueSensitivityModelParamsVolatility(ResolvedBondFutureOptionTrade futureOptionTrade,
LegalEntityDiscountingProvider discountingProvider,
BlackBondFutureVolatilities volatilities,
double futurePrice)
Computes the present value sensitivity to the Black volatility used in the pricing
based on the price of the underlying future.
|
PointSensitivities |
presentValueSensitivityRates(ResolvedBondFutureOptionTrade trade,
LegalEntityDiscountingProvider discountingProvider,
BondFutureVolatilities volatilities)
Calculates the present value sensitivity of the bond future option trade.
|
double |
price(ResolvedBondFutureOptionTrade trade,
LegalEntityDiscountingProvider discountingProvider,
BondFutureVolatilities volatilities)
Calculates the price of the bond future option trade.
|
public static final BlackBondFutureOptionMarginedTradePricer DEFAULT
public BlackBondFutureOptionMarginedTradePricer(BlackBondFutureOptionMarginedProductPricer productPricer)
productPricer - the pricer for ResolvedBondFutureOptionpublic double price(ResolvedBondFutureOptionTrade trade, LegalEntityDiscountingProvider discountingProvider, BondFutureVolatilities volatilities)
The price of the trade is the price on the valuation date.
trade - the tradediscountingProvider - the discounting providervolatilities - the volatilitiespublic CurrencyAmount presentValue(ResolvedBondFutureOptionTrade trade, LocalDate valuationDate, double currentOptionPrice, double lastOptionSettlementPrice)
The present value of the product is the value on the valuation date. The current price is specified, not calculated.
This method calculates based on the difference between the specified current price and the last settlement price, or the trade price if traded on the valuation date.
trade - the tradevaluationDate - the valuation date; required to asses if the trade or last closing price should be usedcurrentOptionPrice - the option price on the valuation datelastOptionSettlementPrice - the last settlement price used for margining for the option, in decimal formpublic CurrencyAmount presentValue(ResolvedBondFutureOptionTrade trade, LegalEntityDiscountingProvider discountingProvider, BondFutureVolatilities volatilities, double lastOptionSettlementPrice)
The present value of the product is the value on the valuation date. The current price is calculated using the volatility model.
This method calculates based on the difference between the model price and the last settlement price, or the trade price if traded on the valuation date.
trade - the tradediscountingProvider - the discounting providervolatilities - the volatilitieslastOptionSettlementPrice - the last settlement price used for margining for the option, in decimal formpublic CurrencyAmount presentValue(ResolvedBondFutureOptionTrade trade, LegalEntityDiscountingProvider discountingProvider, BlackBondFutureVolatilities volatilities, double futurePrice, double lastOptionSettlementPrice)
The present value of the product is the value on the valuation date. The current price is calculated using the volatility model with a known future price.
This method calculates based on the difference between the model price and the last settlement price, or the trade price if traded on the valuation date.
trade - the tradediscountingProvider - the discounting providervolatilities - the volatilitiesfuturePrice - the price of the underlying futurelastOptionSettlementPrice - the last settlement price used for margining for the option, in decimal formpublic PointSensitivities presentValueSensitivityRates(ResolvedBondFutureOptionTrade trade, LegalEntityDiscountingProvider discountingProvider, BondFutureVolatilities volatilities)
The present value sensitivity of the trade is the sensitivity of the present value to the underlying curves.
trade - the tradediscountingProvider - the discounting providervolatilities - the volatilitiespublic BondFutureOptionSensitivity presentValueSensitivityModelParamsVolatility(ResolvedBondFutureOptionTrade futureOptionTrade, LegalEntityDiscountingProvider discountingProvider, BlackBondFutureVolatilities volatilities)
The result is a single sensitivity to the volatility used. The volatility is associated with the expiry/delay/strike/future price key combination.
This calculates the underlying future price using the future pricer.
futureOptionTrade - the tradediscountingProvider - the discounting providervolatilities - the volatilitiespublic BondFutureOptionSensitivity presentValueSensitivityModelParamsVolatility(ResolvedBondFutureOptionTrade futureOptionTrade, LegalEntityDiscountingProvider discountingProvider, BlackBondFutureVolatilities volatilities, double futurePrice)
The result is a single sensitivity to the volatility used. The volatility is associated with the expiry/delay/strike/future price key combination.
futureOptionTrade - the tradediscountingProvider - the discounting providervolatilities - the volatilitiesfuturePrice - the price of the underlying futurepublic MultiCurrencyAmount currencyExposure(ResolvedBondFutureOptionTrade trade, LegalEntityDiscountingProvider discountingProvider, BondFutureVolatilities volatilities, double lastOptionSettlementPrice)
This method calculates based on the difference between the model price and the last settlement price, or the trade price if traded on the valuation date.
trade - the tradediscountingProvider - the discounting providervolatilities - the volatilitieslastOptionSettlementPrice - the last settlement price used for margining for the option, in decimal formpublic MultiCurrencyAmount currencyExposure(ResolvedBondFutureOptionTrade trade, LocalDate valuationDate, double currentOptionPrice, double lastOptionSettlementPrice)
This method calculates based on the difference between the model price and the last settlement price, or the trade price if traded on the valuation date.
trade - the tradevaluationDate - the valuation date; required to asses if the trade or last closing price should be usedcurrentOptionPrice - the option price on the valuation datelastOptionSettlementPrice - the last settlement price used for margining for the option, in decimal formCopyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at strata.opengamma.io.