QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
SpreadFittingMethod Class Reference

Spread fitting method helper. More...

#include <nonlinearfittingmethods.hpp>

+ Inheritance diagram for SpreadFittingMethod:
+ Collaboration diagram for SpreadFittingMethod:

Public Member Functions

 SpreadFittingMethod (const ext::shared_ptr< FittingMethod > &method, Handle< YieldTermStructure > discountCurve, Real minCutoffTime=0.0, Real maxCutoffTime=QL_MAX_REAL)
 
std::unique_ptr< FittedBondDiscountCurve::FittingMethodclone () const override
 clone of the current object More...
 
- Public Member Functions inherited from FittedBondDiscountCurve::FittingMethod
virtual ~FittingMethod ()=default
 
virtual Size size () const =0
 total number of coefficients to fit/solve for More...
 
Array solution () const
 output array of results of optimization problem More...
 
Integer numberOfIterations () const
 final number of iterations used in the optimization problem More...
 
Real minimumCostValue () const
 final value of cost function after optimization More...
 
EndCriteria::Type errorCode () const
 error code of the optimization More...
 
virtual std::unique_ptr< FittingMethodclone () const =0
 clone of the current object More...
 
bool constrainAtZero () const
 return whether there is a constraint at zero More...
 
Array weights () const
 return weights being used More...
 
Array l2 () const
 return l2 penalties being used More...
 
ext::shared_ptr< OptimizationMethodoptimizationMethod () const
 return optimization method being used More...
 
DiscountFactor discount (const Array &x, Time t) const
 open discountFunction to public More...
 

Protected Member Functions

void init () override
 rerun every time instruments/referenceDate changes More...
 
- 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)
 constructors More...
 
virtual void init ()
 rerun every time instruments/referenceDate changes More...
 
virtual DiscountFactor discountFunction (const Array &x, Time t) const =0
 discount function called by FittedBondDiscountCurve More...
 

Private Member Functions

Size size () const override
 total number of coefficients to fit/solve for More...
 
DiscountFactor discountFunction (const Array &x, Time t) const override
 discount function called by FittedBondDiscountCurve More...
 

Private Attributes

ext::shared_ptr< FittingMethodmethod_
 
DiscountFactor rebase_
 
Handle< YieldTermStructurediscountingCurve_
 

Additional Inherited Members

- Protected Attributes inherited from FittedBondDiscountCurve::FittingMethod
bool constrainAtZero_
 constrains discount function to unity at \( T=0 \), if true More...
 
FittedBondDiscountCurvecurve_
 internal reference to the FittedBondDiscountCurve instance More...
 
Array solution_
 solution array found from optimization, set in calculate() More...
 
Array guessSolution_
 optional guess solution to be passed into constructor. More...
 
ext::shared_ptr< FittingCost > costFunction_
 base class sets this cost function used in the optimization routine More...
 

Detailed Description

Spread fitting method helper.

Examples
FittedBondCurve.cpp.

Definition at line 232 of file nonlinearfittingmethods.hpp.

Constructor & Destructor Documentation

◆ SpreadFittingMethod()

SpreadFittingMethod ( const ext::shared_ptr< FittingMethod > &  method,
Handle< YieldTermStructure discountCurve,
Real  minCutoffTime = 0.0,
Real  maxCutoffTime = QL_MAX_REAL 
)

Definition at line 327 of file nonlinearfittingmethods.cpp.

Member Function Documentation

◆ clone()

std::unique_ptr< FittedBondDiscountCurve::FittingMethod > clone ( ) const
overridevirtual

clone of the current object

Implements FittedBondDiscountCurve::FittingMethod.

Definition at line 344 of file nonlinearfittingmethods.cpp.

◆ init()

void init ( )
overrideprotectedvirtual

rerun every time instruments/referenceDate changes

Reimplemented from FittedBondDiscountCurve::FittingMethod.

Definition at line 357 of file nonlinearfittingmethods.cpp.

+ Here is the call graph for this function:

◆ size()

Size size ( ) const
overrideprivatevirtual

total number of coefficients to fit/solve for

Implements FittedBondDiscountCurve::FittingMethod.

Definition at line 349 of file nonlinearfittingmethods.cpp.

◆ discountFunction()

DiscountFactor discountFunction ( const Array x,
Time  t 
) const
overrideprivatevirtual

discount function called by FittedBondDiscountCurve

Implements FittedBondDiscountCurve::FittingMethod.

Definition at line 353 of file nonlinearfittingmethods.cpp.

Member Data Documentation

◆ method_

ext::shared_ptr<FittingMethod> method_
private

Definition at line 247 of file nonlinearfittingmethods.hpp.

◆ rebase_

DiscountFactor rebase_
private

Definition at line 249 of file nonlinearfittingmethods.hpp.

◆ discountingCurve_

Handle<YieldTermStructure> discountingCurve_
private

Definition at line 251 of file nonlinearfittingmethods.hpp.