optionGreeks.hpp
Go to the documentation of this file.
1 #ifndef JULIAN_OPTIONGREEKS_HPP
2 #define JULIAN_OPTIONGREEKS_HPP
3 
4 #include <map>
8 
9 namespace julian {
24  std::map<std::tuple<double,double>, double> intermediate_results_;
25  std::map<std::string,double> PV_and_Greeks_;
26  };
27 
32  class OptionGreeks {
33  public:
34 
39  virtual std::map<std::string,double> getRisks(const SmartPointer<MarketModel>&, const SmartPointer<PricingEngine>&, const SmartPointer<Option>&) = 0;
40 
45  virtual GreeksIntermediateResults calculateRisks(const SmartPointer<MarketModel>&,
47  const SmartPointer<Option>&) = 0;
48 
51  virtual OptionGreeks* clone() const;
52 
55  virtual ~OptionGreeks(){};
56  };
57 
58 
59 }
60 
61 #endif
std::map< std::string, double > PV_and_Greeks_
std::map with name of Greeks as key and the value of Greeks as value;
Definition: optionGreeks.hpp:25
Definition: cadHoliday.cpp:3
std::map< std::tuple< double, double >, double > intermediate_results_
std::map with PVs calculated with different spot and vol shifts
Definition: optionGreeks.hpp:24
Template of deep-coping smart pointer.
Definition: smartPointer.hpp:14
File contains definition of financial option interface.
Data structure holding the PV and Greeks.
Definition: optionGreeks.hpp:23
Interface for OptionGreeks decorator.
Definition: optionGreeks.hpp:32
virtual ~OptionGreeks()
Destructor.
Definition: optionGreeks.hpp:55
File contains definition of PricingEngine interface.
File contains implementation of interface for market models.