com.opengamma.strata.market.curve

## Class CurveGroupDefinitionBuilder

• java.lang.Object
• com.opengamma.strata.market.curve.CurveGroupDefinitionBuilder

• public final class CurveGroupDefinitionBuilder
extends Object
A mutable builder for creating instances of CurveGroupDefinition.
• ### Method Summary

All Methods
Modifier and Type Method and Description
CurveGroupDefinitionBuilder addCurve(CurveDefinition curveDefinition, Currency currency, RateIndex index, RateIndex... otherIndices)
Adds the definition of a curve to the curve group definition which is used to provide discount rates and forward rates.
CurveGroupDefinitionBuilder addCurve(CurveName curveName, Currency currency, RateIndex index, RateIndex... otherIndices)
Adds a curve to the curve group definition which is used to provide discount rates and forward rates.
CurveGroupDefinitionBuilder addDiscountCurve(CurveDefinition curveDefinition, Currency currency, Currency... otherCurrencies)
Adds the definition of a discount curve to the curve group definition.
CurveGroupDefinitionBuilder addDiscountCurve(CurveName curveName, Currency currency, Currency... otherCurrencies)
Adds the definition of a discount curve to the curve group definition.
CurveGroupDefinitionBuilder addForwardCurve(CurveDefinition curveDefinition, Index index, Index... otherIndices)
Adds the definition of a forward curve to the curve group definition.
CurveGroupDefinitionBuilder addForwardCurve(CurveName curveName, Index index, Index... otherIndices)
Adds the definition of a forward curve to the curve group definition.
CurveGroupDefinitionBuilder addSeasonality(CurveName curveName, SeasonalityDefinition seasonalityDefinition)
Adds a seasonality to the curve group definition.
CurveGroupDefinition build()
Builds the definition of the curve group from the data in this object.
CurveGroupDefinitionBuilder computeJacobian(boolean computeJacobian)
Sets the 'compute Jacobian' flag of the curve group definition.
CurveGroupDefinitionBuilder computePvSensitivityToMarketQuote(boolean computePvSensitivityToMarketQuote)
Sets the 'compute PV sensitivity to market quote' flag of the curve group definition.
CurveGroupDefinitionBuilder name(CurveGroupName name)
Sets the name of the curve group definition.
• ### Methods inherited from class java.lang.Object

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

• #### name

public CurveGroupDefinitionBuilder name(CurveGroupName name)
Sets the name of the curve group definition.
Parameters:
name - the name of the curve group, not empty
Returns:
this builder
• #### computeJacobian

public CurveGroupDefinitionBuilder computeJacobian(boolean computeJacobian)
Sets the 'compute Jacobian' flag of the curve group definition.
Parameters:
computeJacobian - the flag indicating if the Jacobian matrices should be computed and stored in metadata or not
Returns:
this builder
• #### computePvSensitivityToMarketQuote

public CurveGroupDefinitionBuilder computePvSensitivityToMarketQuote(boolean computePvSensitivityToMarketQuote)
Sets the 'compute PV sensitivity to market quote' flag of the curve group definition.

If set, the Jacobian matrices will also be calculated, even if not requested.

Parameters:
computePvSensitivityToMarketQuote - the flag indicating if present value sensitivity to market quotes should be computed and stored in metadata or not
Returns:
this builder

public CurveGroupDefinitionBuilder addDiscountCurve(CurveDefinition curveDefinition,
Currency currency,
Currency... otherCurrencies)
Adds the definition of a discount curve to the curve group definition.
Parameters:
curveDefinition - the discount curve configuration
otherCurrencies - additional currencies for which the curve can provide discount factors
currency - the currency for which the curve provides discount rates
Returns:
this builder

public CurveGroupDefinitionBuilder addDiscountCurve(CurveName curveName,
Currency currency,
Currency... otherCurrencies)
Adds the definition of a discount curve to the curve group definition.

A curve added with this method cannot be calibrated by the market data system as it does not include a curve definition. It is intended to be used with curves which are supplied by the user.

Parameters:
curveName - the name of the curve
otherCurrencies - additional currencies for which the curve can provide discount factors
currency - the currency for which the curve provides discount rates
Returns:
this builder

public CurveGroupDefinitionBuilder addForwardCurve(CurveDefinition curveDefinition,
Index index,
Index... otherIndices)
Adds the definition of a forward curve to the curve group definition.
Parameters:
curveDefinition - the definition of the forward curve
index - the index for which the curve provides forward rates
otherIndices - the additional indices for which the curve provides forward rates
Returns:
this builder

public CurveGroupDefinitionBuilder addForwardCurve(CurveName curveName,
Index index,
Index... otherIndices)
Adds the definition of a forward curve to the curve group definition.

A curve added with this method cannot be calibrated by the market data system as it does not include a curve definition. It is intended to be used with curves which are supplied by the user.

Parameters:
curveName - the name of the curve
index - the index for which the curve provides forward rates
otherIndices - the additional indices for which the curve provides forward rates
Returns:
this builder

public CurveGroupDefinitionBuilder addCurve(CurveDefinition curveDefinition,
Currency currency,
RateIndex index,
RateIndex... otherIndices)
Adds the definition of a curve to the curve group definition which is used to provide discount rates and forward rates.
Parameters:
curveDefinition - the definition of the forward curve
currency - the currency for which the curve provides discount rates
index - the index for which the curve provides forward rates
otherIndices - the additional indices for which the curve provides forward rates
Returns:
this builder

public CurveGroupDefinitionBuilder addCurve(CurveName curveName,
Currency currency,
RateIndex index,
RateIndex... otherIndices)
Adds a curve to the curve group definition which is used to provide discount rates and forward rates.

A curve added with this method cannot be calibrated by the market data system as it does not include a curve definition. It is intended to be used with curves which are supplied by the user.

Parameters:
curveName - the name of the curve
currency - the currency for which the curve provides discount rates
index - the index for which the curve provides forward rates
otherIndices - the additional indices for which the curve provides forward rates
Returns:
this builder

public CurveGroupDefinitionBuilder addSeasonality(CurveName curveName,
SeasonalityDefinition seasonalityDefinition)
Adds a seasonality to the curve group definition.
Parameters:
curveName - the name of the curve
seasonalityDefinition - the seasonality associated to the curve
Returns:
this builder
• #### build

public CurveGroupDefinition build()
Builds the definition of the curve group from the data in this object.
Returns:
the definition of the curve group built from the data in this object