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
MultiProductMultiStep Class Reference

Multiple-step market-model product. More...

#include <multiproductmultistep.hpp>

+ Inheritance diagram for MultiProductMultiStep:
+ Collaboration diagram for MultiProductMultiStep:

Public Member Functions

 MultiProductMultiStep (std::vector< Time > rateTimes)
 
- Public Member Functions inherited from MarketModelMultiProduct
virtual ~MarketModelMultiProduct ()=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 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< CashFlow > > &cashFlowsGenerated)=0
 return value indicates whether path is finished, TRUE means done More...
 
virtual std::unique_ptr< MarketModelMultiProductclone () const =0
 returns a newly-allocated copy of itself More...
 

MarketModelMultiProduct interface

std::vector< TimerateTimes_
 
EvolutionDescription evolution_
 
std::vector< SizesuggestedNumeraires () const override
 
const EvolutionDescriptionevolution () const override
 

Detailed Description

Multiple-step market-model product.

This is the abstract base class that encapsulates the notion of a MarketModelMultiProduct which can be evaluated in a more than one step (aka Rebonato's long jump).

Definition at line 34 of file multiproductmultistep.hpp.

Constructor & Destructor Documentation

◆ MultiProductMultiStep()

MultiProductMultiStep ( std::vector< Time rateTimes)
explicit

Definition at line 26 of file multiproductmultistep.cpp.

Member Function Documentation

◆ suggestedNumeraires()

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

Implements MarketModelMultiProduct.

Definition at line 46 of file multiproductmultistep.cpp.

◆ evolution()

const EvolutionDescription & evolution ( ) const
overridevirtual

Implements MarketModelMultiProduct.

Reimplemented in ExerciseAdapter.

Definition at line 42 of file multiproductmultistep.cpp.

Member Data Documentation

◆ rateTimes_

std::vector<Time> rateTimes_
protected

Definition at line 43 of file multiproductmultistep.hpp.

◆ evolution_

EvolutionDescription evolution_
protected

Definition at line 44 of file multiproductmultistep.hpp.