QuantLib
A free/open-source library for quantitative finance
Reference manual - version 1.20
Public Member Functions | List of all members
AnalyticEuropeanMargrabeEngine Class Reference

Analytic engine for European Margrabe option. More...

#include <ql/experimental/exoticoptions/analyticeuropeanmargrabeengine.hpp>

+ Inheritance diagram for AnalyticEuropeanMargrabeEngine:

Public Member Functions

 AnalyticEuropeanMargrabeEngine (const ext::shared_ptr< GeneralizedBlackScholesProcess > &process1, const ext::shared_ptr< GeneralizedBlackScholesProcess > &process2, Real correlation)
 
void calculate () const
 
- Public Member Functions inherited from GenericEngine< MargrabeOption::arguments, MargrabeOption::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 &)
 
Observableoperator= (const Observable &)
 
void notifyObservers ()
 
- Public Member Functions inherited from Observer
 Observer (const Observer &)
 
Observeroperator= (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 Attributes inherited from GenericEngine< MargrabeOption::arguments, MargrabeOption::results >
MargrabeOption::arguments arguments_
 
MargrabeOption::results results_
 

Detailed Description

Analytic engine for European Margrabe option.

This class implements formulae from "The Value of an Option to Exchange One Asset for Another", W. Margrabe, Journal of Finance, 33 (March 1978), 177-186.

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