Class is an abstract interface for single asset financial options. More...

#include <option.hpp>

Inheritance diagram for julian::Option:
julian::EuropeanOpt

Public Member Functions

virtual double payoff (double) const =0
 Calculates payoff at expiry. More...
 
virtual Date getExpiry () const =0
 returns expiry date More...
 
virtual Date getMaturity () const =0
 returns maturity date More...
 
virtual double getStrike () const =0
 returns strike More...
 
virtual void recordFixing (Date, double)
 add fixing to option's schedule More...
 
virtual Optionclone () const =0
 Virtual copy constructor. More...
 
virtual ~Option ()
 destructor More...
 
Monte Carlo Pricer
virtual double prizePaths (std::vector< Path > path, double df) const =0
 calculates the option value basing on the paths provided by Monte Carlo Pricer More...
 
Analytical Pricer
virtual double prizeAnalytically (const SmartPointer< MarketModel > &) const =0
 calculates the price of option using market model provided More...
 

Private Member Functions

template<class Archive >
void serialize (Archive &, const unsigned int)
 interface used by Boost serialization library More...
 

Friends

class boost::serialization::access
 

Detailed Description

Class is an abstract interface for single asset financial options.

Constructor & Destructor Documentation

virtual julian::Option::~Option ( )
inlinevirtual

destructor

Member Function Documentation

virtual Option* julian::Option::clone ( ) const
pure virtual

Virtual copy constructor.

Implemented in julian::EuropeanOpt.

virtual Date julian::Option::getExpiry ( ) const
pure virtual

returns expiry date

Implemented in julian::EuropeanOpt.

virtual Date julian::Option::getMaturity ( ) const
pure virtual

returns maturity date

Implemented in julian::EuropeanOpt.

virtual double julian::Option::getStrike ( ) const
pure virtual

returns strike

Warning
Returning strike is used to calculate the implied volatility, Exotic options may not have strike defined. But also implied volatility have no sense for exotic options. For exotic options this method should return the nan symbol.

Implemented in julian::EuropeanOpt.

virtual double julian::Option::payoff ( double  ) const
pure virtual

Calculates payoff at expiry.

Implemented in julian::EuropeanOpt.

virtual double julian::Option::prizeAnalytically ( const SmartPointer< MarketModel > &  ) const
pure virtual

calculates the price of option using market model provided

Implemented in julian::EuropeanOpt.

virtual double julian::Option::prizePaths ( std::vector< Path path,
double  df 
) const
pure virtual

calculates the option value basing on the paths provided by Monte Carlo Pricer

Implemented in julian::EuropeanOpt.

virtual void julian::Option::recordFixing ( Date  ,
double   
)
virtual

add fixing to option's schedule

Reimplemented in julian::EuropeanOpt.

template<class Archive >
void julian::Option::serialize ( Archive &  ,
const unsigned  int 
)
inlineprivate

interface used by Boost serialization library


The documentation for this class was generated from the following file:
  • C:/Unix/home/OEM/jULIAN/src/instruments/options/option.hpp