julian::AnalyticalPricingEngine Class Reference

analytical pricer More...

#include <analyticalPricingEngine.hpp>

Inheritance diagram for julian::AnalyticalPricingEngine:
julian::DeeplyCopyablePricingEngine< AnalyticalPricingEngine > julian::PricingEngine

Public Member Functions

 AnalyticalPricingEngine ()
 constructor More...
 
double prize (const SmartPointer< MarketModel > &, const SmartPointer< Option > &) const
 prized the option using double dispatch mechanism More...
 
virtual ~AnalyticalPricingEngine ()
 destructor More...
 
- Public Member Functions inherited from julian::DeeplyCopyablePricingEngine< AnalyticalPricingEngine >
virtual PricingEngineclone () const
 virtual copy constructor More...
 
- Public Member Functions inherited from julian::PricingEngine
virtual ~PricingEngine ()
 destructor More...
 

Detailed Description

analytical pricer

Class is just a interface for prizing options with analytical formulas. To effectively implement the analytical prizing the Visitor pattern was used. Visitor pattern is used to emulate double dispatch.Double dispatch is a mechanism that dispatches a function call to different concrete functions depending on the runtime types of two objects involved in the call (in this case Model and Option)

Class AnalyticalPricingEngine provides an interface to proceeds the double dispatch mechanism.

For visitor pattern see Visitor

Examples:
optionPricingExample.cpp.

Constructor & Destructor Documentation

julian::AnalyticalPricingEngine::AnalyticalPricingEngine ( )
inline

constructor

virtual julian::AnalyticalPricingEngine::~AnalyticalPricingEngine ( )
inlinevirtual

destructor

Member Function Documentation

double julian::AnalyticalPricingEngine::prize ( const SmartPointer< MarketModel > &  model,
const SmartPointer< Option > &  option 
) const
virtual

prized the option using double dispatch mechanism

Implements julian::PricingEngine.


The documentation for this class was generated from the following files:
  • C:/Unix/home/OEM/jULIAN/src/pricingEngines/analytical/analyticalPricingEngine.hpp
  • C:/Unix/home/OEM/jULIAN/src/pricingEngines/analytical/analyticalPricingEngine.cpp