BinomialVanillaEngine< T > Class Template Reference

Pricing engine for vanilla options using binomial trees. More...

#include <ql/pricingengines/vanilla/binomialengine.hpp>

Inherits OneAssetOption::engine.

Public Member Functions

 BinomialVanillaEngine (const boost::shared_ptr< GeneralizedBlackScholesProcess > &process, Size timeSteps)
 
void calculate () const
 
- Public Member Functions inherited from GenericEngine< OneAssetOption::arguments, OneAssetOption::results >
PricingEngine::arguments * getArguments () const
 
const PricingEngine::results * getResults () const
 
void reset ()
 
void update ()
 
- Public Member Functions inherited from Observable
 Observable (const Observable &)
 
Observableoperator= (const Observable &)
 
void notifyObservers ()
 
- Public Member Functions inherited from Observer
 Observer (const Observer &)
 
Observeroperator= (const Observer &)
 
std::pair< std::set
< boost::shared_ptr
< Observable > >::iterator,
bool > 
registerWith (const boost::shared_ptr< Observable > &)
 
Size unregisterWith (const boost::shared_ptr< Observable > &)
 
void unregisterWithAll ()
 

Additional Inherited Members

- Protected Attributes inherited from GenericEngine< OneAssetOption::arguments, OneAssetOption::results >
OneAssetOption::arguments arguments_
 
OneAssetOption::results results_
 

Detailed Description

template<class T>
class QuantLib::BinomialVanillaEngine< T >

Pricing engine for vanilla options using binomial trees.

Tests:
the correctness of the returned values is tested by checking it against analytic results.
Possible enhancements:
Greeks are not overly accurate. They could be improved by building a tree so that it has three points at the current time. The value would be fetched from the middle one, while the two side points would be used for estimating partial derivatives.
Examples:
EquityOption.cpp.