QuantLib
A free/open-source library for quantitative finance
Reference manual - version 1.5
List of all members
SingleProductComposite Class Reference

Composition of one or more market-model products. More...

#include <ql/models/marketmodels/products/singleproductcomposite.hpp>

+ Inheritance diagram for SingleProductComposite:

Public Member Functions

MarketModelMultiProduct interface
Size numberOfProducts () const
 
Size maxNumberOfCashFlowsPerProductPerStep () const
 
bool nextTimeStep (const CurveState &currentState, std::vector< Size > &numberCashFlowsThisStep, std::vector< std::vector< CashFlow > > &cashFlowsGenerated)
 return value indicates whether path is finished, TRUE means done
 
std::auto_ptr
< MarketModelMultiProduct
clone () const
 returns a newly-allocated copy of itself
 
- Public Member Functions inherited from MarketModelComposite
const EvolutionDescriptionevolution () const
 
std::vector< SizesuggestedNumeraires () const
 
std::vector< TimepossibleCashFlowTimes () const
 
void reset ()
 during simulation put product at start of path
 
void add (const Clone< MarketModelMultiProduct > &, Real multiplier=1.0)
 
void subtract (const Clone< MarketModelMultiProduct > &, Real multiplier=1.0)
 
void finalize ()
 
Size size () const
 
const MarketModelMultiProductitem (Size i) const
 
MarketModelMultiProductitem (Size i)
 
Real multiplier (Size i) const
 

Additional Inherited Members

- Protected Types inherited from MarketModelComposite
typedef std::vector
< SubProduct >::iterator 
iterator
 
typedef std::vector
< SubProduct >::const_iterator 
const_iterator
 
- Protected Attributes inherited from MarketModelComposite
std::vector< SubProduct > components_
 
std::vector< TimerateTimes_
 
std::vector< TimeevolutionTimes_
 
EvolutionDescription evolution_
 
bool finalized_
 
Size currentIndex_
 
std::vector< TimecashflowTimes_
 
std::vector< std::vector< Time > > allEvolutionTimes_
 
std::vector< std::valarray
< bool > > 
isInSubset_
 

Detailed Description

Composition of one or more market-model products.

Instances of this class build a single market-model product by composing two or more subproducts.

Precondition
All subproducts must have the same rate times.