QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
Loading...
Searching...
No Matches
AnalyticEuropeanMargrabeEngine Class Reference

Analytic engine for European Margrabe option. More...

#include <ql/pricingengines/exotic/analyticeuropeanmargrabeengine.hpp>

Inheritance diagram for AnalyticEuropeanMargrabeEngine:

Public Member Functions

 AnalyticEuropeanMargrabeEngine (ext::shared_ptr< GeneralizedBlackScholesProcess > process1, ext::shared_ptr< GeneralizedBlackScholesProcess > process2, Real correlation)
void calculate () const override
Public Member Functions inherited from GenericEngine< MargrabeOption::arguments, MargrabeOption::results >
PricingEngine::arguments * getArguments () const override
const PricingEngine::results * getResults () const override
void reset () override
void update () override
Public Member Functions inherited from Observable
 Observable (const Observable &)
Observableoperator= (const Observable &)
 Observable (Observable &&)=delete
Observableoperator= (Observable &&)=delete
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 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.

Member Function Documentation

◆ calculate()

void calculate ( ) const
overridevirtual

Implements PricingEngine.