|
QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
|
Exponential-splines fitting method. More...
#include <ql/termstructures/yield/nonlinearfittingmethods.hpp>
Public Member Functions | |
| ExponentialSplinesFitting (bool constrainAtZero=true, const Array &weights=Array(), const ext::shared_ptr< OptimizationMethod > &optimizationMethod={}, const Array &l2=Array(), Real minCutoffTime=0.0, Real maxCutoffTime=QL_MAX_REAL, Size numCoeffs=9, Real fixedKappa=Null< Real >(), Constraint constraint=NoConstraint()) | |
| ExponentialSplinesFitting (bool constrainAtZero, const Array &weights, const Array &l2, Real minCutoffTime=0.0, Real maxCutoffTime=QL_MAX_REAL, Size numCoeffs=9, Real fixedKappa=Null< Real >(), Constraint constraint=NoConstraint()) | |
| ExponentialSplinesFitting (bool constrainAtZero, Size numCoeffs, Real fixedKappa, const Array &weights=Array(), Constraint constraint=NoConstraint()) | |
| std::unique_ptr< FittedBondDiscountCurve::FittingMethod > | clone () const override |
| clone of the current object | |
| Public Member Functions inherited from FittedBondDiscountCurve::FittingMethod | |
| Array | solution () const |
| output array of results of optimization problem | |
| Integer | numberOfIterations () const |
| final number of iterations used in the optimization problem | |
| Real | minimumCostValue () const |
| final value of cost function after optimization | |
| EndCriteria::Type | errorCode () const |
| error code of the optimization | |
| bool | constrainAtZero () const |
| return whether there is a constraint at zero | |
| Array | weights () const |
| return weights being used | |
| Array | l2 () const |
| return l2 penalties being used | |
| ext::shared_ptr< OptimizationMethod > | optimizationMethod () const |
| return optimization method being used | |
| const Constraint & | constraint () const |
| return optimization contraint | |
| DiscountFactor | discount (const Array &x, Time t) const |
| open discountFunction to public | |
Additional Inherited Members | |
| Protected Member Functions inherited from FittedBondDiscountCurve::FittingMethod | |
| FittingMethod (bool constrainAtZero=true, const Array &weights=Array(), ext::shared_ptr< OptimizationMethod > optimizationMethod=ext::shared_ptr< OptimizationMethod >(), Array l2=Array(), Real minCutoffTime=0.0, Real maxCutoffTime=QL_MAX_REAL, Constraint constraint=NoConstraint()) | |
| constructors | |
| virtual void | init () |
| rerun every time instruments/referenceDate changes | |
| Protected Attributes inherited from FittedBondDiscountCurve::FittingMethod | |
| bool | constrainAtZero_ |
| constrains discount function to unity at \( T=0 \), if true | |
| FittedBondDiscountCurve * | curve_ |
| internal reference to the FittedBondDiscountCurve instance | |
| Array | solution_ |
| solution array found from optimization, set in calculate() | |
| Array | guessSolution_ |
| optional guess solution to be passed into constructor. | |
| ext::shared_ptr< FittingCost > | costFunction_ |
| base class sets this cost function used in the optimization routine | |
Exponential-splines fitting method.
Fits a discount function to the exponential form
\[d(t) = \sum_{i=1}^9 c_i e^{-\kappa_i t} \]
where the constants \( c_i \) and \( \kappa \) are to be determined. See:Li, B., E. DeWetering, G. Lucas, R. Brenner and A. Shapiro (2001): "Merrill Lynch Exponential Spline Model." Merrill Lynch Working Paper
\( \kappa \) can be passed a fixed value, in which case it is excluded from optimization.
|
overridevirtual |
clone of the current object
Implements FittedBondDiscountCurve::FittingMethod.