Calculates option's vega. More...
#include <optionVega.hpp>

Public Member Functions | |
OptionVega (SmartPointer< OptionGreeks > input, double h, NumDiffScheme scheme, std::string risk_name="Vega") | |
Constructor. More... | |
GreeksIntermediateResults | calculateRisks (const SmartPointer< MarketModel > &model, const SmartPointer< PricingEngine > &prizer, const SmartPointer< Option > &option) |
calculates the option's Vega More... | |
std::map< std::string, double > | getRisks (const SmartPointer< MarketModel > &model, const SmartPointer< PricingEngine > &prizer, const SmartPointer< Option > &option) |
returns the PV and Greek parameter More... | |
OptionVega * | clone () const |
virtual copy constructor More... | |
![]() | |
OptionGreeksDecorator (SmartPointer< OptionGreeks > risks) | |
Constructor. More... | |
![]() | |
virtual | ~OptionGreeks () |
Destructor. More... | |
Private Member Functions | |
void | CntrVega (GreeksIntermediateResults &rr, const SmartPointer< MarketModel > &model, const SmartPointer< PricingEngine > &prizer, const SmartPointer< Option > &option) |
Calculates Vega using central differencing scheme. More... | |
void | FwdVega (GreeksIntermediateResults &rr, const SmartPointer< MarketModel > &model, const SmartPointer< PricingEngine > &prizer, const SmartPointer< Option > &option) |
Calculates Vega using forward differencing scheme. More... | |
void | BwdVega (GreeksIntermediateResults &rr, const SmartPointer< MarketModel > &model, const SmartPointer< PricingEngine > &prizer, const SmartPointer< Option > &option) |
Calculates Vega using backward differencing scheme. More... | |
Private Attributes | |
double | h_ |
Increment used in differencing scheme. More... | |
NumDiffScheme | scheme_ |
Scheme used in differencing. More... | |
std::string | risk_name_ |
Risk name that will be used as key for result map. Default name is Vega. More... | |
Detailed Description
Calculates option's vega.
This method calculates Vega. Using the method prize of julian::PricingEngine and bumpVolatility of julian::MarketModel it calculates the option sensitivity to asset volatility. Vega of option is can be calculated using the finite difference scheme
when forward differencing is used
when backward differencing is used
when central differencing is used
The result is saved in map. OptionVega is a concrete decorator in decorator structure. Concrete Decorator is a class that altered alters the behaviour of Concrete Component.
Constructor & Destructor Documentation
|
inline |
Constructor.
Member Function Documentation
|
private |
Calculates Vega using backward differencing scheme.
Method checks if the PV for a given market shifts were calculated. If yes, it uses them in estimating the Vega. If they were not calculated, it performs calculations, saves them and then calculates Vega.
|
virtual |
calculates the option's Vega
Vega of option is calculated using the finite difference scheme
when forward differencing is used
when backward differencing is used
when central differencing is used
- Returns
- method returns map with key "Vega" and value of Vega
Reimplemented from julian::OptionGreeksDecorator.
|
virtual |
virtual copy constructor
Reimplemented from julian::OptionGreeksDecorator.
|
private |
Calculates Vega using central differencing scheme.
Method checks if the PV for a given market shifts were calculated. If yes, it uses them in estimating the Vega. If they were not calculated, it performs calculations, saves them and then calculates Vega.
|
private |
Calculates Vega using forward differencing scheme.
Method checks if the PV for a given market shifts were calculated. If yes, it uses them in estimating the Vega. If they were not calculated, it performs calculations, saves them and then calculates Vega.
|
virtual |
returns the PV and Greek parameter
- Returns
- method returns map with name of Greeks as key and the value of Greeks as value
Reimplemented from julian::OptionGreeksDecorator.
Member Data Documentation
|
private |
Increment used in differencing scheme.
|
private |
Risk name that will be used as key for result map. Default name is Vega.
|
private |
Scheme used in differencing.
The documentation for this class was generated from the following files:
- C:/Unix/home/OEM/jULIAN/src/pricingEngines/optionGreeks/optionVega.hpp
- C:/Unix/home/OEM/jULIAN/src/pricingEngines/optionGreeks/optionVega.cpp