|
QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
|
Pricing engine for basket option on multiple underlyings. More...
#include <ql/pricingengines/basket/denglizhoubasketengine.hpp>
Public Member Functions | |
| DengLiZhouBasketEngine (std::vector< ext::shared_ptr< GeneralizedBlackScholesProcess > > processes, Matrix rho) | |
| void | calculate () const override |
| Public Member Functions inherited from GenericEngine< BasketOption::arguments, BasketOption::results > | |
| PricingEngine::arguments * | getArguments () const override |
| const PricingEngine::results * | getResults () const override |
| void | reset () override |
| void | update () override |
| Public Member Functions inherited from Observable | |
| Observable (const Observable &) | |
| Observable & | operator= (const Observable &) |
| Observable (Observable &&)=delete | |
| Observable & | operator= (Observable &&)=delete |
| void | notifyObservers () |
| Public Member Functions inherited from Observer | |
| Observer (const Observer &) | |
| Observer & | operator= (const Observer &) |
| std::pair< iterator, bool > | registerWith (const ext::shared_ptr< Observable > &) |
| void | registerWithObservables (const ext::shared_ptr< Observer > &) |
| Size | unregisterWith (const ext::shared_ptr< Observable > &) |
| void | unregisterWithAll () |
| virtual void | deepUpdate () |
Additional Inherited Members | |
| Public Types inherited from Observer | |
| typedef set_type::iterator | iterator |
| Protected Attributes inherited from GenericEngine< BasketOption::arguments, BasketOption::results > | |
| BasketOption::arguments | arguments_ |
| BasketOption::results | results_ |
Pricing engine for basket option on multiple underlyings.
This class implements the pricing formula from "Multi-asset Spread Option Pricing and Hedging", S. Deng, M. Li, J.Zhou, 2008 https://mpra.ub.uni-muenchen.de/8259/1/MPRA_paper_8259.pdf
The typo in formula (37) for J^2 is corrected
This pricing formula only works if exactly one asset weight is positive. If more than one weight is positive then a mapping of the sum of correlated log-normal processes onto one log-normal process has to be carried out. This implementation is using: "WKB Approximation for the Sum of Two Correlated Lognormal Random Variables", C.F. Lo 2013 https://www.m-hikari.com/ams/ams-2013/ams-125-128-2013/loAMS125-128-2013.pdf for this task.
|
overridevirtual |
Implements PricingEngine.