Module net.finmath.lib
Class ExponentialCorrelationCurve
- java.lang.Object
-
- net.finmath.marketdata.model.curves.AbstractCurve
-
- net.finmath.singleswaprate.model.curves.ExponentialCorrelationCurve
-
- All Implemented Interfaces:
Serializable
,Cloneable
,ParameterObject
,Curve
public class ExponentialCorrelationCurve extends AbstractCurve implements Cloneable
A curve, which models exponential decay of correlation from one point in time to another, according to \[ \max\{e^{c(t-T)}, 1\} \, . \] Any point after the given termination time will have correlation of one. Any point before will have decaying correlation according to the parameter.- Author:
- Christian Fries, Roland Bachl
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ExponentialCorrelationCurve(String name, LocalDate referenceDate, double termination, double correlationDecay)
Create the curve.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CurveBuilder
getCloneBuilder()
Returns a curve builder bases on a clone of this curve.double[]
getParameter()
Get the current parameter associated with the state of the objects.double
getValue(AnalyticModel model, double time)
Returns the value for the time using the interpolation method associated with this curve within a given context, i.e., a model.void
setParameter(double[] parameter)
Set the current parameter and change the state of the objects.-
Methods inherited from class net.finmath.marketdata.model.curves.AbstractCurve
clone, getCloneForParameter, getName, getReferenceDate, getValue, getValues, toString
-
-
-
-
Constructor Detail
-
ExponentialCorrelationCurve
public ExponentialCorrelationCurve(String name, LocalDate referenceDate, double termination, double correlationDecay)
Create the curve.- Parameters:
name
- The name of the curvereferenceDate
- The reference date of the curvetermination
- The date as double, from which the correlation is measuredcorrelationDecay
- The rate at which the correlation decays
-
-
Method Detail
-
getValue
public double getValue(AnalyticModel model, double time)
Description copied from interface:Curve
Returns the value for the time using the interpolation method associated with this curve within a given context, i.e., a model. The model (context) is needed only if the curve relies on another curve. Examples are a forward curve which relies on a discount curve or a discount curve which is defined via a spread over another curve.
-
getCloneBuilder
public CurveBuilder getCloneBuilder()
Description copied from interface:Curve
Returns a curve builder bases on a clone of this curve. Using that curve builder you may create a new curve from this curve by adding points or changing properties. Note: The clone has the same name than this one.- Specified by:
getCloneBuilder
in interfaceCurve
- Returns:
- An object implementing the CurveBuilderInterface where the underlying curve is a clone of this curve.
-
getParameter
public double[] getParameter()
Description copied from interface:ParameterObject
Get the current parameter associated with the state of the objects.- Specified by:
getParameter
in interfaceParameterObject
- Returns:
- The parameter.
-
setParameter
public void setParameter(double[] parameter)
Description copied from interface:ParameterObject
Set the current parameter and change the state of the objects.- Specified by:
setParameter
in interfaceParameterObject
- Parameters:
parameter
- The parameter associated with the new state of the objects.
-
-