|
QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
analytic engine for partial-time barrier options. More...
#include <analyticpartialtimebarrieroptionengine.hpp>
Inheritance diagram for AnalyticPartialTimeBarrierOptionEngine:
Collaboration diagram for AnalyticPartialTimeBarrierOptionEngine:Public Member Functions | |
| AnalyticPartialTimeBarrierOptionEngine (ext::shared_ptr< GeneralizedBlackScholesProcess > process) | |
| void | calculate () const override |
Public Member Functions inherited from GenericEngine< PartialTimeBarrierOption::arguments, PartialTimeBarrierOption::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 ()=default | |
| 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 | calculate (PartialTimeBarrierOption::arguments &arguments, const ext::shared_ptr< PlainVanillaPayoff > &payoff, const ext::shared_ptr< GeneralizedBlackScholesProcess > &process) const |
| Real | underlying () const |
| Time | residualTime () const |
| Time | coverEventTime () const |
| Volatility | volatility (Time t, Real strike) const |
| Real | M (Real a, Real b, Real rho) const |
| Real | d1 (Real strike, Rate b) const |
| Real | d2 (Real strike, Rate b) const |
| Real | e1 (Real barrier, Real strike, Rate b) const |
| Real | e2 (Real barrier, Real strike, Rate b) const |
| Real | e3 (Real barrier, Real strike, Rate b) const |
| Real | e4 (Real barrier, Real strike, Rate b) const |
| Real | f1 (Real barrier, Real strike, Rate b) const |
| Real | f2 (Real barrier, Real strike, Rate b) const |
| Real | rho () const |
| Rate | mu (Real strike, Rate b) const |
| Real | CoB2 (Barrier::Type barrierType, Real barrier, Real strike, Rate r, Rate q) const |
| Real | CoB1 (Real barrier, Real strike, Rate r, Rate q) const |
| Real | CA (Integer n, Real barrier, Real strike, Rate r, Rate q) const |
| Real | CIA (Integer n, Real barrier, Real strike, Rate r, Rate q) const |
| Real | g1 (Real barrier, Real strike, Rate b) const |
| Real | g2 (Real barrier, Real strike, Rate b) const |
| Real | g3 (Real barrier, Real strike, Rate b) const |
| Real | g4 (Real barrier, Real strike, Rate b) const |
| Real | HS (Real S, Real H, Real power) const |
Private Attributes | |
| ext::shared_ptr< GeneralizedBlackScholesProcess > | process_ |
Additional Inherited Members | |
Public Types inherited from Observer | |
| typedef set_type::iterator | iterator |
Protected Attributes inherited from GenericEngine< PartialTimeBarrierOption::arguments, PartialTimeBarrierOption::results > | |
| PartialTimeBarrierOption::arguments | arguments_ |
| PartialTimeBarrierOption::results | results_ |
analytic engine for partial-time barrier options.
Formulas from Haug, Option Pricing Formulas.
It doesn't currently cover the case of knock-in partial-time end options.
Definition at line 38 of file analyticpartialtimebarrieroptionengine.hpp.
|
explicit |
Definition at line 28 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
|
overridevirtual |
Implements PricingEngine.
Definition at line 101 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 34 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
|
private |
Definition at line 266 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the caller graph for this function:
|
private |
Definition at line 270 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the caller graph for this function:
|
private |
Definition at line 274 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the caller graph for this function:
|
private |
Definition at line 278 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the caller graph for this function:Definition at line 295 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 309 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 315 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 321 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 327 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 333 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 339 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 282 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 290 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 300 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 304 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 140 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 188 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 242 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 227 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 344 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 350 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 356 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 362 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:Definition at line 368 of file analyticpartialtimebarrieroptionengine.cpp.
Here is the caller graph for this function:
|
private |
Definition at line 46 of file analyticpartialtimebarrieroptionengine.hpp.