Class SurfaceIborCapletFloorletVolatilityBootstrapDefinition
- java.lang.Object
-
- com.opengamma.strata.pricer.capfloor.SurfaceIborCapletFloorletVolatilityBootstrapDefinition
-
- All Implemented Interfaces:
IborCapletFloorletVolatilityDefinition
,Serializable
,org.joda.beans.Bean
,org.joda.beans.ImmutableBean
public final class SurfaceIborCapletFloorletVolatilityBootstrapDefinition extends Object implements IborCapletFloorletVolatilityDefinition, org.joda.beans.ImmutableBean, Serializable
Definition of caplet volatilities calibration.This definition is used with
SurfaceIborCapletFloorletVolatilityBootstrapper
. The caplet volatilities are computed by bootstrap along the time direction, thus the interpolation and left extrapolation for the time dimension must be local. The resulting volatilities object will be a set of caplet volatilities interpolated byGridSurfaceInterpolator
.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
SurfaceIborCapletFloorletVolatilityBootstrapDefinition.Meta
The meta-bean forSurfaceIborCapletFloorletVolatilityBootstrapDefinition
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description SurfaceMetadata
createMetadata(RawOptionData capFloorData)
Creates surface metadata.boolean
equals(Object obj)
DayCount
getDayCount()
Gets the day count to measure the time in the expiry dimension.IborIndex
getIndex()
Gets the Ibor index.GridSurfaceInterpolator
getInterpolator()
Gets the interpolator for the caplet volatilities.IborCapletFloorletVolatilitiesName
getName()
Gets the name of the volatilities.Optional<Curve>
getShiftCurve()
Gets the shift parameter of shifted Black model.int
hashCode()
static SurfaceIborCapletFloorletVolatilityBootstrapDefinition.Meta
meta()
The meta-bean forSurfaceIborCapletFloorletVolatilityBootstrapDefinition
.SurfaceIborCapletFloorletVolatilityBootstrapDefinition.Meta
metaBean()
static SurfaceIborCapletFloorletVolatilityBootstrapDefinition
of(IborCapletFloorletVolatilitiesName name, IborIndex index, DayCount dayCount, CurveInterpolator timeInterpolator, CurveInterpolator strikeInterpolator)
Obtains an instance with time interpolator and strike interpolator.static SurfaceIborCapletFloorletVolatilityBootstrapDefinition
of(IborCapletFloorletVolatilitiesName name, IborIndex index, DayCount dayCount, CurveInterpolator timeInterpolator, CurveInterpolator strikeInterpolator, Curve shiftCurve)
Obtains an instance with time interpolator, strike interpolator and shift curve.static SurfaceIborCapletFloorletVolatilityBootstrapDefinition
of(IborCapletFloorletVolatilitiesName name, IborIndex index, DayCount dayCount, GridSurfaceInterpolator interpolator)
Obtains an instance with gird surface interpolator.static SurfaceIborCapletFloorletVolatilityBootstrapDefinition
of(IborCapletFloorletVolatilitiesName name, IborIndex index, DayCount dayCount, GridSurfaceInterpolator interpolator, Curve shiftCurve)
Obtains an instance with gird surface interpolator and shift curve.String
toString()
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.opengamma.strata.pricer.capfloor.IborCapletFloorletVolatilityDefinition
createCap
-
-
-
-
Method Detail
-
of
public static SurfaceIborCapletFloorletVolatilityBootstrapDefinition of(IborCapletFloorletVolatilitiesName name, IborIndex index, DayCount dayCount, GridSurfaceInterpolator interpolator)
Obtains an instance with gird surface interpolator.- Parameters:
name
- the name of the volatilitiesindex
- the Ibor indexdayCount
- the day count to useinterpolator
- the surface interpolator- Returns:
- the instance
-
of
public static SurfaceIborCapletFloorletVolatilityBootstrapDefinition of(IborCapletFloorletVolatilitiesName name, IborIndex index, DayCount dayCount, GridSurfaceInterpolator interpolator, Curve shiftCurve)
Obtains an instance with gird surface interpolator and shift curve.- Parameters:
name
- the name of the volatilitiesindex
- the Ibor indexdayCount
- the day count to useinterpolator
- the surface interpolatorshiftCurve
- the shift curve- Returns:
- the instance
-
of
public static SurfaceIborCapletFloorletVolatilityBootstrapDefinition of(IborCapletFloorletVolatilitiesName name, IborIndex index, DayCount dayCount, CurveInterpolator timeInterpolator, CurveInterpolator strikeInterpolator)
Obtains an instance with time interpolator and strike interpolator.The extrapolation is completed by default extrapolators in
GridSurfaceInterpolator
.- Parameters:
name
- the name of the volatilitiesindex
- the Ibor indexdayCount
- the day count to usetimeInterpolator
- the time interpolatorstrikeInterpolator
- the strike interpolator- Returns:
- the instance
-
of
public static SurfaceIborCapletFloorletVolatilityBootstrapDefinition of(IborCapletFloorletVolatilitiesName name, IborIndex index, DayCount dayCount, CurveInterpolator timeInterpolator, CurveInterpolator strikeInterpolator, Curve shiftCurve)
Obtains an instance with time interpolator, strike interpolator and shift curve.The extrapolation is completed by default extrapolators in
GridSurfaceInterpolator
.- Parameters:
name
- the name of the volatilitiesindex
- the Ibor indexdayCount
- the day count to usetimeInterpolator
- the time interpolatorstrikeInterpolator
- the strike interpolatorshiftCurve
- the shift curve- Returns:
- the instance
-
createMetadata
public SurfaceMetadata createMetadata(RawOptionData capFloorData)
Description copied from interface:IborCapletFloorletVolatilityDefinition
Creates surface metadata.- Specified by:
createMetadata
in interfaceIborCapletFloorletVolatilityDefinition
- Parameters:
capFloorData
- the cap/floor data- Returns:
- the surface metadata
-
meta
public static SurfaceIborCapletFloorletVolatilityBootstrapDefinition.Meta meta()
The meta-bean forSurfaceIborCapletFloorletVolatilityBootstrapDefinition
.- Returns:
- the meta-bean, not null
-
metaBean
public SurfaceIborCapletFloorletVolatilityBootstrapDefinition.Meta metaBean()
- Specified by:
metaBean
in interfaceorg.joda.beans.Bean
-
getName
public IborCapletFloorletVolatilitiesName getName()
Gets the name of the volatilities.- Specified by:
getName
in interfaceIborCapletFloorletVolatilityDefinition
- Returns:
- the value of the property, not null
-
getIndex
public IborIndex getIndex()
Gets the Ibor index.- Specified by:
getIndex
in interfaceIborCapletFloorletVolatilityDefinition
- Returns:
- the value of the property, not null
-
getDayCount
public DayCount getDayCount()
Gets the day count to measure the time in the expiry dimension.- Specified by:
getDayCount
in interfaceIborCapletFloorletVolatilityDefinition
- Returns:
- the value of the property, not null
-
getInterpolator
public GridSurfaceInterpolator getInterpolator()
Gets the interpolator for the caplet volatilities.- Returns:
- the value of the property, not null
-
getShiftCurve
public Optional<Curve> getShiftCurve()
Gets the shift parameter of shifted Black model.The market volatilities are calibrated to shifted Black model if this field is not null.
- Returns:
- the optional value of the property, not null
-
-