Class IsdaCreditCurveDefinition
- java.lang.Object
-
- com.opengamma.strata.market.curve.IsdaCreditCurveDefinition
-
- All Implemented Interfaces:
Serializable
,org.joda.beans.Bean
,org.joda.beans.ImmutableBean
public final class IsdaCreditCurveDefinition extends Object implements org.joda.beans.ImmutableBean, Serializable
Provides the definition of how to calibrate an ISDA compliant curve for credit.An ISDA compliant curve is built from a number of parameters and described by metadata. Calibration is based on a list of
IsdaCreditCurveNode
instances, one for each parameter, that specify the underlying instruments.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
IsdaCreditCurveDefinition.Meta
The meta-bean forIsdaCreditCurveDefinition
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description InterpolatedNodalCurve
curve(DoubleArray yearFractions, DoubleArray zeroRates)
Creates the ISDA compliant curve.boolean
equals(Object obj)
Currency
getCurrency()
Gets the curve currency.ImmutableList<IsdaCreditCurveNode>
getCurveNodes()
Gets the curve nodes.LocalDate
getCurveValuationDate()
Gets the curve valuation date.DayCount
getDayCount()
Gets the day count.CurveName
getName()
Gets the curve name.int
hashCode()
boolean
isComputeJacobian()
Gets the flag indicating if the Jacobian matrices should be computed and stored in metadata or not.boolean
isStoreNodeTrade()
Gets the flag indicating if the node trade should be stored or not.static IsdaCreditCurveDefinition.Meta
meta()
The meta-bean forIsdaCreditCurveDefinition
.IsdaCreditCurveDefinition.Meta
metaBean()
static IsdaCreditCurveDefinition
of(CurveName name, Currency currency, LocalDate curveValuationDate, DayCount dayCount, List<? extends IsdaCreditCurveNode> curveNodes, boolean computeJacobian, boolean storeNodeTrade)
Obtains an instance.String
toString()
-
-
-
Method Detail
-
of
public static IsdaCreditCurveDefinition of(CurveName name, Currency currency, LocalDate curveValuationDate, DayCount dayCount, List<? extends IsdaCreditCurveNode> curveNodes, boolean computeJacobian, boolean storeNodeTrade)
Obtains an instance.- Parameters:
name
- the namecurrency
- the currencycurveValuationDate
- the curve valuation datedayCount
- the day countcurveNodes
- the curve nodescomputeJacobian
- the Jacobian flagstoreNodeTrade
- the node trade flag- Returns:
- the instance
-
curve
public InterpolatedNodalCurve curve(DoubleArray yearFractions, DoubleArray zeroRates)
Creates the ISDA compliant curve.The parameter metadata is not stored in the metadata of the curve.
- Parameters:
yearFractions
- the year fraction valueszeroRates
- the zero rate values- Returns:
- the curve
-
meta
public static IsdaCreditCurveDefinition.Meta meta()
The meta-bean forIsdaCreditCurveDefinition
.- Returns:
- the meta-bean, not null
-
metaBean
public IsdaCreditCurveDefinition.Meta metaBean()
- Specified by:
metaBean
in interfaceorg.joda.beans.Bean
-
getName
public CurveName getName()
Gets the curve name.- Returns:
- the value of the property, not null
-
getCurrency
public Currency getCurrency()
Gets the curve currency.The resultant curve will be used for discounting based on this currency. This is typically the same as the currency of the curve node instruments in
curveNodes
.- Returns:
- the value of the property, not null
-
getCurveValuationDate
public LocalDate getCurveValuationDate()
Gets the curve valuation date.The date on which the resultant curve is used for pricing. This date is not necessarily the same as the
valuationDate
ofMarketData
on which the market data was snapped.- Returns:
- the value of the property, not null
-
getDayCount
public DayCount getDayCount()
Gets the day count.If the x-value of the curve represents time as a year fraction, the day count can be specified to define how the year fraction is calculated.
- Returns:
- the value of the property, not null
-
getCurveNodes
public ImmutableList<IsdaCreditCurveNode> getCurveNodes()
Gets the curve nodes.The nodes are used to find the par rates and calibrate the curve.
- Returns:
- the value of the property, not null
-
isComputeJacobian
public boolean isComputeJacobian()
Gets the flag indicating if the Jacobian matrices should be computed and stored in metadata or not.- Returns:
- the value of the property, not null
-
isStoreNodeTrade
public boolean isStoreNodeTrade()
Gets the flag indicating if the node trade should be stored or not.This property is used only for credit curve calibration.
- Returns:
- the value of the property, not null
-
-