QuantLib: a free/open-source library for quantitative finance
Fully annotated sources - version 1.32
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
MarketModelPathwiseCoterminalSwaptionsDeflated Class Reference

#include <ql/models/marketmodels/products/pathwise/pathwiseproductswaption.hpp>

+ Inheritance diagram for MarketModelPathwiseCoterminalSwaptionsDeflated:
+ Collaboration diagram for MarketModelPathwiseCoterminalSwaptionsDeflated:

Public Member Functions

 MarketModelPathwiseCoterminalSwaptionsDeflated (const std::vector< Time > &rateTimes, const std::vector< Rate > &strikes)
 
 ~MarketModelPathwiseCoterminalSwaptionsDeflated () override=default
 
std::vector< SizesuggestedNumeraires () const override
 
const EvolutionDescriptionevolution () const override
 
std::vector< TimepossibleCashFlowTimes () const override
 
Size numberOfProducts () const override
 
Size maxNumberOfCashFlowsPerProductPerStep () const override
 
bool alreadyDeflated () const override
 
void reset () override
 during simulation put product at start of path More...
 
bool nextTimeStep (const CurveState &currentState, std::vector< Size > &numberCashFlowsThisStep, std::vector< std::vector< MarketModelPathwiseMultiProduct::CashFlow > > &cashFlowsGenerated) override
 return value indicates whether path is finished, TRUE means done More...
 
std::unique_ptr< MarketModelPathwiseMultiProductclone () const override
 returns a newly-allocated copy of itself More...
 
- Public Member Functions inherited from MarketModelPathwiseMultiProduct
virtual ~MarketModelPathwiseMultiProduct ()=default
 
virtual std::vector< SizesuggestedNumeraires () const =0
 
virtual const EvolutionDescriptionevolution () const =0
 
virtual std::vector< TimepossibleCashFlowTimes () const =0
 
virtual Size numberOfProducts () const =0
 
virtual Size maxNumberOfCashFlowsPerProductPerStep () const =0
 
virtual bool alreadyDeflated () const =0
 
virtual void reset ()=0
 during simulation put product at start of path More...
 
virtual bool nextTimeStep (const CurveState &currentState, std::vector< Size > &numberCashFlowsThisStep, std::vector< std::vector< MarketModelPathwiseMultiProduct::CashFlow > > &cashFlowsGenerated)=0
 return value indicates whether path is finished, TRUE means done More...
 
virtual std::unique_ptr< MarketModelPathwiseMultiProductclone () const =0
 returns a newly-allocated copy of itself More...
 

Private Attributes

std::vector< RealrateTimes_
 
std::vector< Ratestrikes_
 
Size numberRates_
 
Size currentIndex_
 
EvolutionDescription evolution_
 

Detailed Description

Main use is to test market pathwise vegas. The swaptions are payers and co-terminal. The class is tested in TestPathwiseVegas by running against the numerical version below.

Definition at line 40 of file pathwiseproductswaption.hpp.

Constructor & Destructor Documentation

◆ MarketModelPathwiseCoterminalSwaptionsDeflated()

MarketModelPathwiseCoterminalSwaptionsDeflated ( const std::vector< Time > &  rateTimes,
const std::vector< Rate > &  strikes 
)

Definition at line 32 of file pathwiseproductswaption.cpp.

+ Here is the call graph for this function:

◆ ~MarketModelPathwiseCoterminalSwaptionsDeflated()

Member Function Documentation

◆ suggestedNumeraires()

std::vector< Size > suggestedNumeraires ( ) const
overridevirtual

Implements MarketModelPathwiseMultiProduct.

Definition at line 95 of file pathwiseproductswaption.cpp.

◆ evolution()

const EvolutionDescription & evolution ( ) const
overridevirtual

Implements MarketModelPathwiseMultiProduct.

Definition at line 104 of file pathwiseproductswaption.cpp.

◆ possibleCashFlowTimes()

std::vector< Time > possibleCashFlowTimes ( ) const
overridevirtual

Implements MarketModelPathwiseMultiProduct.

Definition at line 109 of file pathwiseproductswaption.cpp.

◆ numberOfProducts()

Size numberOfProducts ( ) const
overridevirtual

Implements MarketModelPathwiseMultiProduct.

Definition at line 114 of file pathwiseproductswaption.cpp.

◆ maxNumberOfCashFlowsPerProductPerStep()

Size maxNumberOfCashFlowsPerProductPerStep ( ) const
overridevirtual

Implements MarketModelPathwiseMultiProduct.

Definition at line 119 of file pathwiseproductswaption.cpp.

◆ alreadyDeflated()

bool alreadyDeflated ( ) const
overridevirtual

Implements MarketModelPathwiseMultiProduct.

Definition at line 27 of file pathwiseproductswaption.cpp.

◆ reset()

void reset ( )
overridevirtual

during simulation put product at start of path

Implements MarketModelPathwiseMultiProduct.

Definition at line 125 of file pathwiseproductswaption.cpp.

◆ nextTimeStep()

bool nextTimeStep ( const CurveState currentState,
std::vector< Size > &  numberCashFlowsThisStep,
std::vector< std::vector< MarketModelPathwiseMultiProduct::CashFlow > > &  cashFlowsGenerated 
)
overridevirtual

return value indicates whether path is finished, TRUE means done

Implements MarketModelPathwiseMultiProduct.

Definition at line 53 of file pathwiseproductswaption.cpp.

+ Here is the call graph for this function:

◆ clone()

std::unique_ptr< MarketModelPathwiseMultiProduct > clone ( ) const
overridevirtual

returns a newly-allocated copy of itself

Implements MarketModelPathwiseMultiProduct.

Definition at line 90 of file pathwiseproductswaption.cpp.

Member Data Documentation

◆ rateTimes_

std::vector<Real> rateTimes_
private

Definition at line 73 of file pathwiseproductswaption.hpp.

◆ strikes_

std::vector<Rate> strikes_
private

Definition at line 74 of file pathwiseproductswaption.hpp.

◆ numberRates_

Size numberRates_
private

Definition at line 75 of file pathwiseproductswaption.hpp.

◆ currentIndex_

Size currentIndex_
private

Definition at line 77 of file pathwiseproductswaption.hpp.

◆ evolution_

EvolutionDescription evolution_
private

Definition at line 79 of file pathwiseproductswaption.hpp.