public class IborFutureOptionTradeCalculations extends Object
This provides a high-level entry point for option pricing and risk measures.
Each method takes a ResolvedIborFutureOptionTrade, whereas application code will
typically work with IborFutureOptionTrade. Call
IborFutureOptionTrade::resolve(ReferenceData)
to convert IborFutureOptionTrade to ResolvedIborFutureOptionTrade.
Strata uses decimal prices for Ibor 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 IborFutureOptionTradeCalculations |
DEFAULT
Default implementation.
|
| Constructor and Description |
|---|
IborFutureOptionTradeCalculations(NormalIborFutureOptionMarginedTradePricer tradePricer)
Creates an instance.
|
public static final IborFutureOptionTradeCalculations DEFAULT
public IborFutureOptionTradeCalculations(NormalIborFutureOptionMarginedTradePricer tradePricer)
In most cases, applications should use the DEFAULT instance.
tradePricer - the pricer for ResolvedIborFutureOptionTradepublic CurrencyScenarioArray presentValue(ResolvedIborFutureOptionTrade trade, RatesMarketDataLookup ratesLookup, IborFutureOptionMarketDataLookup optionLookup, ScenarioMarketData marketData)
trade - the traderatesLookup - the lookup used to query the rates market dataoptionLookup - the lookup used to query the option market datamarketData - the market datapublic CurrencyAmount presentValue(ResolvedIborFutureOptionTrade trade, RatesProvider ratesProvider, IborFutureOptionVolatilities volatilities)
trade - the traderatesProvider - the market datavolatilities - the option volatilitiespublic MultiCurrencyScenarioArray pv01CalibratedSum(ResolvedIborFutureOptionTrade trade, RatesMarketDataLookup ratesLookup, IborFutureOptionMarketDataLookup optionLookup, ScenarioMarketData marketData)
This is the sensitivity of present value to a one basis point shift in the calibrated curves. The result is the sum of the sensitivities of all affected curves.
trade - the traderatesLookup - the lookup used to query the rates market dataoptionLookup - the lookup used to query the option market datamarketData - the market datapublic MultiCurrencyAmount pv01CalibratedSum(ResolvedIborFutureOptionTrade trade, RatesProvider ratesProvider, IborFutureOptionVolatilities volatilities)
This is the sensitivity of present value to a one basis point shift in the calibrated curves. The result is the sum of the sensitivities of all affected curves.
trade - the traderatesProvider - the market datavolatilities - the option volatilitiespublic ScenarioArray<CurrencyParameterSensitivities> pv01CalibratedBucketed(ResolvedIborFutureOptionTrade trade, RatesMarketDataLookup ratesLookup, IborFutureOptionMarketDataLookup optionLookup, ScenarioMarketData marketData)
This is the sensitivity of present value to a one basis point shift in the calibrated curves. The result is provided for each affected curve and currency, bucketed by curve node.
trade - the traderatesLookup - the lookup used to query the rates market dataoptionLookup - the lookup used to query the option market datamarketData - the market datapublic CurrencyParameterSensitivities pv01CalibratedBucketed(ResolvedIborFutureOptionTrade trade, RatesProvider ratesProvider, IborFutureOptionVolatilities volatilities)
This is the sensitivity of present value to a one basis point shift in the calibrated curves. The result is provided for each affected curve and currency, bucketed by curve node.
trade - the traderatesProvider - the market datavolatilities - the option volatilitiespublic MultiCurrencyScenarioArray pv01MarketQuoteSum(ResolvedIborFutureOptionTrade trade, RatesMarketDataLookup ratesLookup, IborFutureOptionMarketDataLookup optionLookup, ScenarioMarketData marketData)
This is the sensitivity of present value to a one basis point shift in the market quotes used to calibrate the curves. The result is the sum of the sensitivities of all affected curves.
trade - the traderatesLookup - the lookup used to query the rates market dataoptionLookup - the lookup used to query the option market datamarketData - the market datapublic MultiCurrencyAmount pv01MarketQuoteSum(ResolvedIborFutureOptionTrade trade, RatesProvider ratesProvider, IborFutureOptionVolatilities volatilities)
This is the sensitivity of present value to a one basis point shift in the market quotes used to calibrate the curves. The result is the sum of the sensitivities of all affected curves.
trade - the traderatesProvider - the market datavolatilities - the option volatilitiespublic ScenarioArray<CurrencyParameterSensitivities> pv01MarketQuoteBucketed(ResolvedIborFutureOptionTrade trade, RatesMarketDataLookup ratesLookup, IborFutureOptionMarketDataLookup optionLookup, ScenarioMarketData marketData)
This is the sensitivity of present value to a one basis point shift in the market quotes used to calibrate the curves. The result is provided for each affected curve and currency, bucketed by curve node.
trade - the traderatesLookup - the lookup used to query the rates market dataoptionLookup - the lookup used to query the option market datamarketData - the market datapublic CurrencyParameterSensitivities pv01MarketQuoteBucketed(ResolvedIborFutureOptionTrade trade, RatesProvider ratesProvider, IborFutureOptionVolatilities volatilities)
This is the sensitivity of present value to a one basis point shift in the market quotes used to calibrate the curves. The result is provided for each affected curve and currency, bucketed by curve node.
trade - the traderatesProvider - the market datavolatilities - the option volatilitiespublic DoubleScenarioArray unitPrice(ResolvedIborFutureOptionTrade trade, RatesMarketDataLookup ratesLookup, IborFutureOptionMarketDataLookup optionLookup, ScenarioMarketData marketData)
This is the price of a single unit of the security.
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.
trade - the traderatesLookup - the lookup used to query the rates market dataoptionLookup - the lookup used to query the option market datamarketData - the market datapublic double unitPrice(ResolvedIborFutureOptionTrade trade, RatesProvider ratesProvider, IborFutureOptionVolatilities volatilities)
This is the price of a single unit of the security.
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.
trade - the traderatesProvider - the market datavolatilities - the option volatilitiesCopyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at strata.opengamma.io.