public class FxVanillaOptionTradeCalculations extends Object
This provides a high-level entry point for FX vanilla option pricing and risk measures. Pricing is performed using the Black method.
Each method takes a ResolvedFxVanillaOptionTrade, whereas application code will
typically work with FxVanillaOptionTrade. Call
FxVanillaOptionTrade::resolve(ReferenceData)
to convert FxVanillaOptionTrade to ResolvedFxVanillaOptionTrade.
| Modifier and Type | Field and Description |
|---|---|
static FxVanillaOptionTradeCalculations |
DEFAULT
Default implementation.
|
| Constructor and Description |
|---|
FxVanillaOptionTradeCalculations(BlackFxVanillaOptionTradePricer blackPricer,
VannaVolgaFxVanillaOptionTradePricer vannaVolgaPricer)
Creates an instance.
|
public static final FxVanillaOptionTradeCalculations DEFAULT
public FxVanillaOptionTradeCalculations(BlackFxVanillaOptionTradePricer blackPricer, VannaVolgaFxVanillaOptionTradePricer vannaVolgaPricer)
In most cases, applications should use the DEFAULT instance.
blackPricer - the pricer for ResolvedFxVanillaOptionTrade using BlackvannaVolgaPricer - the pricer for ResolvedFxVanillaOptionTrade using Vanna-Volgapublic MultiCurrencyScenarioArray presentValue(ResolvedFxVanillaOptionTrade trade, RatesMarketDataLookup ratesLookup, FxOptionMarketDataLookup fxLookup, ScenarioMarketData marketData, FxVanillaOptionMethod method)
trade - the traderatesLookup - the lookup used to query the market datafxLookup - the lookup used to query the option market datamarketData - the market datamethod - the pricing methodpublic MultiCurrencyAmount presentValue(ResolvedFxVanillaOptionTrade trade, RatesProvider ratesProvider, FxOptionVolatilities volatilities, FxVanillaOptionMethod method)
trade - the traderatesProvider - the market datavolatilities - the option volatilitiesmethod - the pricing methodpublic MultiCurrencyScenarioArray pv01RatesCalibratedSum(ResolvedFxVanillaOptionTrade trade, RatesMarketDataLookup ratesLookup, FxOptionMarketDataLookup fxLookup, ScenarioMarketData marketData, FxVanillaOptionMethod method)
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 market datafxLookup - the lookup used to query the option market datamarketData - the market datamethod - the pricing methodpublic MultiCurrencyAmount pv01RatesCalibratedSum(ResolvedFxVanillaOptionTrade trade, RatesProvider ratesProvider, FxOptionVolatilities volatilities, FxVanillaOptionMethod method)
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 volatilitiesmethod - the pricing methodpublic ScenarioArray<CurrencyParameterSensitivities> pv01RatesCalibratedBucketed(ResolvedFxVanillaOptionTrade trade, RatesMarketDataLookup ratesLookup, FxOptionMarketDataLookup fxLookup, ScenarioMarketData marketData, FxVanillaOptionMethod method)
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 market datafxLookup - the lookup used to query the option market datamarketData - the market datamethod - the pricing methodpublic CurrencyParameterSensitivities pv01RatesCalibratedBucketed(ResolvedFxVanillaOptionTrade trade, RatesProvider ratesProvider, FxOptionVolatilities volatilities, FxVanillaOptionMethod method)
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 volatilitiesmethod - the pricing methodpublic MultiCurrencyScenarioArray pv01RatesMarketQuoteSum(ResolvedFxVanillaOptionTrade trade, RatesMarketDataLookup ratesLookup, FxOptionMarketDataLookup fxLookup, ScenarioMarketData marketData, FxVanillaOptionMethod method)
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 market datafxLookup - the lookup used to query the option market datamarketData - the market datamethod - the pricing methodpublic MultiCurrencyAmount pv01RatesMarketQuoteSum(ResolvedFxVanillaOptionTrade trade, RatesProvider ratesProvider, FxOptionVolatilities volatilities, FxVanillaOptionMethod method)
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 volatilitiesmethod - the pricing methodpublic ScenarioArray<CurrencyParameterSensitivities> pv01RatesMarketQuoteBucketed(ResolvedFxVanillaOptionTrade trade, RatesMarketDataLookup ratesLookup, FxOptionMarketDataLookup fxLookup, ScenarioMarketData marketData, FxVanillaOptionMethod method)
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 market datamarketData - the market datafxLookup - the lookup used to query the option market datamethod - the pricing methodpublic CurrencyParameterSensitivities pv01RatesMarketQuoteBucketed(ResolvedFxVanillaOptionTrade trade, RatesProvider ratesProvider, FxOptionVolatilities volatilities, FxVanillaOptionMethod method)
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 volatilitiesmethod - the pricing methodpublic ScenarioArray<CurrencyParameterSensitivities> vegaMarketQuoteBucketed(ResolvedFxVanillaOptionTrade trade, RatesMarketDataLookup ratesLookup, FxOptionMarketDataLookup fxLookup, ScenarioMarketData marketData, FxVanillaOptionMethod method)
This is the sensitivity of present value to the implied volatilities used to calibrate the curves.
trade - the traderatesLookup - the lookup used to query the market datamarketData - the market datafxLookup - the lookup used to query the option market datamethod - the pricing methodpublic CurrencyParameterSensitivities vegaMarketQuoteBucketed(ResolvedFxVanillaOptionTrade trade, RatesProvider ratesProvider, FxOptionVolatilities volatilities, FxVanillaOptionMethod method)
This is the sensitivity of present value of the implied volatilities used to calibrate the curves.
trade - the traderatesProvider - the market datavolatilities - the option volatilitiesmethod - the pricing methodpublic MultiCurrencyScenarioArray currencyExposure(ResolvedFxVanillaOptionTrade trade, RatesMarketDataLookup ratesLookup, FxOptionMarketDataLookup fxLookup, ScenarioMarketData marketData, FxVanillaOptionMethod method)
The currency risk, expressed as the equivalent amount in each currency.
trade - the traderatesLookup - the lookup used to query the market datafxLookup - the lookup used to query the option market datamarketData - the market datamethod - the pricing methodpublic MultiCurrencyAmount currencyExposure(ResolvedFxVanillaOptionTrade trade, RatesProvider ratesProvider, FxOptionVolatilities volatilities, FxVanillaOptionMethod method)
The currency risk, expressed as the equivalent amount in each currency.
trade - the traderatesProvider - the market datavolatilities - the option volatilitiesmethod - the pricing methodpublic CurrencyScenarioArray currentCash(ResolvedFxVanillaOptionTrade trade, RatesMarketDataLookup ratesLookup, FxOptionMarketDataLookup fxLookup, ScenarioMarketData marketData, FxVanillaOptionMethod method)
The sum of all cash flows paid on the valuation date.
trade - the traderatesLookup - the lookup used to query the market datafxLookup - the lookup used to query the option market datamarketData - the market datamethod - the pricing methodpublic CurrencyAmount currentCash(ResolvedFxVanillaOptionTrade trade, RatesProvider ratesProvider, FxOptionVolatilities volatilities, FxVanillaOptionMethod method)
The sum of all cash flows paid on the valuation date.
trade - the traderatesProvider - the market datavolatilities - the option volatilitiesmethod - the pricing methodCopyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at strata.opengamma.io.