java.lang.Object
net.finmath.singleswaprate.products.AbstractAnalyticVolatilityCubeProduct
net.finmath.singleswaprate.products.AbstractSingleSwapRateProduct
net.finmath.singleswaprate.products.CashSettledPayerSwaption
- All Implemented Interfaces:
- AnalyticProduct,- Product,- AnalyticVolatilityCubeProduct
A European cash settled payer swaption.
- Author:
- Christian Fries, Roland Bachl
- 
Constructor SummaryConstructorsConstructorDescriptionCashSettledPayerSwaption(Schedule fixSchedule, Schedule floatSchedule, double strike, String discountCurveName, String forwardCurveName, String volatilityCubeName, AnnuityMapping.AnnuityMappingType annuityMappingType)Create the product.CashSettledPayerSwaption(Schedule fixSchedule, Schedule floatSchedule, double strike, String discountCurveName, String forwardCurveName, String volatilityCubeName, AnnuityMapping.AnnuityMappingType annuityMappingType, double replicationLowerBound, double replicationUpperBound, int replicationNumberOfEvaluationPoints)Create the product with custom replication settings.
- 
Method SummaryModifier and TypeMethodDescriptionprotected AnnuityMappingSince 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 doublehedgeWeight(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)Essentially the second derivative of the payoff function.protected doublepayoffFunction(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)Payoff function of the product.protected doublesingularAddon(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.Methods inherited from class net.finmath.singleswaprate.products.AbstractSingleSwapRateProductgetDiscountCurveName, getFixSchedule, getFloatSchedule, getForwardCurveName, getIntegrationLowerBound, getIntegrationNumberOfEvaluationPoints, getIntegrationUpperBound, getValue, getValue, getVolatilityCubeName, setIntegrationParameters, valueCall, valuePutMethods inherited from class net.finmath.singleswaprate.products.AbstractAnalyticVolatilityCubeProductgetValue, getValue, getValue
- 
Constructor Details- 
CashSettledPayerSwaptionpublic CashSettledPayerSwaption(Schedule fixSchedule, Schedule floatSchedule, double strike, String discountCurveName, String forwardCurveName, String volatilityCubeName, AnnuityMapping.AnnuityMappingType annuityMappingType)Create the product.- Parameters:
- fixSchedule- The fix schedule of the swap.
- floatSchedule- The float schedule of the swap.
- strike- The strike of the option.
- discountCurveName- The name of the discount curve.
- forwardCurveName- The name of the forward curve.
- volatilityCubeName- The name of the volatility cube.
- annuityMappingType- The type of annuity mapping to be used for evaluation.
 
- 
CashSettledPayerSwaptionpublic CashSettledPayerSwaption(Schedule fixSchedule, Schedule floatSchedule, double strike, String discountCurveName, String forwardCurveName, String volatilityCubeName, AnnuityMapping.AnnuityMappingType annuityMappingType, double replicationLowerBound, double replicationUpperBound, int replicationNumberOfEvaluationPoints)Create the product with custom replication settings.- Parameters:
- fixSchedule- The fix schedule of the swap.
- floatSchedule- The float schedule of the swap.
- strike- The strike of the option.
- discountCurveName- The name of the discount curve.
- forwardCurveName- The name of the forward curve.
- volatilityCubeName- The name of the volatility cube.
- annuityMappingType- The type of annuity mapping to be used for evaluation.
- replicationLowerBound- The lowest strike the replication may use.
- replicationUpperBound- The largest strike the replication may use.
- replicationNumberOfEvaluationPoints- The number of points the replication may evaluate.
 
 
- 
- 
Method Details- 
payoffFunctionprotected double payoffFunction(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)Description copied from class:AbstractSingleSwapRateProductPayoff function of the product. Dependent only on the swap rate.- Specified by:
- payoffFunctionin class- AbstractSingleSwapRateProduct
- Parameters:
- swapRate- The swap rate.
- annuityMapping- The annuity mapping to use.
- model- The model for context.
- Returns:
- The payoff of the product.
 
- 
hedgeWeightprotected double hedgeWeight(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)Description copied from class:AbstractSingleSwapRateProductEssentially the second derivative of the payoff function. The hedgeweight determines the weight of the puts and calls under the integral when replicating.- Specified by:
- hedgeWeightin class- AbstractSingleSwapRateProduct
- Parameters:
- swapRate- The swap rate.
- annuityMapping- The annuity mapping to use.
- model- The model for context.
- Returns:
- The weight during replication.
 
- 
singularAddonprotected double singularAddon(double swapRate, AnnuityMapping annuityMapping, VolatilityCubeModel model)Description copied from class:AbstractSingleSwapRateProductAs some products have a portion of their weight in a singular point, this is portion is split off from thehedgeweightand added after the integration.- Specified by:
- singularAddonin class- AbstractSingleSwapRateProduct
- Parameters:
- swapRate- The swap rate.
- annuityMapping- The annuity mapping to use.
- model- The model for context.
- Returns:
- The singular addon.
 
- 
buildAnnuityMappingDescription copied from class:AbstractSingleSwapRateProductSince 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. This method may be left to returnnull, if the product requires no annuity mapping or is intended to always receive an annuity mapping for evaluation.- Specified by:
- buildAnnuityMappingin class- AbstractSingleSwapRateProduct
- Parameters:
- model- The model for context.
- Returns:
- The annuity mapping.
 
 
-