Class SsviFormulaData
- java.lang.Object
-
- com.opengamma.strata.pricer.impl.volatility.smile.SsviFormulaData
-
- All Implemented Interfaces:
SmileModelData,Serializable,org.joda.beans.Bean,org.joda.beans.ImmutableBean
public final class SsviFormulaData extends Object implements SmileModelData, org.joda.beans.ImmutableBean, Serializable
The data bundle for SSVI smile formula.The bundle contains the SSVI model parameters, ATM volatility, rho and eta.
- See Also:
- Serialized Form
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object obj)doublegetEta()Gets the eta parameters.intgetNumberOfParameters()Obtains the number of model parameters.doublegetParameter(int index)Obtains a model parameter specified by the index.DoubleArraygetParameters()Gets the model parameters.doublegetRho()Gets the rho parameter.doublegetSigma()Gets the sigma parameter.inthashCode()booleanisAllowed(int index, double value)Checks the value satisfies the constraint for a model parameter.static org.joda.beans.TypedMetaBean<SsviFormulaData>meta()The meta-bean forSsviFormulaData.org.joda.beans.TypedMetaBean<SsviFormulaData>metaBean()static SsviFormulaDataof(double[] parameters)Obtains an instance of the SSVI formula data.static SsviFormulaDataof(double sigma, double rho, double eta)Obtains an instance of the SSVI formula data.StringtoString()SsviFormulaDatawith(int index, double value)Creates a new smile model data bundle with a model parameter replaced.SsviFormulaDatawithEta(double eta)Returns a copy of this instance with eta replaced.SsviFormulaDatawithRho(double rho)Returns a copy of this instance with rho replaced.SsviFormulaDatawithSigma(double sigma)Returns a copy of this instance with sigma replaced.
-
-
-
Method Detail
-
of
public static SsviFormulaData of(double sigma, double rho, double eta)
Obtains an instance of the SSVI formula data.- Parameters:
sigma- the sigma parameter, ATM volatilityrho- the rho parametereta- the eta parameter- Returns:
- the instance
-
of
public static SsviFormulaData of(double[] parameters)
Obtains an instance of the SSVI formula data.The parameters in the input array should be in the order of sigma (ATM volatility), rho and eta.
- Parameters:
parameters- the parameters- Returns:
- the instance
-
getSigma
public double getSigma()
Gets the sigma parameter.- Returns:
- the sigma parameter
-
getRho
public double getRho()
Gets the rho parameter.- Returns:
- the rho parameter
-
getEta
public double getEta()
Gets the eta parameters.- Returns:
- the eta parameter
-
withSigma
public SsviFormulaData withSigma(double sigma)
Returns a copy of this instance with sigma replaced.- Parameters:
sigma- the new sigma- Returns:
- the new data instance
-
withRho
public SsviFormulaData withRho(double rho)
Returns a copy of this instance with rho replaced.- Parameters:
rho- the new rho- Returns:
- the new data instance
-
withEta
public SsviFormulaData withEta(double eta)
Returns a copy of this instance with eta replaced.- Parameters:
eta- the new eta- Returns:
- the new data instance
-
getNumberOfParameters
public int getNumberOfParameters()
Description copied from interface:SmileModelDataObtains the number of model parameters.- Specified by:
getNumberOfParametersin interfaceSmileModelData- Returns:
- the number of model parameters
-
getParameter
public double getParameter(int index)
Description copied from interface:SmileModelDataObtains a model parameter specified by the index.- Specified by:
getParameterin interfaceSmileModelData- Parameters:
index- the index- Returns:
- the model parameter
-
isAllowed
public boolean isAllowed(int index, double value)Description copied from interface:SmileModelDataChecks the value satisfies the constraint for a model parameter.The parameter is specified by
index.- Specified by:
isAllowedin interfaceSmileModelData- Parameters:
index- the indexvalue- the value- Returns:
- true if allowed, false otherwise
-
with
public SsviFormulaData with(int index, double value)
Description copied from interface:SmileModelDataCreates a new smile model data bundle with a model parameter replaced.The parameter is specified by
indexand replaced byvalue.- Specified by:
within interfaceSmileModelData- Parameters:
index- the indexvalue- the value- Returns:
- the new bundle
-
meta
public static org.joda.beans.TypedMetaBean<SsviFormulaData> meta()
The meta-bean forSsviFormulaData.- Returns:
- the meta-bean, not null
-
metaBean
public org.joda.beans.TypedMetaBean<SsviFormulaData> metaBean()
- Specified by:
metaBeanin interfaceorg.joda.beans.Bean
-
getParameters
public DoubleArray getParameters()
Gets the model parameters.This must be an array of length 3. The parameters in the array are in the order of sigma (ATM volatility), rho and eta. The constraints for the parameters are defined in
isAllowed(int, double).- Returns:
- the value of the property, not null
-
-