#include <LmmLattice.h>
Inheritance diagram for LmmLattice:
Definition at line 133 of file LmmLattice.h.
Public Member Functions | |
int | getNumberOfFactors () |
LiborFactorLoading * | getFactorLoading () |
int | getSteps () |
Real | getTimeStep () |
int | getTenor (int s) |
Real | transitionProbability (int i) |
LmmLattice (int q, LiborFactorLoading *fl, int t, int steps=1, bool verbose=false) | |
virtual | ~LmmLattice () |
void | rescaleVols () |
void | testFactorization () const |
std::ostream & | printSelf (std::ostream &os) const |
const RealArray1D & | Hvect (int p, StandardBrownianNode *node, int s) |
Real | L (int j, StandardBrownianNode *node, int s) |
Real | H_pq (int p, int q, StandardBrownianNode *node, int s) |
Real | swapRate (int p, int q, StandardBrownianNode *node, int s) |
Real | forwardSwaptionPayoff (int p, int q, Real kappa, StandardBrownianNode *node, int s) |
Real | forwardCapletPayoff (int i, Real kappa, StandardBrownianNode *node, int s) |
Real | forwardBondCallPayoff (BondCall *bc, StandardBrownianNode *node, int s) |
Static Public Member Functions | |
LmmLattice * | sample (int r, int n, int p, int nSteps, bool verbose=false) |
void | test (int r, int n) |
Protected Attributes | |
LiborFactorLoading * | factorLoading |
int | n |
int | r |
int | nSteps |
Real | delta |
Real | dt |
Real | a |
RealArray1D | sg |
RealArray1D | log_U0 |
RealArray1D | mu |
RealMatrix | R |
|
|
|
Definition at line 197 of file LmmLattice.h. |
|
The number of factors. Definition at line 164 of file LmmLattice.h. |
|
The factor loading of the underlying LMM. Definition at line 167 of file LmmLattice.h. |
|
The number of time steps per Libor compounding period. Definition at line 170 of file LmmLattice.h. |
|
The size of the time step. Implements Lattice< StandardBrownianNode >. Definition at line 173 of file LmmLattice.h. References Real. |
|
Returns largest t such that .
Definition at line 178 of file LmmLattice.h. |
|
Time and state independent transition probability along edge i. Declared final (hence nonvirtual) for speed. Implements Lattice< StandardBrownianNode >. Definition at line 183 of file LmmLattice.h. References Real. |
|
A sample r=2,3 factor lattice in dimension n (number of Libor accrual periods) built up to time T_p with nSteps time steps per accrual period.
|
|
Rescales the rows of the rank reduced pseudo square root R of the log(U_j)-correlation matrix C to unity (book, 8.1.2) This preserves the Libor volatilities but makes the approximation less accurate. For example in the case of swaptions the rescaled matrix will overestimate prices while prices will be underestimated without rescaling. Rescaling is irreversible. |
|
Tests the accuracy of the rank r factorization of the correlation matrix. |
|
|
|
Builds an r=2,3 factor lattice in in dimension n (number of Libor accrual periods) up tp time with 3 time steps per Libor accrual period) and runs the selfTest(). |
|
The vector of accrual factors at the node. Natural indices j=p,...,n. This is a view of this vector in a static workspace (speed, no memory allocation). If the vector has to be preserved it must be copied before commands execute which overwrite the workspace.
|
|
Libor at the node.
|
|
The forward price of the annuity over the interval [T_p,T_q] at this node.
|
|
The swaprate for a swap on [T_p,T_q] at the node.
|
|
Payoff of a forward swaption with strike rate kappa exercising into a swap on the interval [T_p,T_q] if exercised at this node. Payoff is compounded forward to the horizon T_n. |
|
Forward compounded payoff of caplet(i) with strike rate kappa at this node. Assumes that the node lives at the Libor reset point at which Libor for this caplet is set.
|
|
Forward payoff of the BondCall bc if exercised at this node.
|
|
Definition at line 138 of file LmmLattice.h. |
|
Definition at line 140 of file LmmLattice.h. |
|
Definition at line 140 of file LmmLattice.h. |
|
Definition at line 140 of file LmmLattice.h. |
|
constant Libor accrual period length. Definition at line 145 of file LmmLattice.h. |
|
time step. Definition at line 147 of file LmmLattice.h. |
|
ticksize a=sqrt(dt) of a standard Brownian motion over a single time step. Definition at line 149 of file LmmLattice.h. |
|
the volatility scaling factors c_j, book, 6.11.1. Definition at line 151 of file LmmLattice.h. |
|
the initial values , book 6.8. Definition at line 153 of file LmmLattice.h. |
|
drift -sigma_j^2*dt/2 of Y_j=log(U_j) over a single time step. Definition at line 155 of file LmmLattice.h. |
|
rank r approximate pseudo square root of the log(U_j) covariance matrix. Definition at line 157 of file LmmLattice.h. |