Module net.finmath.lib
Class TermStructCovarianceModelFromLIBORCovarianceModelParametric
- java.lang.Object
-
- net.finmath.montecarlo.interestrate.models.covariance.TermStructureCovarianceModelParametric
-
- net.finmath.montecarlo.interestrate.models.covariance.TermStructCovarianceModelFromLIBORCovarianceModelParametric
-
- All Implemented Interfaces:
TermStructureCovarianceModelInterface,TermStructureFactorLoadingsModelInterface,TermStructureFactorLoadingsModelParametricInterface,TermStructureTenorTimeScalingInterface
public class TermStructCovarianceModelFromLIBORCovarianceModelParametric extends TermStructureCovarianceModelParametric
- Version:
- 1.0
- Author:
- Christian Fries
-
-
Constructor Summary
Constructors Constructor Description TermStructCovarianceModelFromLIBORCovarianceModelParametric(TermStructureTenorTimeScalingInterface tenorTimeScalingModel, AbstractLIBORCovarianceModelParametric covarianceModel)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TermStructureCovarianceModelParametricclone()TermStructureCovarianceModelParametricgetCloneWithModifiedParameters(double[] parameters)Return an instance of this model using a new set of parameters.RandomVariable[]getFactorLoading(double time, double periodStart, double periodEnd, TimeDiscretization periodDiscretization, RandomVariable[] realizationAtTimeIndex, TermStructureModel model)Return the factor loading for a given time and a term structure period.intgetNumberOfFactors()double[]getParameter()Get the parameters of determining this parametric covariance model.doublegetScaledTenorTime(double periodStart, double periodEnd)-
Methods inherited from class net.finmath.montecarlo.interestrate.models.covariance.TermStructureCovarianceModelParametric
getCloneCalibrated
-
-
-
-
Constructor Detail
-
TermStructCovarianceModelFromLIBORCovarianceModelParametric
public TermStructCovarianceModelFromLIBORCovarianceModelParametric(TermStructureTenorTimeScalingInterface tenorTimeScalingModel, AbstractLIBORCovarianceModelParametric covarianceModel)
- Parameters:
tenorTimeScalingModel- The model used for the tenor time re-scaling (providing the scaling coefficients).covarianceModel- The model implementing AbstractLIBORCovarianceModelParametric.
-
-
Method Detail
-
getScaledTenorTime
public double getScaledTenorTime(double periodStart, double periodEnd)
-
getFactorLoading
public RandomVariable[] getFactorLoading(double time, double periodStart, double periodEnd, TimeDiscretization periodDiscretization, RandomVariable[] realizationAtTimeIndex, TermStructureModel model)
Description copied from interface:TermStructureFactorLoadingsModelInterfaceReturn the factor loading for a given time and a term structure period. The factor loading is the vector fi such that the scalar product
fjfk = fj,1fk,1 + ... + fj,mfk,m
is the instantaneous covariance of the component j and k. With respect to simulation time t, this method uses a piece wise constant interpolation, i.e., it calculates t_i such that t_i is the largest point ingetTimeDiscretizationsuch that t_i ≤ t . The component here, it given via a double T which may be associated with the LIBOR fixing date. With respect to component time T, this method uses a piece wise constant interpolation, i.e., it calculates T_j such that T_j is the largest point ingetTimeDiscretizationsuch that T_j ≤ T .- Parameters:
time- The time t at which factor loading is requested.periodStart- Period start of the component.periodEnd- Period end of the component.periodDiscretization- The period discretization associated with the realizationAtTimeIndexrealizationAtTimeIndex- The realization of the stochastic process (may be used to implement local volatility/covariance/correlation models).model- The term structure model.- Returns:
- The factor loading fi(t).
-
getNumberOfFactors
public int getNumberOfFactors()
- Returns:
- the numberOfFactors
-
getParameter
public double[] getParameter()
Description copied from class:TermStructureCovarianceModelParametricGet the parameters of determining this parametric covariance model. The parameters are usually free parameters which may be used in calibration.- Specified by:
getParameterin interfaceTermStructureFactorLoadingsModelParametricInterface- Specified by:
getParameterin interfaceTermStructureTenorTimeScalingInterface- Specified by:
getParameterin classTermStructureCovarianceModelParametric- Returns:
- Parameter vector.
-
getCloneWithModifiedParameters
public TermStructureCovarianceModelParametric getCloneWithModifiedParameters(double[] parameters)
Description copied from class:TermStructureCovarianceModelParametricReturn an instance of this model using a new set of parameters. Note: To improve performance it is admissible to return the same instance of the object given that the parameters have not changed. Models should be immutable.- Specified by:
getCloneWithModifiedParametersin interfaceTermStructureFactorLoadingsModelParametricInterface- Specified by:
getCloneWithModifiedParametersin interfaceTermStructureTenorTimeScalingInterface- Specified by:
getCloneWithModifiedParametersin classTermStructureCovarianceModelParametric- Parameters:
parameters- The new set of parameters.- Returns:
- An instance of AbstractLIBORCovarianceModelParametric with modified parameters.
-
clone
public TermStructureCovarianceModelParametric clone()
- Specified by:
clonein interfaceTermStructureTenorTimeScalingInterface- Specified by:
clonein classTermStructureCovarianceModelParametric- Returns:
- A clone of this object.
-
-