|
QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
#include <cashrebate.hpp>
Inheritance diagram for MarketModelCashRebate:
Collaboration diagram for MarketModelCashRebate:Public Member Functions | |
| MarketModelCashRebate (EvolutionDescription evolution, const std::vector< Time > &paymentTimes, Matrix amounts, Size numberOfProducts) | |
Public Member Functions inherited from MarketModelMultiProduct | |
| virtual | ~MarketModelMultiProduct ()=default |
| virtual std::vector< Size > | suggestedNumeraires () const =0 |
| virtual const EvolutionDescription & | evolution () const =0 |
| virtual std::vector< Time > | possibleCashFlowTimes () 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 ¤tState, 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< MarketModelMultiProduct > | clone () const =0 |
| returns a newly-allocated copy of itself More... | |
MarketModelMultiProduct interface | |
| EvolutionDescription | evolution_ |
| std::vector< Time > | paymentTimes_ |
| Matrix | amounts_ |
| Size | numberOfProducts_ |
| Size | currentIndex_ |
| std::vector< Size > | suggestedNumeraires () const override |
| const EvolutionDescription & | evolution () const override |
| std::vector< Time > | possibleCashFlowTimes () 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 ¤tState, 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< MarketModelMultiProduct > | clone () const override |
| returns a newly-allocated copy of itself More... | |
Class to model receipt of a fixed cash amount once. Product terminates immediately. Mainly useful as rebate received when another product is cancelled.
Definition at line 36 of file cashrebate.hpp.
| MarketModelCashRebate | ( | EvolutionDescription | evolution, |
| const std::vector< Time > & | paymentTimes, | ||
| Matrix | amounts, | ||
| Size | numberOfProducts | ||
| ) |
|
overridevirtual |
Implements MarketModelMultiProduct.
Definition at line 69 of file cashrebate.cpp.
|
overridevirtual |
Implements MarketModelMultiProduct.
Definition at line 74 of file cashrebate.cpp.
|
overridevirtual |
Implements MarketModelMultiProduct.
Definition at line 48 of file cashrebate.cpp.
|
overridevirtual |
Implements MarketModelMultiProduct.
Definition at line 53 of file cashrebate.cpp.
|
overridevirtual |
Implements MarketModelMultiProduct.
Definition at line 58 of file cashrebate.cpp.
|
overridevirtual |
during simulation put product at start of path
Implements MarketModelMultiProduct.
Definition at line 63 of file cashrebate.cpp.
|
overridevirtual |
return value indicates whether path is finished, TRUE means done
Implements MarketModelMultiProduct.
Definition at line 80 of file cashrebate.cpp.
|
overridevirtual |
returns a newly-allocated copy of itself
Implements MarketModelMultiProduct.
Definition at line 97 of file cashrebate.cpp.
|
private |
Definition at line 57 of file cashrebate.hpp.
|
private |
Definition at line 58 of file cashrebate.hpp.
|
private |
Definition at line 59 of file cashrebate.hpp.
|
private |
Definition at line 60 of file cashrebate.hpp.
|
private |
Definition at line 62 of file cashrebate.hpp.