#include <ored/portfolio/barrieroptionwrapper.hpp>
Inheritance diagram for SingleBarrierOptionWrapper:
Collaboration diagram for SingleBarrierOptionWrapper:Public Member Functions | |
| SingleBarrierOptionWrapper (const QuantLib::ext::shared_ptr< QuantLib::Instrument > &inst, const bool isLongOption, const QuantLib::Date &exerciseDate, const bool isPhysicalDelivery, const QuantLib::ext::shared_ptr< QuantLib::Instrument > &undInst, Barrier::Type barrierType, Handle< Quote > spot, Real barrier, Real rebate, const QuantLib::Currency ccy, const QuantLib::Date &startDate, const QuantLib::ext::shared_ptr< QuantLib::Index > &index, const QuantLib::Calendar &calendar, const Real multiplier=1.0, const Real undMultiplier=1.0, const std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > > &additionalInstruments=std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > >(), const std::vector< Real > &additionalMultipliers=std::vector< Real >()) | |
| bool | checkBarrier (Real spot, bool isTouchingOnly) const override |
| bool | exercise () const override |
Public Member Functions inherited from BarrierOptionWrapper | |
| BarrierOptionWrapper (const QuantLib::ext::shared_ptr< QuantLib::Instrument > &inst, const bool isLongOption, const QuantLib::Date &exerciseDate, const bool isPhysicalDelivery, const QuantLib::ext::shared_ptr< QuantLib::Instrument > &undInst, Barrier::Type barrierType, Handle< Quote > spot, Real rebate, const QuantLib::Currency ccy, const QuantLib::Date &startDate, const QuantLib::ext::shared_ptr< QuantLib::Index > &index, const QuantLib::Calendar &calendar, const Real multiplier=1.0, const Real undMultiplier=1.0, const std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > > &additionalInstruments=std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > >(), const std::vector< Real > &additionalMultipliers=std::vector< Real >()) | |
| const std::map< std::string, boost::any > & | additionalResults () const override |
| Return the additional results of this instrument. More... | |
| virtual bool | checkBarrier (Real, bool) const =0 |
Public Member Functions inherited from OptionWrapper | |
| OptionWrapper (const QuantLib::ext::shared_ptr< QuantLib::Instrument > &inst, const bool isLongOption, const std::vector< QuantLib::Date > &exerciseDate, const bool isPhysicalDelivery, const std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > > &undInst, const Real multiplier=1.0, const Real undMultiplier=1.0, const std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > > &additionalInstruments=std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > >(), const std::vector< Real > &additionalMultipliers=std::vector< Real >()) | |
| Constructor. More... | |
| void | initialise (const std::vector< QuantLib::Date > &dates) override |
| Initialise with the given date grid. More... | |
| void | reset () override |
| reset is called every time a new path is about to be priced. More... | |
| QuantLib::Real | NPV () const override |
| Return the NPV of this instrument. More... | |
| Real | multiplier2 () const override |
| const std::map< std::string, boost::any > & | additionalResults () const override |
| Return the additional results of this instrument. More... | |
| void | updateQlInstruments () override |
| call update on enclosed instrument(s) More... | |
| bool | isOption () override |
| is it an Option? More... | |
| const std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > > & | underlyingInstruments () const |
| return the underlying instruments More... | |
| const QuantLib::ext::shared_ptr< QuantLib::Instrument > & | activeUnderlyingInstrument (const bool calculate=false) const |
| bool | isLong () const |
| return true if option is long, false if option is short More... | |
| bool | isExercised () const |
| return true if option is exercised More... | |
| bool | isPhysicalDelivery () const |
| return true for physical delivery, false for cash settlement More... | |
| Real | underlyingMultiplier () const |
| the underlying multiplier More... | |
| const QuantLib::Date & | exerciseDate () const |
| the (actual) date the option was exercised More... | |
| void | enableExercise () |
| disable exercise decisions More... | |
| void | disableExercise () |
| enable exercise decisions More... | |
Public Member Functions inherited from InstrumentWrapper | |
| InstrumentWrapper () | |
| InstrumentWrapper (const QuantLib::ext::shared_ptr< QuantLib::Instrument > &inst, const Real multiplier=1.0, const std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > > &additionalInstruments=std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > >(), const std::vector< Real > &additionalMultipliers=std::vector< Real >()) | |
| virtual | ~InstrumentWrapper () |
| virtual void | initialise (const std::vector< QuantLib::Date > &dates)=0 |
| Initialise with the given date grid. More... | |
| virtual void | reset ()=0 |
| reset is called every time a new path is about to be priced. More... | |
| virtual QuantLib::Real | NPV () const =0 |
| Return the NPV of this instrument. More... | |
| virtual const std::map< std::string, boost::any > & | additionalResults () const =0 |
| Return the additional results of this instrument. More... | |
| QuantLib::Real | additionalInstrumentsNPV () const |
| virtual void | updateQlInstruments () |
| call update on enclosed instrument(s) More... | |
| virtual bool | isOption () |
| is it an Option? More... | |
| QuantLib::ext::shared_ptr< QuantLib::Instrument > | qlInstrument (const bool calculate=false) const |
| Inspectors. More... | |
| Real | multiplier () const |
| virtual Real | multiplier2 () const |
| const std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > > & | additionalInstruments () const |
| const std::vector< Real > & | additionalMultipliers () const |
| boost::timer::nanosecond_type | getCumulativePricingTime () const |
| Get cumulative timing spent on pricing. More... | |
| std::size_t | getNumberOfPricings () const |
| Get number of pricings. More... | |
| void | resetPricingStats () const |
| Reset pricing statistics. More... | |
Protected Attributes | |
| Real | barrier_ |
Protected Attributes inherited from BarrierOptionWrapper | |
| Handle< Quote > | spot_ |
| Barrier::Type | barrierType_ |
| Real | rebate_ |
| const QuantLib::Currency | ccy_ |
| const QuantLib::Date | startDate_ |
| QuantLib::ext::shared_ptr< QuantLib::Index > | index_ |
| QuantLib::Calendar | calendar_ |
Protected Attributes inherited from OptionWrapper | |
| bool | isLong_ |
| bool | isPhysicalDelivery_ |
| std::vector< QuantLib::Date > | contractExerciseDates_ |
| std::vector< QuantLib::Date > | effectiveExerciseDates_ |
| std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > > | underlyingInstruments_ |
| QuantLib::ext::shared_ptr< QuantLib::Instrument > | activeUnderlyingInstrument_ |
| Real | undMultiplier_ |
| bool | exercised_ |
| bool | exercisable_ |
| QuantLib::Date | exerciseDate_ |
Protected Attributes inherited from InstrumentWrapper | |
| QuantLib::ext::shared_ptr< QuantLib::Instrument > | instrument_ |
| Real | multiplier_ |
| std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > > | additionalInstruments_ |
| std::vector< Real > | additionalMultipliers_ |
| std::size_t | numberOfPricings_ = 0 |
| boost::timer::nanosecond_type | cumulativePricingTime_ = 0 |
Additional Inherited Members | |
Protected Member Functions inherited from BarrierOptionWrapper | |
| QuantLib::Real | NPV () const override |
| Return the NPV of this instrument. More... | |
Protected Member Functions inherited from InstrumentWrapper | |
| Real | getTimedNPV (const QuantLib::ext::shared_ptr< QuantLib::Instrument > &instr) const |
Definition at line 77 of file barrieroptionwrapper.hpp.
| SingleBarrierOptionWrapper | ( | const QuantLib::ext::shared_ptr< QuantLib::Instrument > & | inst, |
| const bool | isLongOption, | ||
| const QuantLib::Date & | exerciseDate, | ||
| const bool | isPhysicalDelivery, | ||
| const QuantLib::ext::shared_ptr< QuantLib::Instrument > & | undInst, | ||
| Barrier::Type | barrierType, | ||
| Handle< Quote > | spot, | ||
| Real | barrier, | ||
| Real | rebate, | ||
| const QuantLib::Currency | ccy, | ||
| const QuantLib::Date & | startDate, | ||
| const QuantLib::ext::shared_ptr< QuantLib::Index > & | index, | ||
| const QuantLib::Calendar & | calendar, | ||
| const Real | multiplier = 1.0, |
||
| const Real | undMultiplier = 1.0, |
||
| const std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > > & | additionalInstruments = std::vector<QuantLib::ext::shared_ptr<QuantLib::Instrument>>(), |
||
| const std::vector< Real > & | additionalMultipliers = std::vector<Real>() |
||
| ) |
Definition at line 79 of file barrieroptionwrapper.hpp.
Implements BarrierOptionWrapper.
Definition at line 104 of file barrieroptionwrapper.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
Implements OptionWrapper.
Definition at line 121 of file barrieroptionwrapper.cpp.
Here is the call graph for this function:
|
protected |
Definition at line 100 of file barrieroptionwrapper.hpp.