QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.34
|
Pricing engine for barrier options using analytical formulae. More...
#include <analyticbarrierengine.hpp>
Public Member Functions | |
AnalyticBarrierEngine (ext::shared_ptr< GeneralizedBlackScholesProcess > process) | |
void | calculate () const override |
Public Member Functions inherited from GenericEngine< BarrierOption::arguments, BarrierOption::results > | |
PricingEngine::arguments * | getArguments () const override |
const PricingEngine::results * | getResults () const override |
void | reset () override |
void | update () override |
Public Member Functions inherited from PricingEngine | |
~PricingEngine () override=default | |
virtual arguments * | getArguments () const =0 |
virtual const results * | getResults () const =0 |
virtual void | reset ()=0 |
virtual void | calculate () const =0 |
Public Member Functions inherited from Observable | |
Observable () | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
Observable (Observable &&)=delete | |
Observable & | operator= (Observable &&)=delete |
virtual | ~Observable ()=default |
void | notifyObservers () |
Public Member Functions inherited from Observer | |
Observer ()=default | |
Observer (const Observer &) | |
Observer & | operator= (const Observer &) |
virtual | ~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 | update ()=0 |
virtual void | deepUpdate () |
Private Member Functions | |
Real | underlying () const |
Real | strike () const |
Volatility | volatility () const |
Real | barrier () const |
Real | rebate () const |
Real | stdDeviation () const |
Rate | riskFreeRate () const |
DiscountFactor | riskFreeDiscount () const |
Rate | dividendYield () const |
DiscountFactor | dividendDiscount () const |
Rate | mu () const |
Real | muSigma () const |
Real | A (Real phi) const |
Real | B (Real phi) const |
Real | C (Real eta, Real phi) const |
Real | D (Real eta, Real phi) const |
Real | E (Real eta) const |
Real | F (Real eta) const |
Private Attributes | |
ext::shared_ptr< GeneralizedBlackScholesProcess > | process_ |
CumulativeNormalDistribution | f_ |
Additional Inherited Members | |
Public Types inherited from Observer | |
typedef set_type::iterator | iterator |
Protected Member Functions inherited from BarrierOption::engine | |
bool | triggered (Real underlying) const |
Protected Attributes inherited from GenericEngine< BarrierOption::arguments, BarrierOption::results > | |
BarrierOption::arguments | arguments_ |
BarrierOption::results | results_ |
Pricing engine for barrier options using analytical formulae.
The formulas are taken from "Option pricing formulas", E.G. Haug, McGraw-Hill, p.69 and following.
Definition at line 46 of file analyticbarrierengine.hpp.
AnalyticBarrierEngine | ( | ext::shared_ptr< GeneralizedBlackScholesProcess > | process | ) |
|
overridevirtual |
Implements PricingEngine.
Definition at line 36 of file analyticbarrierengine.cpp.
|
private |
Definition at line 117 of file analyticbarrierengine.cpp.
|
private |
Definition at line 121 of file analyticbarrierengine.cpp.
|
private |
Definition at line 128 of file analyticbarrierengine.cpp.
|
private |
Definition at line 140 of file analyticbarrierengine.cpp.
|
private |
Definition at line 144 of file analyticbarrierengine.cpp.
|
private |
Definition at line 134 of file analyticbarrierengine.cpp.
|
private |
Definition at line 148 of file analyticbarrierengine.cpp.
|
private |
Definition at line 155 of file analyticbarrierengine.cpp.
|
private |
Definition at line 160 of file analyticbarrierengine.cpp.
|
private |
Definition at line 167 of file analyticbarrierengine.cpp.
|
private |
Definition at line 172 of file analyticbarrierengine.cpp.
|
private |
Definition at line 177 of file analyticbarrierengine.cpp.
Definition at line 181 of file analyticbarrierengine.cpp.
Definition at line 191 of file analyticbarrierengine.cpp.
Definition at line 200 of file analyticbarrierengine.cpp.
Definition at line 213 of file analyticbarrierengine.cpp.
Definition at line 226 of file analyticbarrierengine.cpp.
|
private |
Definition at line 52 of file analyticbarrierengine.hpp.
|
private |
Definition at line 53 of file analyticbarrierengine.hpp.