AnalyticDoubleBarrierBinaryEngine Class Reference
Pricing engines » Barrier option engines

Analytic pricing engine for double barrier binary options. More...

`#include <ql/experimental/barrieroption/analyticdoublebarrierbinaryengine.hpp>`

Inheritance diagram for AnalyticDoubleBarrierBinaryEngine:
[legend]

## Public Member Functions

| AnalyticDoubleBarrierBinaryEngine (const ext::shared_ptr< GeneralizedBlackScholesProcess > &)
void | calculate () const
Public Member Functions inherited from GenericEngine< DoubleBarrierOption::arguments, DoubleBarrierOption::results >
PricingEngine::arguments * | getArguments () const
const PricingEngine::results * | getResults () const
void | reset ()
void | update ()
Public Member Functions inherited from PricingEngine
virtual arguments * | getArguments () const =0
virtual const results * | getResults () const =0
Public Member Functions inherited from Observable
| Observable (const Observable &)
Observable & | operator= (const Observable &)
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 boost::unordered_set< ext::shared_ptr< Observable > > | set_type
typedef set_type::iterator | iterator
Protected Member Functions inherited from DoubleBarrierOption::engine
bool | triggered (Real underlying) const
Protected Attributes inherited from GenericEngine< DoubleBarrierOption::arguments, DoubleBarrierOption::results >
DoubleBarrierOption::arguments | arguments_
DoubleBarrierOption::results | results_

## Detailed Description

Analytic pricing engine for double barrier binary options.

This engine implements C.H.Hui series ("One-Touch Double Barrier Binary Option Values", Applied Financial Economics 6/1996), as described in "The complete guide to option pricing formulas 2nd Ed", E.G. Haug, McGraw-Hill, p.180

The Knock In part of KI+KO and KO+KI options pays at hit, while the Double Knock In pays at end. This engine thus requires European esercise for Double Knock options, and American exercise for KIKO/KOKI.

greeks are calculated by simple numeric derivation

Tests:
  - the correctness of the returned value is tested by reproducing results available in literature.