Vasicek Class Reference

Vasicek model class More...

#include <ql/models/shortrate/onefactormodels/vasicek.hpp>

Inheritance diagram for Vasicek:

Classes

class  Dynamics
 Short-rate dynamics in the Vasicek model. More...
 

Public Member Functions

 Vasicek (Rate r0=0.05, Real a=0.1, Real b=0.05, Real sigma=0.01, Real lambda=0.0)
 
virtual Real discountBondOption (Option::Type type, Real strike, Time maturity, Time bondMaturity) const
 
virtual boost::shared_ptr
< ShortRateDynamics
dynamics () const
 returns the short-rate dynamics
 
Real a () const
 
Real b () const
 
Real lambda () const
 
Real sigma () const
 
- Public Member Functions inherited from OneFactorAffineModel
 OneFactorAffineModel (Size nArguments)
 
virtual Real discountBond (Time now, Time maturity, Array factors) const
 
Real discountBond (Time now, Time maturity, Rate rate) const
 
DiscountFactor discount (Time t) const
 Implied discount curve.
 
- Public Member Functions inherited from OneFactorModel
 OneFactorModel (Size nArguments)
 
boost::shared_ptr< Latticetree (const TimeGrid &grid) const
 Return by default a trinomial recombining tree.
 
- Public Member Functions inherited from ShortRateModel
 ShortRateModel (Size nArguments)
 
- Public Member Functions inherited from CalibratedModel
 CalibratedModel (Size nArguments)
 
void update ()
 
void calibrate (const std::vector< boost::shared_ptr< CalibrationHelper > > &, OptimizationMethod &method, const EndCriteria &endCriteria, const Constraint &constraint=Constraint(), const std::vector< Real > &weights=std::vector< Real >())
 Calibrate to a set of market instruments (caps/swaptions) More...
 
Real value (const Array &params, const std::vector< boost::shared_ptr< CalibrationHelper > > &)
 
const boost::shared_ptr
< Constraint > & 
constraint () const
 
EndCriteria::Type endCriteria ()
 returns end criteria result
 
Disposable< Arrayparams () const
 Returns array of arguments on which calibration is done.
 
virtual void setParams (const Array &params)
 
- Public Member Functions inherited from Observer
 Observer (const Observer &)
 
Observeroperator= (const Observer &)
 
std::pair< std::set
< boost::shared_ptr
< Observable > >::iterator,
bool > 
registerWith (const boost::shared_ptr< Observable > &)
 
Size unregisterWith (const boost::shared_ptr< Observable > &)
 
void unregisterWithAll ()
 
- Public Member Functions inherited from Observable
 Observable (const Observable &)
 
Observableoperator= (const Observable &)
 
void notifyObservers ()
 
- Public Member Functions inherited from AffineModel
virtual Real discountBondOption (Option::Type type, Real strike, Time maturity, Time bondStart, Time bondMaturity) const
 

Protected Member Functions

virtual Real A (Time t, Time T) const
 
virtual Real B (Time t, Time T) const
 
- Protected Member Functions inherited from CalibratedModel
virtual void generateArguments ()
 

Protected Attributes

Real r0_
 
Parametera_
 
Parameterb_
 
Parametersigma_
 
Parameterlambda_
 
- Protected Attributes inherited from CalibratedModel
std::vector< Parameterarguments_
 
boost::shared_ptr< Constraintconstraint_
 
EndCriteria::Type shortRateEndCriteria_
 

Detailed Description

Vasicek model class

This class implements the Vasicek model defined by

\[ dr_t = a(b - r_t)dt + \sigma dW_t , \]

where $ a $, $ b $ and $ \sigma $ are constants; a risk premium $ \lambda $ can also be specified.