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

Abcd-interpolated volatility structure More...

#include <abcdvol.hpp>

+ Inheritance diagram for AbcdVol:
+ Collaboration diagram for AbcdVol:

Public Member Functions

 AbcdVol (Real a, Real b, Real c, Real d, const std::vector< Real > &ks, const ext::shared_ptr< PiecewiseConstantCorrelation > &corr, const EvolutionDescription &evolution, Size numberOfFactors, const std::vector< Rate > &initialRates, const std::vector< Spread > &displacements)
 
- Public Member Functions inherited from MarketModel
virtual ~MarketModel ()=default
 
virtual const std::vector< Rate > & initialRates () const =0
 
virtual const std::vector< Spread > & displacements () const =0
 
virtual const EvolutionDescriptionevolution () const =0
 
virtual Size numberOfRates () const =0
 
virtual Size numberOfFactors () const =0
 
virtual Size numberOfSteps () const =0
 
virtual const MatrixpseudoRoot (Size i) const =0
 
virtual const Matrixcovariance (Size i) const
 
virtual const MatrixtotalCovariance (Size endIndex) const
 
std::vector< VolatilitytimeDependentVolatility (Size i) const
 

MarketModel interface

Size numberOfFactors_
 
Size numberOfRates_
 
Size numberOfSteps_
 
std::vector< RateinitialRates_
 
std::vector< Spreaddisplacements_
 
EvolutionDescription evolution_
 
std::vector< MatrixpseudoRoots_
 
const std::vector< Rate > & initialRates () const override
 
const std::vector< Spread > & displacements () const override
 
const EvolutionDescriptionevolution () const override
 
Size numberOfRates () const override
 
Size numberOfFactors () const override
 
Size numberOfSteps () const override
 
const MatrixpseudoRoot (Size i) const override
 

Detailed Description

Abcd-interpolated volatility structure

Definition at line 36 of file abcdvol.hpp.

Constructor & Destructor Documentation

◆ AbcdVol()

AbcdVol ( Real  a,
Real  b,
Real  c,
Real  d,
const std::vector< Real > &  ks,
const ext::shared_ptr< PiecewiseConstantCorrelation > &  corr,
const EvolutionDescription evolution,
Size  numberOfFactors,
const std::vector< Rate > &  initialRates,
const std::vector< Spread > &  displacements 
)

Definition at line 31 of file abcdvol.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ initialRates()

const std::vector< Rate > & initialRates ( ) const
overridevirtual

Implements MarketModel.

Definition at line 68 of file abcdvol.hpp.

◆ displacements()

const std::vector< Spread > & displacements ( ) const
overridevirtual

Implements MarketModel.

Definition at line 72 of file abcdvol.hpp.

+ Here is the caller graph for this function:

◆ evolution()

const EvolutionDescription & evolution ( ) const
overridevirtual

Implements MarketModel.

Definition at line 76 of file abcdvol.hpp.

+ Here is the caller graph for this function:

◆ numberOfRates()

Size numberOfRates ( ) const
overridevirtual

Implements MarketModel.

Definition at line 80 of file abcdvol.hpp.

◆ numberOfFactors()

Size numberOfFactors ( ) const
overridevirtual

Implements MarketModel.

Definition at line 84 of file abcdvol.hpp.

+ Here is the caller graph for this function:

◆ numberOfSteps()

Size numberOfSteps ( ) const
overridevirtual

Implements MarketModel.

Definition at line 88 of file abcdvol.hpp.

◆ pseudoRoot()

const Matrix & pseudoRoot ( Size  i) const
overridevirtual

Implements MarketModel.

Definition at line 92 of file abcdvol.hpp.

Member Data Documentation

◆ numberOfFactors_

Size numberOfFactors_
private

Definition at line 59 of file abcdvol.hpp.

◆ numberOfRates_

Size numberOfRates_
private

Definition at line 59 of file abcdvol.hpp.

◆ numberOfSteps_

Size numberOfSteps_
private

Definition at line 59 of file abcdvol.hpp.

◆ initialRates_

std::vector<Rate> initialRates_
private

Definition at line 60 of file abcdvol.hpp.

◆ displacements_

std::vector<Spread> displacements_
private

Definition at line 61 of file abcdvol.hpp.

◆ evolution_

EvolutionDescription evolution_
private

Definition at line 62 of file abcdvol.hpp.

◆ pseudoRoots_

std::vector<Matrix> pseudoRoots_
private

Definition at line 63 of file abcdvol.hpp.