QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Libor forward model More...
#include <liborforwardmodel.hpp>
Public Member Functions | |
LiborForwardModel (const ext::shared_ptr< LiborForwardModelProcess > &process, const ext::shared_ptr< LmVolatilityModel > &volaModel, const ext::shared_ptr< LmCorrelationModel > &corrModel) | |
Rate | S_0 (Size alpha, Size beta) const |
virtual ext::shared_ptr< SwaptionVolatilityMatrix > | getSwaptionVolatilityMatrix () const |
DiscountFactor | discount (Time t) const override |
Implied discount curve. More... | |
Real | discountBond (Time now, Time maturity, Array factors) const override |
Real | discountBondOption (Option::Type type, Real strike, Time maturity, Time bondMaturity) const override |
void | setParams (const Array ¶ms) override |
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 | |
Array | w_0 (Size alpha, Size beta) const |
Protected Member Functions inherited from CalibratedModel | |
virtual void | generateArguments () |
Protected Attributes | |
std::vector< Real > | f_ |
std::vector< Time > | accrualPeriod_ |
const ext::shared_ptr< LfmCovarianceProxy > | covarProxy_ |
const ext::shared_ptr< LiborForwardModelProcess > | process_ |
ext::shared_ptr< SwaptionVolatilityMatrix > | swaptionVola |
Protected Attributes inherited from CalibratedModel | |
std::vector< Parameter > | arguments_ |
ext::shared_ptr< Constraint > | constraint_ |
EndCriteria::Type | shortRateEndCriteria_ = EndCriteria::None |
Array | problemValues_ |
Integer | functionEvaluation_ |
Additional Inherited Members | |
Public Types inherited from Observer | |
typedef set_type::iterator | iterator |
Libor forward model
References:
Stefan Weber, 2005, Efficient Calibration for Libor Market Models, (http://workshop.mathfinance.de/2005/papers/weber/slides.pdf)
Damiano Brigo, Fabio Mercurio, Massimo Morini, 2003, Different Covariance Parameterizations of Libor Market Model and Joint Caps/Swaptions Calibration, (http://www.business.uts.edu.au/qfrc/conferences/qmf2001/Brigo_D.pdf
Definition at line 51 of file liborforwardmodel.hpp.
LiborForwardModel | ( | const ext::shared_ptr< LiborForwardModelProcess > & | process, |
const ext::shared_ptr< LmVolatilityModel > & | volaModel, | ||
const ext::shared_ptr< LmCorrelationModel > & | corrModel | ||
) |
Definition at line 27 of file liborforwardmodel.cpp.
Definition at line 130 of file liborforwardmodel.cpp.
|
virtual |
|
overridevirtual |
Implied discount curve.
Implements AffineModel.
Definition at line 203 of file liborforwardmodel.cpp.
Implements AffineModel.
Definition at line 207 of file liborforwardmodel.cpp.
|
overridevirtual |
Implements AffineModel.
Definition at line 64 of file liborforwardmodel.cpp.
|
overridevirtual |
Reimplemented from CalibratedModel.
Definition at line 51 of file liborforwardmodel.cpp.
|
protected |
Definition at line 76 of file liborforwardmodel.hpp.
|
protected |
Definition at line 77 of file liborforwardmodel.hpp.
|
protected |
Definition at line 79 of file liborforwardmodel.hpp.
|
protected |
Definition at line 80 of file liborforwardmodel.hpp.
|
mutableprotected |
Definition at line 82 of file liborforwardmodel.hpp.