TreeLattice Class Template Reference
[Lattice methods]
#include <ql/methods/lattices/lattice.hpp>
Inheritance diagram for TreeLattice:

Detailed Description
template<class Impl>
class QuantLib::TreeLattice< Impl >
Tree-based lattice-method base class.
This class defines a lattice method that is able to rollback (with discount) a discretized asset object. It will be based on one or more trees.
Derived classes must implement the following interface:
public: DiscountFactor discount(Size i, Size index) const; Size descendant(Size i, Size index, Size branch) const; Real probability(Size i, Size index, Size branch) const;
public: void stepback(Size i, const Array& values, Array& newValues) const;
Public Member Functions | |
TreeLattice (const TimeGrid &timeGrid, Size n) | |
const Array & | statePrices (Size i) const |
void | stepback (Size i, const Array &values, Array &newValues) const |
Lattice interface | |
void | initialize (DiscretizedAsset &, Time t) const |
initialize an asset at the given time. | |
void | rollback (DiscretizedAsset &, Time to) const |
void | partialRollback (DiscretizedAsset &, Time to) const |
Real | presentValue (DiscretizedAsset &) const |
Computes the present value of an asset using Arrow-Debrew prices. | |
Protected Member Functions | |
void | computeStatePrices (Size until) const |
Protected Attributes | |
std::vector< Array > | statePrices_ |
Member Function Documentation
void rollback | ( | DiscretizedAsset & | , | |
Time | to | |||
) | const [virtual] |
Roll back an asset until the given time, performing any needed adjustment.
Implements Lattice.
Reimplemented in TsiveriotisFernandesLattice.
void partialRollback | ( | DiscretizedAsset & | , | |
Time | to | |||
) | const [virtual] |
Roll back an asset until the given time, but do not perform the final adjustment.
- Warning:
- In version 0.3.7 and earlier, this method was called rollAlmostBack method and performed pre-adjustment. This is no longer true; when migrating your code, you'll have to replace calls such as: with the two statements:
method->rollAlmostBack(asset,t);
method->partialRollback(asset,t); asset->preAdjustValues();
Implements Lattice.
Reimplemented in TsiveriotisFernandesLattice.