julian::MarketModel Class Referenceabstract

Interface for objects representing market models. More...

#include <marketModel.hpp>

Inheritance diagram for julian::MarketModel:
julian::DeeplyCopyableMarketModel< BlackScholesModel > julian::DeeplyCopyableMarketModel< T > julian::BlackScholesModel

Public Member Functions

virtual Date getDate () const =0
 returns the date on which market data are actual More...
 
virtual double getAssetPrize () const =0
 returns the prize of asset More...
 
virtual SmartPointer< ir::CurvegetDiscountingCurve () const =0
 returns discounting curve More...
 
virtual SmartPointer< ir::CurvegetDividendCurve () const =0
 returns dividend curve More...
 
virtual void setDate (Date &date)=0
 sets the market date More...
 
virtual void setAssetPrize (double prize)=0
 sets asset prize More...
 
virtual void bumpAssetPrize (double h)=0
 bump asset prize additively More...
 
virtual void bumpVolatility (double h)=0
 bump volatility additively More...
 
virtual double prizeAnalytically (const EuropeanOpt &opt) const =0
 prize EuropeanOpt analytically More...
 
virtual MarketModelclone () const =0
 virtual copy constructor More...
 
virtual ~MarketModel ()
 destructor More...
 

Detailed Description

Interface for objects representing market models.

Market model is an object holding information about market state (interest rates, yields, volatility, asset prize) and its dynamics (usually represented by stochastic process).

Constructor & Destructor Documentation

virtual julian::MarketModel::~MarketModel ( )
inlinevirtual

destructor

Member Function Documentation

virtual void julian::MarketModel::bumpAssetPrize ( double  h)
pure virtual

bump asset prize additively

Parameters
hbump size

Implemented in julian::BlackScholesModel.

virtual void julian::MarketModel::bumpVolatility ( double  h)
pure virtual

bump volatility additively

Parameters
hbump size
Note
Depending on the market model bumping volatility may have different mechanism

Implemented in julian::BlackScholesModel.

virtual MarketModel* julian::MarketModel::clone ( ) const
pure virtual
virtual double julian::MarketModel::getAssetPrize ( ) const
pure virtual

returns the prize of asset

Implemented in julian::BlackScholesModel.

virtual Date julian::MarketModel::getDate ( ) const
pure virtual

returns the date on which market data are actual

Implemented in julian::BlackScholesModel.

virtual SmartPointer<ir::Curve> julian::MarketModel::getDiscountingCurve ( ) const
pure virtual

returns discounting curve

Implemented in julian::BlackScholesModel.

virtual SmartPointer<ir::Curve> julian::MarketModel::getDividendCurve ( ) const
pure virtual

returns dividend curve

Implemented in julian::BlackScholesModel.

virtual double julian::MarketModel::prizeAnalytically ( const EuropeanOpt opt) const
pure virtual

prize EuropeanOpt analytically

Implemented in julian::BlackScholesModel.

virtual void julian::MarketModel::setAssetPrize ( double  prize)
pure virtual

sets asset prize

Parameters
prizenew asset prize

Implemented in julian::BlackScholesModel.

virtual void julian::MarketModel::setDate ( Date date)
pure virtual

sets the market date

Parameters
dateNew market date

Implemented in julian::BlackScholesModel.


The documentation for this class was generated from the following file: