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
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:
-
Constructor Summary
ConstructorDescriptionExponentialCorrelationCurve
(String name, LocalDate referenceDate, double termination, double correlationDecay) Create the curve. -
Method Summary
Modifier and TypeMethodDescriptionReturns a curve builder bases on a clone of this curve.double[]
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 Details
-
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 Details
-
getValue
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
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.
-