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

#include <ql/models/marketmodels/products/multistep/multistepinversefloater.hpp>

+ Inheritance diagram for MultiStepInverseFloater:
+ Collaboration diagram for MultiStepInverseFloater:

Public Member Functions

 MultiStepInverseFloater (const std::vector< Time > &rateTimes, std::vector< Real > fixedAccruals, const std::vector< Real > &floatingAccruals, const std::vector< Real > &fixedStrikes, const std::vector< Real > &fixedMultipliers, const std::vector< Real > &floatingSpreads, const std::vector< Time > &paymentTimes, bool payer=true)
 
- Public Member Functions inherited from MultiProductMultiStep
 MultiProductMultiStep (std::vector< Time > rateTimes)
 
std::vector< SizesuggestedNumeraires () const override
 
const EvolutionDescriptionevolution () const override
 
- 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< RealfixedAccruals_
 
std::vector< RealfloatingAccruals_
 
std::vector< RealfixedStrikes_
 
std::vector< RealfixedMultipliers_
 
std::vector< RealfloatingSpreads_
 
std::vector< TimepaymentTimes_
 
Real multiplier_
 
Size lastIndex_
 
Size currentIndex_
 
std::vector< TimepossibleCashFlowTimes () const override
 
Size numberOfProducts () const override
 
Size maxNumberOfCashFlowsPerProductPerStep () 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< CashFlow > > &cashFlowsGenerated) override
 return value indicates whether path is finished, TRUE means done More...
 
std::unique_ptr< MarketModelMultiProductclone () const override
 returns a newly-allocated copy of itself More...
 

Additional Inherited Members

- Protected Attributes inherited from MultiProductMultiStep
std::vector< TimerateTimes_
 
EvolutionDescription evolution_
 

Detailed Description

Examples
MarketModels.cpp.

Definition at line 32 of file multistepinversefloater.hpp.

Constructor & Destructor Documentation

◆ MultiStepInverseFloater()

MultiStepInverseFloater ( const std::vector< Time > &  rateTimes,
std::vector< Real fixedAccruals,
const std::vector< Real > &  floatingAccruals,
const std::vector< Real > &  fixedStrikes,
const std::vector< Real > &  fixedMultipliers,
const std::vector< Real > &  floatingSpreads,
const std::vector< Time > &  paymentTimes,
bool  payer = true 
)

Definition at line 27 of file multistepinversefloater.cpp.

+ Here is the call graph for this function:

Member Function Documentation

◆ possibleCashFlowTimes()

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

Implements MarketModelMultiProduct.

Definition at line 67 of file multistepinversefloater.hpp.

◆ numberOfProducts()

Size numberOfProducts ( ) const
overridevirtual

Implements MarketModelMultiProduct.

Definition at line 71 of file multistepinversefloater.hpp.

◆ maxNumberOfCashFlowsPerProductPerStep()

Size maxNumberOfCashFlowsPerProductPerStep ( ) const
overridevirtual

Implements MarketModelMultiProduct.

Definition at line 76 of file multistepinversefloater.hpp.

◆ reset()

void reset ( )
overridevirtual

during simulation put product at start of path

Implements MarketModelMultiProduct.

Definition at line 80 of file multistepinversefloater.hpp.

◆ nextTimeStep()

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

return value indicates whether path is finished, TRUE means done

Implements MarketModelMultiProduct.

Definition at line 49 of file multistepinversefloater.cpp.

+ Here is the call graph for this function:

◆ clone()

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

returns a newly-allocated copy of itself

Implements MarketModelMultiProduct.

Definition at line 69 of file multistepinversefloater.cpp.

Member Data Documentation

◆ fixedAccruals_

std::vector<Real> fixedAccruals_
private

Definition at line 54 of file multistepinversefloater.hpp.

◆ floatingAccruals_

std::vector<Real> floatingAccruals_
private

Definition at line 54 of file multistepinversefloater.hpp.

◆ fixedStrikes_

std::vector<Real> fixedStrikes_
private

Definition at line 54 of file multistepinversefloater.hpp.

◆ fixedMultipliers_

std::vector<Real> fixedMultipliers_
private

Definition at line 54 of file multistepinversefloater.hpp.

◆ floatingSpreads_

std::vector<Real> floatingSpreads_
private

Definition at line 54 of file multistepinversefloater.hpp.

◆ paymentTimes_

std::vector<Time> paymentTimes_
private

Definition at line 55 of file multistepinversefloater.hpp.

◆ multiplier_

Real multiplier_
private

Definition at line 57 of file multistepinversefloater.hpp.

◆ lastIndex_

Size lastIndex_
private

Definition at line 58 of file multistepinversefloater.hpp.

◆ currentIndex_

Size currentIndex_
private

Definition at line 60 of file multistepinversefloater.hpp.