Uses of Interface
net.finmath.singleswaprate.model.VolatilityCubeModel
Packages that use VolatilityCubeModel
Package
Description
Contains all classes related to interest rate derivatives, which are evaluated by a change of measure to the annuity measure of a single swap rate.
Classes providing options for the annuity mapping function.
Classes providing calibration to market data of volatility cubes.
Provides classes to store and interact with market data.
Classes extending the regular analytic model, see
net.finmath.marketdata.model, with the capacity to hold volatility cubes,
see VolatilityCube.Provides interface specification and implementation of volatility cubes, as well as a factory to create these, either via calibration from market data or construction
from parameters.
Provides interface specification and implementation of product based on a single interest rate curve.
-
Uses of VolatilityCubeModel in net.finmath.singleswaprate
Methods in net.finmath.singleswaprate with parameters of type VolatilityCubeModelModifier and TypeMethodDescriptionstatic SwaptionDataLatticeUtils.convertCashLatticeToNormalVolatility(SwaptionDataLattice cashLattice, VolatilityCubeModel model)Convert a lattice containing cash settled swaption prices to payer normal volatilities.static SwaptionDataLatticeUtils.shiftCashToPhysicalSmile(VolatilityCubeModel model, SwaptionDataLattice physicalSwaptions, SwaptionDataLattice... cashSwaptions)Create smiles for physically settled swaptions by shifting the smiles from cash settled swaptions onto atm levels of physically settled swaptions. -
Uses of VolatilityCubeModel in net.finmath.singleswaprate.annuitymapping
Methods in net.finmath.singleswaprate.annuitymapping with parameters of type VolatilityCubeModelModifier and TypeMethodDescriptionAnnuityMappingFactory.build(AnnuityMapping.AnnuityMappingType type, VolatilityCubeModel model)Build the annuity mapping.static AnnuityMappingAnnuityMappingFactory.buildAnnuityMapping(double strike, Schedule fixSchedule, Schedule floatSchedule, String discountCurveName, String forwardCurveName, String volatilityCubeName, AnnuityMapping.AnnuityMappingType type, VolatilityCubeModel model)Build an annuity mapping.static AnnuityMappingAnnuityMappingFactory.buildAnnuityMapping(double strike, Schedule fixSchedule, Schedule floatSchedule, String discountCurveName, String forwardCurveName, String volatilityCubeName, AnnuityMapping.AnnuityMappingType type, VolatilityCubeModel model, double lowerBound, double upperBound, int numberOfEvaluationPoints)Build an annuity mapping.Constructors in net.finmath.singleswaprate.annuitymapping with parameters of type VolatilityCubeModelModifierConstructorDescriptionBasicPiterbargAnnuityMapping(Schedule fixSchedule, Schedule floatSchedule, double strike, VolatilityCubeModel model, String discountCurveName, String volatilityCubeName)Create the annuity mapping.BasicPiterbargAnnuityMapping(Schedule fixSchedule, Schedule floatSchedule, double strike, VolatilityCubeModel model, String discountCurveName, String volatilityCubeName, double lowerBound, double upperBound, int numberOfEvaluationPoints)Create the annuity mapping.BasicPiterbargAnnuityMapping(Schedule fixSchedule, Schedule floatSchedule, VolatilityCubeModel model, String discountCurveName, String volatilityCubeName)Create the annuity mapping.ExponentialNormalizer(Schedule fixSchedule, Schedule floatSchedule, String discountCurveName, String forwardCurveName, String volatilityCubeName, VolatilityCubeModel model)Create the exponential normalizer from information of the product.MultiPiterbargAnnuityMapping(Schedule fixSchedule, Schedule floatSchedule, double strike, VolatilityCubeModel model, String discountCurveName, String forwardCurveName, String volatilityCubeName, double lowerBound, double upperBound, int numberOfEvaluationPoints)Create the annuity mapping.MultiPiterbargAnnuityMapping(Schedule fixSchedule, Schedule floatSchedule, VolatilityCubeModel model, String discountCurveName, String forwardCurveName, String volatilityCubeName)Create the annuity mapping. -
Uses of VolatilityCubeModel in net.finmath.singleswaprate.calibration
Methods in net.finmath.singleswaprate.calibration that return VolatilityCubeModelConstructors in net.finmath.singleswaprate.calibration with parameters of type VolatilityCubeModelModifierConstructorDescriptionAbstractCubeCalibration(LocalDate referenceDate, SwaptionDataLattice cashPayerPremiums, SwaptionDataLattice cashReceiverPremiums, VolatilityCubeModel model, AnnuityMapping.AnnuityMappingType annuityMappingType)Create the calibrator.SABRCubeCalibration(LocalDate referenceDate, SwaptionDataLattice cashPayerPremiums, SwaptionDataLattice cashReceiverPremiums, SwaptionDataLattice physicalPremiumsATM, VolatilityCubeModel model, AnnuityMapping.AnnuityMappingType annuityMappingType)Create the calibrator.SABRCubeCalibration(LocalDate referenceDate, SwaptionDataLattice cashPayerPremiums, SwaptionDataLattice cashReceiverPremiums, SwaptionDataLattice physicalPremiumsATM, VolatilityCubeModel model, AnnuityMapping.AnnuityMappingType annuityMappingType, double sabrDisplacement, double sabrBeta, double correlationDecay, double iborOisDecorrelation)Create the calibrator.SABRCubeParallelCalibration(LocalDate referenceDate, SwaptionDataLattice cashPayerPremiums, SwaptionDataLattice cashReceiverPremiums, SwaptionDataLattice physicalATMSwaptions, VolatilityCubeModel model, AnnuityMapping.AnnuityMappingType annuityMappingType)Create the calibrator.StaticCubeCalibration(LocalDate referenceDate, SwaptionDataLattice cashPayerPremiums, SwaptionDataLattice cashReceiverPremiums, VolatilityCubeModel model, AnnuityMapping.AnnuityMappingType annuityMappingType)Create the calibrator.StaticCubeCalibration(LocalDate referenceDate, SwaptionDataLattice cashPayerPremiums, SwaptionDataLattice cashReceiverPremiums, VolatilityCubeModel model, AnnuityMapping.AnnuityMappingType annuityMappingType, double initialValue, double initialCorrelationDecay)Create the calibrator. -
Uses of VolatilityCubeModel in net.finmath.singleswaprate.data
Methods in net.finmath.singleswaprate.data with parameters of type VolatilityCubeModelModifier and TypeMethodDescriptionvoidErrorEstimation.evaluate(SwaptionDataLattice nodes, VolatilityCubeModel model)Evaluate the market data against the model.doubleErrorEstimation.getCashAverageError(int maturity, int termination, VolatilityCubeModel model)Get the average error in cash settled swaption premiums at a specific node on the tenor grid.doubleErrorEstimation.getCashAverageErrorPercent(int maturity, int termination, VolatilityCubeModel model)Get the average error in cash settled swaption premiums, in percent difference from the market data at a specific node on the tenor grid.doubleErrorEstimation.getCashMaxError(int maturity, int termination, VolatilityCubeModel model)Get the maximal error in cash settled swaption premiums at a specific node on the tenor grid.doubleErrorEstimation.getCashMaxErrorPercent(int maturity, int termination, VolatilityCubeModel model)Get the maximal error in cash settled swaption premiums, in percent difference from the market data at a specific node on the tenor grid. -
Uses of VolatilityCubeModel in net.finmath.singleswaprate.model
Classes in net.finmath.singleswaprate.model that implement VolatilityCubeModelModifier and TypeClassDescriptionclassImplementation ofVolatilityCubeModelbased onAnalyticModelFromCurvesAndVols.Methods in net.finmath.singleswaprate.model that return VolatilityCubeModelModifier and TypeMethodDescriptionAnalyticModelWithVolatilityCubes.addVolatilityCube(String volatilityCubeName, VolatilityCube volatilityCube)AnalyticModelWithVolatilityCubes.addVolatilityCube(VolatilityCube volatilityCube)VolatilityCubeModel.addVolatilityCube(String volatilityCubeName, VolatilityCube volatilityCube)Add a reference to the given volatility cube to this model under the name provided.VolatilityCubeModel.addVolatilityCube(VolatilityCube volatilityCube)Add a reference to the given volatility cube to this model. -
Uses of VolatilityCubeModel in net.finmath.singleswaprate.model.volatilities
Methods in net.finmath.singleswaprate.model.volatilities with parameters of type VolatilityCubeModelModifier and TypeMethodDescriptionVolatilityCubeFactory.buildParallelSABRCube(String name, double rho, double volvol, SwaptionDataLattice physicalATMSwaptions, VolatilityCubeModel model)Build aSABRVolatilityCubeParallelfrom parameters viaSABRVolatilityCubeParallelFactory.VolatilityCubeFactory.buildSABRVolatilityCube(String name, VolatilityCubeModel model, int[] terminations)Build aSABRVolatilityCubeby calibration viaSABRCubeCalibration.VolatilityCubeFactory.buildSABRVolatilityCube(String name, VolatilityCubeModel model, int[] terminations, DataTable initialRhos, DataTable initialBaseVols, DataTable initialVolvols)Build aSABRVolatilityCubeby calibration viaSABRCubeCalibration.VolatilityCubeFactory.buildShiftedSmileSABRCube(String name, VolatilityCubeModel model)Build aSABRVolatilityCubeby calibration viaSABRShiftedSmileCalibration.static SABRVolatilityCubeParallelSABRVolatilityCubeParallelFactory.createSABRVolatilityCubeParallel(String cubeName, LocalDate referenceDate, SchedulePrototype fixMetaSchedule, SchedulePrototype floatMetaSchedule, double sabrDisplacement, double sabrBeta, double sabrRho, double sabrVolvol, double correlationDecay, double iborOisDecorrelation, SwaptionDataLattice physicalATMSwaptions, VolatilityCubeModel model, String forwardCurveName)Build aSABRVolatilityCubeParallelfrom given shared parameters and marketdata.doubleSABRVolatilityCube.getLowestStrike(VolatilityCubeModel model)doubleSABRVolatilityCubeParallel.getLowestStrike(VolatilityCubeModel model)doubleSABRVolatilityCubeSingleSmile.getLowestStrike(VolatilityCubeModel model)doubleScaledVolatilityCube.getLowestStrike(VolatilityCubeModel model)doubleStaticVolatilityCube.getLowestStrike(VolatilityCubeModel model)doubleVolatilityCube.getLowestStrike(VolatilityCubeModel model)Returns the lowest possible value of strike that can be evaluated by this cube.doubleVolVolCube.getLowestStrike(VolatilityCubeModel model)doubleSABRVolatilityCube.getValue(VolatilityCubeModel model, double termination, double maturity, double strike, VolatilitySurface.QuotingConvention quotingConvention)doubleSABRVolatilityCubeParallel.getValue(VolatilityCubeModel model, double termination, double maturity, double strike, VolatilitySurface.QuotingConvention quotingConvention)doubleSABRVolatilityCubeSingleSmile.getValue(VolatilityCubeModel model, double termination, double maturity, double strike, VolatilitySurface.QuotingConvention quotingConvention)doubleScaledVolatilityCube.getValue(VolatilityCubeModel model, double termination, double maturity, double strike, VolatilitySurface.QuotingConvention quotingConvention)doubleStaticVolatilityCube.getValue(VolatilityCubeModel model, double termination, double maturity, double strike, VolatilitySurface.QuotingConvention quotingConvention)doubleVolatilityCube.getValue(VolatilityCubeModel model, double termination, double maturity, double strike, VolatilitySurface.QuotingConvention quotingConvention)Return the volatility at the specified coordinates in the desired quotation.doubleVolVolCube.getValue(VolatilityCubeModel model, double termination, double maturity, double strike, VolatilitySurface.QuotingConvention quotingConvention) -
Uses of VolatilityCubeModel in net.finmath.singleswaprate.products
Methods in net.finmath.singleswaprate.products with parameters of type VolatilityCubeModelModifier and TypeMethodDescriptionprotected abstract AnnuityMappingAbstractSingleSwapRateProduct.buildAnnuityMapping(VolatilityCubeModel model)Since most annuity mappings require data from models to be created, but models are only provided at execution ofgetValue, the product needs to dynamically be able to build its annuity mapping.protected AnnuityMappingAnnuityDummyProduct.buildAnnuityMapping(VolatilityCubeModel model)protected AnnuityMappingCashSettledPayerSwaption.buildAnnuityMapping(VolatilityCubeModel model)protected AnnuityMappingCashSettledReceiverSwaption.buildAnnuityMapping(VolatilityCubeModel model)protected AnnuityMappingConstantMaturitySwap.buildAnnuityMapping(VolatilityCubeModel model)protected AnnuityMappingNormalizingDummyProduct.buildAnnuityMapping(VolatilityCubeModel model)doubleAbstractAnalyticVolatilityCubeProduct.getValue(VolatilityCubeModel model)Return the valuation of the product at time 0 using the given model.doubleAbstractSingleSwapRateProduct.getValue(double evaluationTime, AnnuityMapping annuityMapping, VolatilityCubeModel model)Return the valuation of the product using the given model.doubleAbstractSingleSwapRateProduct.getValue(double evaluationTime, VolatilityCubeModel model)doubleAnalyticVolatilityCubeProduct.getValue(double evaluationTime, VolatilityCubeModel model)Return the valuation of the product using the given model.protected abstract doubleAbstractSingleSwapRateProduct.hedgeWeight(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)Essentially the second derivative of the payoff function.protected doubleAnnuityDummyProduct.hedgeWeight(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleCashSettledPayerSwaption.hedgeWeight(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleCashSettledReceiverSwaption.hedgeWeight(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleConstantMaturitySwap.hedgeWeight(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleNormalizingDummyProduct.hedgeWeight(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected abstract doubleAbstractSingleSwapRateProduct.payoffFunction(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)Payoff function of the product.protected doubleAnnuityDummyProduct.payoffFunction(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleCashSettledPayerSwaption.payoffFunction(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleCashSettledReceiverSwaption.payoffFunction(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleConstantMaturitySwap.payoffFunction(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleNormalizingDummyProduct.payoffFunction(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected abstract doubleAbstractSingleSwapRateProduct.singularAddon(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)As some products have a portion of their weight in a singular point, this is portion is split off from thehedgeweightand added after the integration.protected doubleAnnuityDummyProduct.singularAddon(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleCashSettledPayerSwaption.singularAddon(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleCashSettledReceiverSwaption.singularAddon(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleConstantMaturitySwap.singularAddon(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleNormalizingDummyProduct.singularAddon(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)protected doubleAbstractSingleSwapRateProduct.valueCall(double optionStrike, VolatilityCubeModel model, double swapRate)Value of a call option on the swap rate.protected doubleAbstractSingleSwapRateProduct.valuePut(double optionStrike, VolatilityCubeModel model, double swapRate)Value of a put option on the swap rate.