|
QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
Base class for options on a single asset. More...
#include <oneassetoption.hpp>
Inheritance diagram for OneAssetOption:
Collaboration diagram for OneAssetOption:Classes | |
| class | engine |
| class | results |
| Results from single-asset option calculation More... | |
Public Member Functions | |
| OneAssetOption (const ext::shared_ptr< Payoff > &, const ext::shared_ptr< Exercise > &) | |
Instrument interface | |
| bool | isExpired () const override |
| returns whether the instrument might have value greater than zero. More... | |
Public Member Functions inherited from Option | |
| Option (ext::shared_ptr< Payoff > payoff, ext::shared_ptr< Exercise > exercise) | |
| void | setupArguments (PricingEngine::arguments *) const override |
| ext::shared_ptr< Payoff > | payoff () const |
| ext::shared_ptr< Exercise > | exercise () const |
Public Member Functions inherited from Instrument | |
| Instrument () | |
| Real | NPV () const |
| returns the net present value of the instrument. More... | |
| Real | errorEstimate () const |
| returns the error estimate on the NPV when available. More... | |
| const Date & | valuationDate () const |
| returns the date the net present value refers to. More... | |
| template<typename T > | |
| T | result (const std::string &tag) const |
| returns any additional result returned by the pricing engine. More... | |
| const std::map< std::string, ext::any > & | additionalResults () const |
| returns all additional result returned by the pricing engine. More... | |
| void | setPricingEngine (const ext::shared_ptr< PricingEngine > &) |
| set the pricing engine to be used. More... | |
Public Member Functions inherited from LazyObject | |
| LazyObject () | |
| ~LazyObject () override=default | |
| void | update () override |
| bool | isCalculated () const |
| void | forwardFirstNotificationOnly () |
| void | alwaysForwardNotifications () |
| void | recalculate () |
| void | freeze () |
| void | unfreeze () |
Public Member Functions inherited from Observable | |
| Observable ()=default | |
| Observable (const Observable &) | |
| Observable & | operator= (const Observable &) |
| Observable (Observable &&)=delete | |
| Observable & | operator= (Observable &&)=delete |
| virtual | ~Observable ()=default |
| void | notifyObservers () |
Public Member Functions inherited from Observer | |
| Observer ()=default | |
| Observer (const Observer &) | |
| Observer & | operator= (const Observer &) |
| virtual | ~Observer () |
| std::pair< iterator, bool > | registerWith (const ext::shared_ptr< Observable > &) |
| void | registerWithObservables (const ext::shared_ptr< Observer > &) |
| Size | unregisterWith (const ext::shared_ptr< Observable > &) |
| void | unregisterWithAll () |
| virtual void | update ()=0 |
| virtual void | deepUpdate () |
greeks | |
| Real | delta_ |
| Real | deltaForward_ |
| Real | elasticity_ |
| Real | gamma_ |
| Real | theta_ |
| Real | thetaPerDay_ |
| Real | vega_ |
| Real | rho_ |
| Real | dividendRho_ |
| Real | strikeSensitivity_ |
| Real | itmCashProbability_ |
| Real | delta () const |
| Real | deltaForward () const |
| Real | elasticity () const |
| Real | gamma () const |
| Real | theta () const |
| Real | thetaPerDay () const |
| Real | vega () const |
| Real | rho () const |
| Real | dividendRho () const |
| Real | strikeSensitivity () const |
| Real | itmCashProbability () const |
| void | fetchResults (const PricingEngine::results *) const override |
| void | setupExpired () const override |
Additional Inherited Members | |
Public Types inherited from Option | |
| enum | Type { Put = -1 , Call = 1 } |
Public Types inherited from Observer | |
| typedef set_type::iterator | iterator |
Protected Member Functions inherited from Instrument | |
| void | calculate () const override |
| void | performCalculations () const override |
Protected Member Functions inherited from LazyObject | |
Protected Attributes inherited from Option | |
| ext::shared_ptr< Payoff > | payoff_ |
| ext::shared_ptr< Exercise > | exercise_ |
Protected Attributes inherited from Instrument | |
| Real | NPV_ |
| Real | errorEstimate_ |
| Date | valuationDate_ |
| std::map< std::string, ext::any > | additionalResults_ |
| ext::shared_ptr< PricingEngine > | engine_ |
Protected Attributes inherited from LazyObject | |
| bool | calculated_ = false |
| bool | frozen_ = false |
| bool | alwaysForward_ |
Related Functions inherited from Option | |
| std::ostream & | operator<< (std::ostream &, Option::Type) |
Base class for options on a single asset.
Definition at line 34 of file oneassetoption.hpp.
| OneAssetOption | ( | const ext::shared_ptr< Payoff > & | payoff, |
| const ext::shared_ptr< Exercise > & | exercise | ||
| ) |
Definition at line 28 of file oneassetoption.cpp.
|
overridevirtual |
returns whether the instrument might have value greater than zero.
Implements Instrument.
Reimplemented in VanillaStorageOption, VanillaSwingOption, and WriterExtensibleOption.
Definition at line 33 of file oneassetoption.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:| Real delta | ( | ) | const |
Definition at line 37 of file oneassetoption.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:| Real deltaForward | ( | ) | const |
| Real elasticity | ( | ) | const |
| Real gamma | ( | ) | const |
Definition at line 56 of file oneassetoption.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:| Real theta | ( | ) | const |
Definition at line 62 of file oneassetoption.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:| Real thetaPerDay | ( | ) | const |
| Real vega | ( | ) | const |
Definition at line 74 of file oneassetoption.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:| Real rho | ( | ) | const |
Definition at line 80 of file oneassetoption.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:| Real dividendRho | ( | ) | const |
Definition at line 86 of file oneassetoption.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:| Real strikeSensitivity | ( | ) | const |
| Real itmCashProbability | ( | ) | const |
|
overridevirtual |
When a derived result structure is defined for an instrument, this method should be overridden to read from it. This is mandatory in case a pricing engine is used.
Reimplemented from Instrument.
Reimplemented in QuantoBarrierOption, QuantoForwardVanillaOption, and QuantoVanillaOption.
Definition at line 113 of file oneassetoption.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
overrideprotectedvirtual |
This method must leave the instrument in a consistent state when the expiration condition is met.
Reimplemented from Instrument.
Reimplemented in QuantoBarrierOption, QuantoForwardVanillaOption, and QuantoVanillaOption.
Definition at line 106 of file oneassetoption.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
mutableprotected |
Definition at line 63 of file oneassetoption.hpp.
|
protected |
Definition at line 63 of file oneassetoption.hpp.
|
protected |
Definition at line 63 of file oneassetoption.hpp.
|
protected |
Definition at line 63 of file oneassetoption.hpp.
|
protected |
Definition at line 63 of file oneassetoption.hpp.
|
protected |
Definition at line 64 of file oneassetoption.hpp.
|
protected |
Definition at line 64 of file oneassetoption.hpp.
|
protected |
Definition at line 64 of file oneassetoption.hpp.
|
protected |
Definition at line 64 of file oneassetoption.hpp.
|
protected |
Definition at line 64 of file oneassetoption.hpp.
|
protected |
Definition at line 65 of file oneassetoption.hpp.