public class NormalOvernightFutureOptionMarginedProductPricer extends Object
This provides the ability to price an overnight future option. The option must be based on daily margin.
Strata uses decimal prices for overnight future options in the trade model, pricers and market data. The decimal price is based on the decimal rate equivalent to the percentage. For example, an option price of 0.2 is related to a futures price of 99.32 that implies an interest rate of 0.68%. Strata represents the price of the future as 0.9932 and thus represents the price of the option as 0.002.
| Modifier and Type | Field and Description |
|---|---|
static NormalOvernightFutureOptionMarginedProductPricer |
DEFAULT
Default implementation.
|
| Constructor and Description |
|---|
NormalOvernightFutureOptionMarginedProductPricer(DiscountingOvernightFutureProductPricer futurePricer)
Creates an instance.
|
| Modifier and Type | Method and Description |
|---|---|
double |
deltaStickyStrike(ResolvedOvernightFutureOption futureOption,
NormalOvernightFutureOptionVolatilities volatilities,
double futurePrice)
Calculates the delta of the Overnight future option product
based on the price of the underlying future.
|
double |
deltaStickyStrike(ResolvedOvernightFutureOption futureOption,
RatesProvider ratesProvider,
NormalOvernightFutureOptionVolatilities volatilities)
Calculates the delta of the Overnight future option product.
|
double |
price(ResolvedOvernightFutureOption futureOption,
NormalOvernightFutureOptionVolatilities volatilities,
double futurePrice)
Calculates the price of the Overnight future option product
based on the price of the underlying future.
|
double |
price(ResolvedOvernightFutureOption futureOption,
RatesProvider ratesProvider,
NormalOvernightFutureOptionVolatilities volatilities)
Calculates the price of the overnight future option product.
|
OvernightFutureOptionSensitivity |
priceSensitivityModelParamsVolatility(ResolvedOvernightFutureOption futureOption,
NormalOvernightFutureOptionVolatilities volatilities,
double futurePrice)
Calculates the price sensitivity to the normal volatility used for the pricing of the Overnight future option
based on the price of the underlying future.
|
OvernightFutureOptionSensitivity |
priceSensitivityModelParamsVolatility(ResolvedOvernightFutureOption futureOption,
RatesProvider ratesProvider,
NormalOvernightFutureOptionVolatilities volatilities)
Calculates the price sensitivity to the normal volatility used for the pricing of the Overnight future option.
|
PointSensitivities |
priceSensitivityRatesStickyStrike(ResolvedOvernightFutureOption futureOption,
RatesProvider ratesProvider,
NormalOvernightFutureOptionVolatilities volatilities)
Calculates the price sensitivity of the Overnight future option product based on curves.
|
PointSensitivities |
priceSensitivityRatesStickyStrike(ResolvedOvernightFutureOption futureOption,
RatesProvider ratesProvider,
NormalOvernightFutureOptionVolatilities volatilities,
double futurePrice)
Calculates the price sensitivity of the Overnight future option product
based on the price of the underlying future.
|
public static final NormalOvernightFutureOptionMarginedProductPricer DEFAULT
public NormalOvernightFutureOptionMarginedProductPricer(DiscountingOvernightFutureProductPricer futurePricer)
futurePricer - the pricer for OvernightFutureOptionpublic double price(ResolvedOvernightFutureOption futureOption, RatesProvider ratesProvider, NormalOvernightFutureOptionVolatilities volatilities)
The price of the option is the price on the valuation date.
This calculates the underlying future price using the future pricer.
futureOption - the option productratesProvider - the rates providervolatilities - the volatilitiespublic double price(ResolvedOvernightFutureOption futureOption, NormalOvernightFutureOptionVolatilities volatilities, double futurePrice)
The price of the option is the price on the valuation date.
futureOption - the option productvolatilities - the volatilitiesfuturePrice - the price of the underlying future, in decimal formpublic double deltaStickyStrike(ResolvedOvernightFutureOption futureOption, RatesProvider ratesProvider, NormalOvernightFutureOptionVolatilities volatilities)
The delta of the product is the sensitivity of the option price to the future price. The volatility is unchanged for a fixed strike in the sensitivity computation, hence the "StickyStrike" name.
This calculates the underlying future price using the future pricer.
futureOption - the option productratesProvider - the rates providervolatilities - the volatilitiespublic double deltaStickyStrike(ResolvedOvernightFutureOption futureOption, NormalOvernightFutureOptionVolatilities volatilities, double futurePrice)
The delta of the product is the sensitivity of the option price to the future price. The volatility is unchanged for a fixed strike in the sensitivity computation, hence the "StickyStrike" name.
futureOption - the option productvolatilities - the volatilitiesfuturePrice - the price of the underlying future, in decimal formpublic PointSensitivities priceSensitivityRatesStickyStrike(ResolvedOvernightFutureOption futureOption, RatesProvider ratesProvider, NormalOvernightFutureOptionVolatilities volatilities)
The price sensitivity of the product is the sensitivity of the price to the underlying curves. The volatility is unchanged for a fixed strike in the sensitivity computation, hence the "StickyStrike" name.
This calculates the underlying future price using the future pricer.
futureOption - the option productratesProvider - the rates providervolatilities - the volatilitiespublic PointSensitivities priceSensitivityRatesStickyStrike(ResolvedOvernightFutureOption futureOption, RatesProvider ratesProvider, NormalOvernightFutureOptionVolatilities volatilities, double futurePrice)
The price sensitivity of the product is the sensitivity of the price to the underlying curves. The volatility is unchanged for a fixed strike in the sensitivity computation, hence the "StickyStrike" name.
futureOption - the option productratesProvider - the rates providervolatilities - the volatilitiesfuturePrice - the price of the underlying future, in decimal formpublic OvernightFutureOptionSensitivity priceSensitivityModelParamsVolatility(ResolvedOvernightFutureOption futureOption, RatesProvider ratesProvider, NormalOvernightFutureOptionVolatilities volatilities)
This sensitivity is also called the price normal vega.
This calculates the underlying future price using the future pricer.
futureOption - the option productratesProvider - the rates providervolatilities - the volatilitiespublic OvernightFutureOptionSensitivity priceSensitivityModelParamsVolatility(ResolvedOvernightFutureOption futureOption, NormalOvernightFutureOptionVolatilities volatilities, double futurePrice)
This sensitivity is also called the price normal vega.
futureOption - the option productvolatilities - the volatilitiesfuturePrice - the underlying future price, in decimal formCopyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at strata.opengamma.io.