QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Cox-Ingersoll-Ross model class. More...
#include <coxingersollross.hpp>
Classes | |
class | Dynamics |
Dynamics of the short-rate under the Cox-Ingersoll-Ross model More... | |
Public Member Functions | |
CoxIngersollRoss (Rate r0=0.05, Real theta=0.1, Real k=0.1, Real sigma=0.1, bool withFellerConstraint=true) | |
Real | discountBondOption (Option::Type type, Real strike, Time maturity, Time bondMaturity) const override |
ext::shared_ptr< ShortRateDynamics > | dynamics () const override |
returns the short-rate dynamics More... | |
ext::shared_ptr< Lattice > | tree (const TimeGrid &grid) const override |
Return by default a trinomial recombining tree. More... | |
Public Member Functions inherited from OneFactorAffineModel | |
OneFactorAffineModel (Size nArguments) | |
Real | discountBond (Time now, Time maturity, Array factors) const override |
Real | discountBond (Time now, Time maturity, Rate rate) const |
DiscountFactor | discount (Time t) const override |
Implied discount curve. More... | |
Public Member Functions inherited from OneFactorModel | |
OneFactorModel (Size nArguments) | |
~OneFactorModel () override=default | |
virtual ext::shared_ptr< ShortRateDynamics > | dynamics () const =0 |
returns the short-rate dynamics More... | |
ext::shared_ptr< Lattice > | tree (const TimeGrid &grid) const override |
Return by default a trinomial recombining tree. More... | |
Public Member Functions inherited from ShortRateModel | |
ShortRateModel (Size nArguments) | |
virtual ext::shared_ptr< Lattice > | tree (const TimeGrid &) const =0 |
Public Member Functions inherited from CalibratedModel | |
CalibratedModel (Size nArguments) | |
void | update () override |
virtual void | calibrate (const std::vector< ext::shared_ptr< CalibrationHelper > > &, OptimizationMethod &method, const EndCriteria &endCriteria, const Constraint &constraint=Constraint(), const std::vector< Real > &weights=std::vector< Real >(), const std::vector< bool > &fixParameters=std::vector< bool >()) |
Calibrate to a set of market instruments (usually caps/swaptions) More... | |
Real | value (const Array ¶ms, const std::vector< ext::shared_ptr< CalibrationHelper > > &) |
const ext::shared_ptr< Constraint > & | constraint () const |
EndCriteria::Type | endCriteria () const |
Returns end criteria result. More... | |
const Array & | problemValues () const |
Returns the problem values. More... | |
Array | params () const |
Returns array of arguments on which calibration is done. More... | |
virtual void | setParams (const Array ¶ms) |
Integer | functionEvaluation () const |
Public Member Functions inherited from Observer | |
Observer ()=default | |
Observer (const Observer &) | |
Observer & | operator= (const Observer &) |
virtual | ~Observer () |
std::pair< iterator, bool > | registerWith (const ext::shared_ptr< Observable > &) |
void | registerWithObservables (const ext::shared_ptr< Observer > &) |
Size | unregisterWith (const ext::shared_ptr< Observable > &) |
void | unregisterWithAll () |
virtual void | update ()=0 |
virtual void | deepUpdate () |
Public Member Functions inherited from Observable | |
Observable () | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
Observable (Observable &&)=delete | |
Observable & | operator= (Observable &&)=delete |
virtual | ~Observable ()=default |
void | notifyObservers () |
Public Member Functions inherited from AffineModel | |
virtual DiscountFactor | discount (Time t) const =0 |
Implied discount curve. More... | |
virtual Real | discountBond (Time now, Time maturity, Array factors) const =0 |
virtual Real | discountBondOption (Option::Type type, Real strike, Time maturity, Time bondMaturity) const =0 |
virtual Real | discountBondOption (Option::Type type, Real strike, Time maturity, Time bondStart, Time bondMaturity) const |
Protected Member Functions | |
Real | A (Time t, Time T) const override |
Real | B (Time t, Time T) const override |
Real | theta () const |
Real | k () const |
Real | sigma () const |
Real | x0 () const |
virtual Real | A (Time t, Time T) const =0 |
virtual Real | B (Time t, Time T) const =0 |
Protected Member Functions inherited from CalibratedModel | |
virtual void | generateArguments () |
Private Attributes | |
Parameter & | theta_ |
Parameter & | k_ |
Parameter & | sigma_ |
Parameter & | r0_ |
Additional Inherited Members | |
Public Types inherited from Observer | |
typedef set_type::iterator | iterator |
Protected Attributes inherited from CalibratedModel | |
std::vector< Parameter > | arguments_ |
ext::shared_ptr< Constraint > | constraint_ |
EndCriteria::Type | shortRateEndCriteria_ = EndCriteria::None |
Array | problemValues_ |
Integer | functionEvaluation_ |
Cox-Ingersoll-Ross model class.
This class implements the Cox-Ingersoll-Ross model defined by
\[ dr(t) = k(\theta - r(t))dt + \sigma \sqrt{r(t)} dW(t) \]
Definition at line 44 of file coxingersollross.hpp.
|
overridevirtual |
Implements AffineModel.
Reimplemented in ExtendedCoxIngersollRoss.
Definition at line 83 of file coxingersollross.cpp.
|
overridevirtual |
returns the short-rate dynamics
Implements OneFactorModel.
Reimplemented in ExtendedCoxIngersollRoss.
Definition at line 59 of file coxingersollross.cpp.
Return by default a trinomial recombining tree.
Reimplemented from OneFactorModel.
Reimplemented in ExtendedCoxIngersollRoss.
Definition at line 126 of file coxingersollross.cpp.
Implements OneFactorAffineModel.
Reimplemented in ExtendedCoxIngersollRoss.
Definition at line 64 of file coxingersollross.cpp.
Implements OneFactorAffineModel.
Definition at line 74 of file coxingersollross.cpp.
|
protected |
|
protected |
|
protected |
|
protected |
|
private |
Definition at line 75 of file coxingersollross.hpp.
|
private |
Definition at line 76 of file coxingersollross.hpp.
|
private |
Definition at line 77 of file coxingersollross.hpp.
|
private |
Definition at line 78 of file coxingersollross.hpp.