AnalyticAmericanMargrabeEngine Class Reference

Analytic engine for American Margrabe option. More...

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

Inheritance diagram for AnalyticAmericanMargrabeEngine:

Public Member Functions

 AnalyticAmericanMargrabeEngine (const boost::shared_ptr< GeneralizedBlackScholesProcess > &process1, const boost::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 Observable
 Observable (const Observable &)
 
Observableoperator= (const Observable &)
 
void notifyObservers ()
 
- Public Member Functions inherited from Observer
 Observer (const Observer &)
 
Observeroperator= (const Observer &)
 
std::pair< std::set
< boost::shared_ptr
< Observable > >::iterator,
bool > 
registerWith (const boost::shared_ptr< Observable > &)
 
Size unregisterWith (const boost::shared_ptr< Observable > &)
 
void unregisterWithAll ()
 

Additional Inherited Members

- Protected Attributes inherited from GenericEngine< MargrabeOption::arguments, MargrabeOption::results >
MargrabeOption::arguments arguments_
 
MargrabeOption::results results_
 

Detailed Description

Analytic engine for American Margrabe option.

This class implements formulae from "The Value of an American Option to Exchange One Asset for Another", W. Margrabe, Journal of Finance, 33, 177-86.

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