|
|
| SingleBarrierOptionWrapper (const QuantLib::ext::shared_ptr< QuantLib::Instrument > &inst, const bool isLongOption, const QuantLib::Date &exerciseDate, const QuantLib::Date &settlementDate, 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 >(), const std::optional< bool > &overrideTriggered=std::nullopt, const QuantLib::ext::shared_ptr< QuantLib::Index > &indexLows=nullptr, const QuantLib::ext::shared_ptr< QuantLib::Index > &indexHighs=nullptr, const int strictBarrier=0) |
| bool | exercise () const override |
|
| BarrierOptionWrapper (const QuantLib::ext::shared_ptr< QuantLib::Instrument > &inst, const bool isLongOption, const QuantLib::Date &exerciseDate, const QuantLib::Date &settlementDate, 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::optional< bool > &overrideTriggered=std::nullopt, const QuantLib::ext::shared_ptr< QuantLib::Index > &indexLows=nullptr, const QuantLib::ext::shared_ptr< QuantLib::Index > &indexHighs=nullptr, const int strictBarrier=0) |
| const std::map< std::string, QuantLib::ext::any > & | additionalResults () const override |
| | Return the additional results of this instrument.
|
|
| OptionWrapper (const QuantLib::ext::shared_ptr< QuantLib::Instrument > &inst, const bool isLongOption, const std::vector< QuantLib::Date > &exerciseDate, const std::vector< QuantLib::Date > &settlementDate, 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.
|
| void | initialise (const std::vector< QuantLib::Date > &dates) override |
| | Initialise with the given date grid.
|
| void | reset () override |
| | reset is called every time a new path is about to be priced.
|
| QuantLib::Real | NPV () const override |
| | Return the NPV of this instrument.
|
| Real | multiplier2 () const override |
| const std::map< std::string, QuantLib::ext::any > & | additionalResults () const override |
| | Return the additional results of this instrument.
|
| void | updateQlInstruments () override |
| | call update on enclosed instrument(s)
|
| bool | isOption () override |
| | is it an Option?
|
|
const std::vector< QuantLib::ext::shared_ptr< QuantLib::Instrument > > & | underlyingInstruments () const |
| | return the underlying instruments
|
| 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
|
|
bool | isExercised () const |
| | return true if option is exercised
|
|
bool | isPhysicalDelivery () const |
| | return true for physical delivery, false for cash settlement
|
|
Real | underlyingMultiplier () const |
| | the underlying multiplier
|
|
const QuantLib::Date & | exerciseDate () const |
| | the (actual) date the option was exercised
|
|
void | enableExercise () |
| | disable exercise decisions
|
|
void | disableExercise () |
| | enable exercise decisions
|
|
Real | cachedExerciseValue () const |
|
| 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 >()) |
|
QuantLib::Real | additionalInstrumentsNPV () const |
| QuantLib::ext::shared_ptr< QuantLib::Instrument > | qlInstrument (const bool calculate=false) const |
| | Inspectors.
|
| Real | multiplier () 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.
|
|
std::size_t | getNumberOfPricings () const |
| | Get number of pricings.
|
|
void | resetPricingStats () const |
| | Reset pricing statistics.
|
|
|
Real | barrier_ |
|
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_ |
|
std::optional< bool > | overrideTriggered_ |
|
QuantLib::ext::shared_ptr< QuantLib::Index > | indexLows_ |
|
QuantLib::ext::shared_ptr< QuantLib::Index > | indexHighs_ |
|
int | strictBarrier_ |
|
bool | isLong_ |
|
bool | isPhysicalDelivery_ |
|
std::vector< QuantLib::Date > | contractExerciseDates_ |
|
std::vector< QuantLib::Date > | effectiveExerciseDates_ |
|
std::vector< QuantLib::Date > | settlementDates_ |
|
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_ |
|
QuantLib::Date | settlementDate_ |
|
Real | cachedNpv_ |
|
Real | cachedExerciseValue_ = QuantLib::Null<Real>() |
|
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 |