finMath lib documentation
net.finmath.singleswaprate.annuitymapping

## Class MultiPiterbargAnnuityMapping

• java.lang.Object
• net.finmath.singleswaprate.annuitymapping.MultiPiterbargAnnuityMapping
• All Implemented Interfaces:
AnnuityMapping

public class MultiPiterbargAnnuityMapping
extends Object
implements AnnuityMapping
Implements an annuity mapping following Vladimir Piterbarg's approach.
Author:
Christian Fries, Roland Bachl

• ### Nested classes/interfaces inherited from interface net.finmath.singleswaprate.annuitymapping.AnnuityMapping

AnnuityMapping.AnnuityMappingType
• ### Constructor Summary

Constructors
Constructor and Description
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.
• ### Method Summary

All Methods
Modifier and Type Method and Description
double getFirstDerivative(double swapRate)
Return the first derivative of the annuity mapping for the given swap rate.
double getSecondDerivative(double swapRate)
Return the second derivative of the annuity mapping for the given swap rate.
double getValue(double swapRate)
Return the value the fraction of annuities take, when the realized swap rate meets the given swap rate.
• ### Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
• ### Constructor Detail

• #### MultiPiterbargAnnuityMapping

public MultiPiterbargAnnuityMapping(Schedule fixSchedule,
Schedule floatSchedule,
VolatilityCubeModel model,
String discountCurveName,
String forwardCurveName,
String volatilityCubeName)
Create the annuity mapping. When used without strike the volatilities are taken out of the cube at par swap rate.
Parameters:
fixSchedule - Fix leg schedule of the swap.
floatSchedule - Float leg schedule of the swap.
model - The model containing curve and cube.
discountCurveName - The name of the discount curve.
forwardCurveName - The name of the forward curve.
volatilityCubeName - The name of the volatility cube.
• #### MultiPiterbargAnnuityMapping

public 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.
Parameters:
fixSchedule - Fix leg schedule of the swap.
floatSchedule - Float leg schedule of the swap.
strike - The strike of the product this annuity mapping is being created for.
model - The model containing curve and cube.
discountCurveName - The name of the discount curve.
forwardCurveName - The name of the forward curve.
volatilityCubeName - The name of the volatility cube.
lowerBound - The lowest strike the Piterbarg annuity mapping may use during replication, when normalizing.
upperBound - The maximum strike the Piterbarg annuity mapping may use during replication, when normalizing.
numberOfEvaluationPoints - The number of points the replication may evaluate Piterbarg annuity mapping is normalizing.
• ### Method Detail

• #### getValue

public double getValue(double swapRate)
Description copied from interface: AnnuityMapping
Return the value the fraction of annuities take, when the realized swap rate meets the given swap rate.
Specified by:
getValue in interface AnnuityMapping
Parameters:
swapRate - The swap rate at which to evaluate the annuity mapping.
Returns:
The value of the annuity mapping.
• #### getFirstDerivative

public double getFirstDerivative(double swapRate)
Description copied from interface: AnnuityMapping
Return the first derivative of the annuity mapping for the given swap rate.
Specified by:
getFirstDerivative in interface AnnuityMapping
Parameters:
swapRate - The swap rate at which to evaluate the annuity mapping.
Returns:
The first derivative of the annuity mapping.
• #### getSecondDerivative

public double getSecondDerivative(double swapRate)
Description copied from interface: AnnuityMapping
Return the second derivative of the annuity mapping for the given swap rate.
Specified by:
getSecondDerivative in interface AnnuityMapping
Parameters:
swapRate - The swap rate at which to evaluate the annuity mapping.
Returns:
The second derivative of the annuity mapping.