Class SwaptionTradeCalculations
- java.lang.Object
-
- com.opengamma.strata.measure.swaption.SwaptionTradeCalculations
-
public class SwaptionTradeCalculations extends Object
Calculates pricing and risk measures for swaption trades.This provides a high-level entry point for swaption pricing and risk measures.
Each method takes a
ResolvedSwaptionTrade
, whereas application code will typically work withSwaptionTrade
. CallSwaptionTrade::resolve(ReferenceData)
to convertSwaptionTrade
toResolvedSwaptionTrade
.
-
-
Field Summary
Fields Modifier and Type Field Description static SwaptionTradeCalculations
DEFAULT
Default implementation.
-
Constructor Summary
Constructors Constructor Description SwaptionTradeCalculations(VolatilitySwaptionTradePricer tradePricer, SabrSwaptionTradePricer sabrTradePricer)
Creates an instance.
-
Method Summary
-
-
-
Field Detail
-
DEFAULT
public static final SwaptionTradeCalculations DEFAULT
Default implementation.
-
-
Constructor Detail
-
SwaptionTradeCalculations
public SwaptionTradeCalculations(VolatilitySwaptionTradePricer tradePricer, SabrSwaptionTradePricer sabrTradePricer)
Creates an instance.In most cases, applications should use the
DEFAULT
instance.- Parameters:
tradePricer
- the pricer forResolvedSwaptionTrade
sabrTradePricer
- the pricer forResolvedSwaptionTrade
SABR
-
-
Method Detail
-
presentValue
public CurrencyScenarioArray presentValue(ResolvedSwaptionTrade trade, RatesMarketDataLookup ratesLookup, SwaptionMarketDataLookup swaptionLookup, ScenarioMarketData marketData)
Calculates present value across one or more scenarios.- Parameters:
trade
- the traderatesLookup
- the lookup used to query the market dataswaptionLookup
- the lookup used to query the swaption market datamarketData
- the market data- Returns:
- the present value, one entry per scenario
-
presentValue
public CurrencyAmount presentValue(ResolvedSwaptionTrade trade, RatesProvider ratesProvider, SwaptionVolatilities volatilities)
Calculates present value for a single set of market data.- Parameters:
trade
- the traderatesProvider
- the market datavolatilities
- the swaption volatilities- Returns:
- the present value
-
pv01RatesCalibratedSum
public MultiCurrencyScenarioArray pv01RatesCalibratedSum(ResolvedSwaptionTrade trade, RatesMarketDataLookup ratesLookup, SwaptionMarketDataLookup swaptionLookup, ScenarioMarketData marketData)
Calculates present value sensitivity across one or more scenarios.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.
- Parameters:
trade
- the traderatesLookup
- the lookup used to query the market dataswaptionLookup
- the lookup used to query the swaption market datamarketData
- the market data- Returns:
- the present value sensitivity, one entry per scenario
-
pv01RatesCalibratedSum
public MultiCurrencyAmount pv01RatesCalibratedSum(ResolvedSwaptionTrade trade, RatesProvider ratesProvider, SwaptionVolatilities volatilities)
Calculates present value sensitivity for a single set of market data.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.
- Parameters:
trade
- the traderatesProvider
- the market datavolatilities
- the swaption volatilities- Returns:
- the present value sensitivity
-
pv01RatesCalibratedBucketed
public ScenarioArray<CurrencyParameterSensitivities> pv01RatesCalibratedBucketed(ResolvedSwaptionTrade trade, RatesMarketDataLookup ratesLookup, SwaptionMarketDataLookup swaptionLookup, ScenarioMarketData marketData)
Calculates present value sensitivity across one or more scenarios.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.
- Parameters:
trade
- the traderatesLookup
- the lookup used to query the market dataswaptionLookup
- the lookup used to query the swaption market datamarketData
- the market data- Returns:
- the present value sensitivity, one entry per scenario
-
pv01RatesCalibratedBucketed
public CurrencyParameterSensitivities pv01RatesCalibratedBucketed(ResolvedSwaptionTrade trade, RatesProvider ratesProvider, SwaptionVolatilities volatilities)
Calculates present value sensitivity for a single set of market data.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.
- Parameters:
trade
- the traderatesProvider
- the market datavolatilities
- the swaption volatilities- Returns:
- the present value sensitivity
-
pv01RatesMarketQuoteSum
public MultiCurrencyScenarioArray pv01RatesMarketQuoteSum(ResolvedSwaptionTrade trade, RatesMarketDataLookup ratesLookup, SwaptionMarketDataLookup swaptionLookup, ScenarioMarketData marketData)
Calculates present value sensitivity across one or more scenarios.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.
- Parameters:
trade
- the traderatesLookup
- the lookup used to query the market dataswaptionLookup
- the lookup used to query the swaption market datamarketData
- the market data- Returns:
- the present value sensitivity, one entry per scenario
-
pv01RatesMarketQuoteSum
public MultiCurrencyAmount pv01RatesMarketQuoteSum(ResolvedSwaptionTrade trade, RatesProvider ratesProvider, SwaptionVolatilities volatilities)
Calculates present value sensitivity for a single set of market data.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.
- Parameters:
trade
- the traderatesProvider
- the market datavolatilities
- the swaption volatilities- Returns:
- the present value sensitivity
-
pv01RatesMarketQuoteBucketed
public ScenarioArray<CurrencyParameterSensitivities> pv01RatesMarketQuoteBucketed(ResolvedSwaptionTrade trade, RatesMarketDataLookup ratesLookup, SwaptionMarketDataLookup swaptionLookup, ScenarioMarketData marketData)
Calculates present value sensitivity across one or more scenarios.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.
- Parameters:
trade
- the traderatesLookup
- the lookup used to query the market datamarketData
- the market dataswaptionLookup
- the lookup used to query the swaption market data- Returns:
- the present value sensitivity, one entry per scenario
-
pv01RatesMarketQuoteBucketed
public CurrencyParameterSensitivities pv01RatesMarketQuoteBucketed(ResolvedSwaptionTrade trade, RatesProvider ratesProvider, SwaptionVolatilities volatilities)
Calculates present value sensitivity for a single set of market data.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.
- Parameters:
trade
- the traderatesProvider
- the market datavolatilities
- the swaption volatilities- Returns:
- the present value sensitivity
-
vegaMarketQuoteBucketed
public ScenarioArray<CurrencyParameterSensitivities> vegaMarketQuoteBucketed(ResolvedSwaptionTrade trade, RatesMarketDataLookup ratesLookup, SwaptionMarketDataLookup swaptionLookup, ScenarioMarketData marketData)
Calculates present value vega sensitivity across one or more scenarios.This is the sensitivity of present value to the normal implied volatilities used to calibrate the curves.
- Parameters:
trade
- the traderatesLookup
- the lookup used to query the market datamarketData
- the market dataswaptionLookup
- the lookup used to query the swaption market data- Returns:
- the present value sensitivity, one entry per scenario
-
vegaMarketQuoteBucketed
public CurrencyParameterSensitivities vegaMarketQuoteBucketed(ResolvedSwaptionTrade trade, RatesProvider ratesProvider, SwaptionVolatilities volatilities)
Calculates present value vega sensitivity for a single set of market data.This is the sensitivity of present value of the normal implied volatilities used to calibrate the curves.
- Parameters:
trade
- the traderatesProvider
- the market datavolatilities
- the swaption volatilities- Returns:
- the present value sensitivity
-
currencyExposure
public MultiCurrencyScenarioArray currencyExposure(ResolvedSwaptionTrade trade, RatesMarketDataLookup ratesLookup, SwaptionMarketDataLookup swaptionLookup, ScenarioMarketData marketData)
Calculates currency exposure across one or more scenarios.The currency risk, expressed as the equivalent amount in each currency.
- Parameters:
trade
- the traderatesLookup
- the lookup used to query the market dataswaptionLookup
- the lookup used to query the swaption market datamarketData
- the market data- Returns:
- the currency exposure, one entry per scenario
-
currencyExposure
public MultiCurrencyAmount currencyExposure(ResolvedSwaptionTrade trade, RatesProvider ratesProvider, SwaptionVolatilities volatilities)
Calculates currency exposure for a single set of market data.The currency risk, expressed as the equivalent amount in each currency.
- Parameters:
trade
- the traderatesProvider
- the market datavolatilities
- the swaption volatilities- Returns:
- the currency exposure
-
currentCash
public CurrencyScenarioArray currentCash(ResolvedSwaptionTrade trade, RatesMarketDataLookup ratesLookup, SwaptionMarketDataLookup swaptionLookup, ScenarioMarketData marketData)
Calculates current cash across one or more scenarios.The sum of all cash flows paid on the valuation date.
- Parameters:
trade
- the traderatesLookup
- the lookup used to query the market dataswaptionLookup
- the lookup used to query the swaption market datamarketData
- the market data- Returns:
- the current cash, one entry per scenario
-
currentCash
public CurrencyAmount currentCash(ResolvedSwaptionTrade trade, RatesProvider ratesProvider, SwaptionVolatilities volatilities)
Calculates current cash for a single set of market data.The sum of all cash flows paid on the valuation date.
- Parameters:
trade
- the traderatesProvider
- the market datavolatilities
- the swaption volatilities- Returns:
- the current cash
-
-