net.finmath.montecarlo.interestrate.modelplugins
Class LIBORCorrelationModelExponentialDecay
- java.lang.Object
-
- net.finmath.montecarlo.interestrate.modelplugins.LIBORCorrelationModel
-
- net.finmath.montecarlo.interestrate.modelplugins.LIBORCorrelationModelExponentialDecay
-
public class LIBORCorrelationModelExponentialDecay extends LIBORCorrelationModel
Simple correlation model given by R, where R is a factor reduced matrix (seeLinearAlgebra.factorReduction(double[][], int)) created from the \( n \) Eigenvectors of \( \tilde{R} \) belonging to the \( n \) largest non-negative Eigenvalues, where \( \tilde{R} = \tilde{\rho}_{i,j} \) and \[ \tilde{\rho}_{i,j} = \exp( -\max(a,0) | T_{i}-T_{j} | ) \] For a more general model featuring three parameters seeLIBORCorrelationModelThreeParameterExponentialDecay.
-
-
Constructor Summary
Constructors Constructor and Description LIBORCorrelationModelExponentialDecay(TimeDiscretizationInterface timeDiscretization, TimeDiscretizationInterface liborPeriodDiscretization, int numberOfFactors, double a)LIBORCorrelationModelExponentialDecay(TimeDiscretizationInterface timeDiscretization, TimeDiscretizationInterface liborPeriodDiscretization, int numberOfFactors, double a, boolean isCalibrateable)Create a correlation model with an exponentially decaying correlation structure and the given number of factors.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description java.lang.Objectclone()doublegetCorrelation(int timeIndex, int component1, int component2)doublegetFactorLoading(int timeIndex, int factor, int component)intgetNumberOfFactors()double[]getParameter()voidsetParameter(double[] parameter)-
Methods inherited from class net.finmath.montecarlo.interestrate.modelplugins.LIBORCorrelationModel
getLiborPeriodDiscretization, getTimeDiscretization
-
-
-
-
Constructor Detail
-
LIBORCorrelationModelExponentialDecay
public LIBORCorrelationModelExponentialDecay(TimeDiscretizationInterface timeDiscretization, TimeDiscretizationInterface liborPeriodDiscretization, int numberOfFactors, double a, boolean isCalibrateable)
Create a correlation model with an exponentially decaying correlation structure and the given number of factors.- Parameters:
timeDiscretization- Simulation time dicretization. Not used.liborPeriodDiscretization- Tenor time discretization, i.e., the \( T_{i} \)'s.numberOfFactors- Number \( n \) of factors to be used.a- Decay parameter. Should be positive. Negative values will be floored to 0.isCalibrateable- If true, the parameter will become a free parameter in a calibration.
-
LIBORCorrelationModelExponentialDecay
public LIBORCorrelationModelExponentialDecay(TimeDiscretizationInterface timeDiscretization, TimeDiscretizationInterface liborPeriodDiscretization, int numberOfFactors, double a)
-
-
Method Detail
-
setParameter
public void setParameter(double[] parameter)
- Specified by:
setParameterin classLIBORCorrelationModel
-
clone
public java.lang.Object clone()
- Specified by:
clonein classLIBORCorrelationModel
-
getFactorLoading
public double getFactorLoading(int timeIndex, int factor, int component)- Specified by:
getFactorLoadingin classLIBORCorrelationModel
-
getCorrelation
public double getCorrelation(int timeIndex, int component1, int component2)- Specified by:
getCorrelationin classLIBORCorrelationModel
-
getNumberOfFactors
public int getNumberOfFactors()
- Specified by:
getNumberOfFactorsin classLIBORCorrelationModel
-
getParameter
public double[] getParameter()
- Specified by:
getParameterin classLIBORCorrelationModel
-
-
DataMelt 3.0 © DataMelt by jWork.ORG