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

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

+ Inheritance diagram for MarketModelPathwiseInverseFloater:
+ Collaboration diagram for MarketModelPathwiseInverseFloater:

Public Member Functions

 MarketModelPathwiseInverseFloater (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)
 
 ~MarketModelPathwiseInverseFloater () 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< RealfixedAccruals_
 
std::vector< RealfloatingAccruals_
 
std::vector< RealfixedStrikes_
 
std::vector< RealfixedMultipliers_
 
std::vector< RealfloatingSpreads_
 
std::vector< TimepaymentTimes_
 
Real multiplier_
 
Size lastIndex_
 
EvolutionDescription evolution_
 
Size currentIndex_
 

Detailed Description

Pathwise product inverse floater for doing Greeks Tested in MarketModels::testInverseFloater()

Examples
MarketModels.cpp.

Definition at line 42 of file pathwiseproductinversefloater.hpp.

Constructor & Destructor Documentation

◆ MarketModelPathwiseInverseFloater()

MarketModelPathwiseInverseFloater ( 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 34 of file pathwiseproductinversefloater.cpp.

+ Here is the call graph for this function:

◆ ~MarketModelPathwiseInverseFloater()

~MarketModelPathwiseInverseFloater ( )
overridedefault

Member Function Documentation

◆ suggestedNumeraires()

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

◆ evolution()

const EvolutionDescription & evolution ( ) const
overridevirtual

◆ possibleCashFlowTimes()

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

◆ numberOfProducts()

Size numberOfProducts ( ) const
overridevirtual

◆ maxNumberOfCashFlowsPerProductPerStep()

Size maxNumberOfCashFlowsPerProductPerStep ( ) const
overridevirtual

◆ alreadyDeflated()

bool alreadyDeflated ( ) const
overridevirtual

Implements MarketModelPathwiseMultiProduct.

Definition at line 29 of file pathwiseproductinversefloater.cpp.

◆ reset()

void reset ( )
overridevirtual

during simulation put product at start of path

Implements MarketModelPathwiseMultiProduct.

Definition at line 137 of file pathwiseproductinversefloater.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 63 of file pathwiseproductinversefloater.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 102 of file pathwiseproductinversefloater.cpp.

Member Data Documentation

◆ rateTimes_

std::vector<Real> rateTimes_
private

Definition at line 79 of file pathwiseproductinversefloater.hpp.

◆ fixedAccruals_

std::vector<Real> fixedAccruals_
private

Definition at line 79 of file pathwiseproductinversefloater.hpp.

◆ floatingAccruals_

std::vector<Real> floatingAccruals_
private

Definition at line 79 of file pathwiseproductinversefloater.hpp.

◆ fixedStrikes_

std::vector<Real> fixedStrikes_
private

Definition at line 79 of file pathwiseproductinversefloater.hpp.

◆ fixedMultipliers_

std::vector<Real> fixedMultipliers_
private

Definition at line 79 of file pathwiseproductinversefloater.hpp.

◆ floatingSpreads_

std::vector<Real> floatingSpreads_
private

Definition at line 79 of file pathwiseproductinversefloater.hpp.

◆ paymentTimes_

std::vector<Time> paymentTimes_
private

Definition at line 80 of file pathwiseproductinversefloater.hpp.

◆ multiplier_

Real multiplier_
private

Definition at line 82 of file pathwiseproductinversefloater.hpp.

◆ lastIndex_

Size lastIndex_
private

Definition at line 83 of file pathwiseproductinversefloater.hpp.

◆ evolution_

EvolutionDescription evolution_
private

Definition at line 85 of file pathwiseproductinversefloater.hpp.

◆ currentIndex_

Size currentIndex_
private

Definition at line 88 of file pathwiseproductinversefloater.hpp.