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 | Protected Attributes | List of all members
LfmHullWhiteParameterization Class Reference

Libor market model parameterization based on Hull White paper More...

#include <lfmhullwhiteparam.hpp>

+ Inheritance diagram for LfmHullWhiteParameterization:
+ Collaboration diagram for LfmHullWhiteParameterization:

Public Member Functions

 LfmHullWhiteParameterization (const ext::shared_ptr< LiborForwardModelProcess > &process, const ext::shared_ptr< OptionletVolatilityStructure > &capletVol, const Matrix &correlation=Matrix(), Size factors=1)
 
Matrix diffusion (Time t, const Array &x=Null< Array >()) const override
 
Matrix covariance (Time t, const Array &x=Null< Array >()) const override
 
Matrix integratedCovariance (Time t, const Array &x=Null< Array >()) const override
 
- Public Member Functions inherited from LfmCovarianceParameterization
 LfmCovarianceParameterization (Size size, Size factors)
 
virtual ~LfmCovarianceParameterization ()=default
 
Size size () const
 
Size factors () const
 
virtual Matrix diffusion (Time t, const Array &x=Null< Array >()) const =0
 
virtual Matrix covariance (Time t, const Array &x=Null< Array >()) const
 
virtual Matrix integratedCovariance (Time t, const Array &x=Null< Array >()) const
 

Protected Member Functions

Size nextIndexReset (Time t) const
 

Protected Attributes

Matrix diffusion_
 
Matrix covariance_
 
std::vector< TimefixingTimes_
 
- Protected Attributes inherited from LfmCovarianceParameterization
const Size size_
 
const Size factors_
 

Detailed Description

Libor market model parameterization based on Hull White paper

Hull, John, White, Alan, 1999, Forward Rate Volatilities, Swap Rate Volatilities and the Implementation of the Libor Market Model (http://www.rotman.utoronto.ca/~amackay/fin/libormktmodel2.pdf)

Tests:
the correctness is tested by Monte-Carlo reproduction of caplet & ratchet npvs and comparison with Black pricing.

Definition at line 41 of file lfmhullwhiteparam.hpp.

Constructor & Destructor Documentation

◆ LfmHullWhiteParameterization()

LfmHullWhiteParameterization ( const ext::shared_ptr< LiborForwardModelProcess > &  process,
const ext::shared_ptr< OptionletVolatilityStructure > &  capletVol,
const Matrix correlation = Matrix(),
Size  factors = 1 
)

Definition at line 25 of file lfmhullwhiteparam.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ diffusion()

Matrix diffusion ( Time  t,
const Array x = Null<Array>() 
) const
overridevirtual

Implements LfmCovarianceParameterization.

Definition at line 96 of file lfmhullwhiteparam.cpp.

+ Here is the call graph for this function:

◆ covariance()

Matrix covariance ( Time  t,
const Array x = Null<Array>() 
) const
overridevirtual

Reimplemented from LfmCovarianceParameterization.

Definition at line 108 of file lfmhullwhiteparam.cpp.

+ Here is the call graph for this function:

◆ integratedCovariance()

Matrix integratedCovariance ( Time  t,
const Array x = Null<Array>() 
) const
overridevirtual

Reimplemented from LfmCovarianceParameterization.

Definition at line 121 of file lfmhullwhiteparam.cpp.

◆ nextIndexReset()

Size nextIndexReset ( Time  t) const
protected

Definition at line 90 of file lfmhullwhiteparam.cpp.

+ Here is the caller graph for this function:

Member Data Documentation

◆ diffusion_

Matrix diffusion_
protected

Definition at line 55 of file lfmhullwhiteparam.hpp.

◆ covariance_

Matrix covariance_
protected

Definition at line 55 of file lfmhullwhiteparam.hpp.

◆ fixingTimes_

std::vector<Time> fixingTimes_
protected

Definition at line 56 of file lfmhullwhiteparam.hpp.