|
QuantLib: a free/open-source library for quantitative finance
fully annotated source code - version 1.38
|
Barrier option on two assets More...
#include <twoassetbarrieroption.hpp>
Inheritance diagram for TwoAssetBarrierOption:
Collaboration diagram for TwoAssetBarrierOption:Classes | |
| class | arguments |
| Arguments for two-asset barrier option calculation More... | |
| class | engine |
| Two-asset barrier-option engine base class More... | |
Public Member Functions | |
| TwoAssetBarrierOption (Barrier::Type barrierType, Real barrier, const ext::shared_ptr< StrikedTypePayoff > &payoff, const ext::shared_ptr< Exercise > &exercise) | |
| bool | isExpired () const override |
| returns whether the instrument might have value greater than zero. More... | |
| void | setupArguments (PricingEngine::arguments *) const override |
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... | |
| virtual void | fetchResults (const PricingEngine::results *) const |
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 () |
Protected Attributes | |
| Barrier::Type | barrierType_ |
| Real | barrier_ |
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_ |
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 |
| virtual void | setupExpired () const |
| void | performCalculations () const override |
Protected Member Functions inherited from LazyObject | |
Related Functions inherited from Option | |
| std::ostream & | operator<< (std::ostream &, Option::Type) |
Barrier option on two assets
The value of the first asset is compared to the strike to determine the payoff, while the value of the second asset is monitored to check if the barrier is hit.
Definition at line 40 of file twoassetbarrieroption.hpp.
| TwoAssetBarrierOption | ( | Barrier::Type | barrierType, |
| Real | barrier, | ||
| const ext::shared_ptr< StrikedTypePayoff > & | payoff, | ||
| const ext::shared_ptr< Exercise > & | exercise | ||
| ) |
Definition at line 26 of file twoassetbarrieroption.cpp.
|
overridevirtual |
returns whether the instrument might have value greater than zero.
Implements Instrument.
Definition at line 42 of file twoassetbarrieroption.cpp.
Here is the call graph for this function:
|
overridevirtual |
When a derived argument structure is defined for an instrument, this method should be overridden to fill it. This is mandatory in case a pricing engine is used.
Reimplemented from Instrument.
Definition at line 33 of file twoassetbarrieroption.cpp.
Here is the call graph for this function:
|
protected |
Definition at line 55 of file twoassetbarrieroption.hpp.
|
protected |
Definition at line 56 of file twoassetbarrieroption.hpp.