29 const ext::shared_ptr<Payoff>&
payoff,
30 const ext::shared_ptr<Exercise>& exercise)
46 "forward delta not provided");
95 "strike sensitivity not provided");
102 "in-the-money cash probability not provided");
132 const auto* moreResults =
dynamic_cast<const MoreGreeks*
>(
r);
133 QL_ENSURE(moreResults !=
nullptr,
"no more greeks returned from pricing engine");
virtual bool hasOccurred(const Date &refDate=Date(), ext::optional< bool > includeRefDate=ext::nullopt) const
returns true if an event has already occurred before a date
additional option results
void calculate() const override
virtual void fetchResults(const PricingEngine::results *) const
virtual void setupExpired() const
more additional option results
template class providing a null value for a given type.
Results from single-asset option calculation
bool isExpired() const override
returns whether the instrument might have value greater than zero.
OneAssetOption(const ext::shared_ptr< Payoff > &, const ext::shared_ptr< Exercise > &)
Real itmCashProbability() const
Real strikeSensitivity() const
void setupExpired() const override
void fetchResults(const PricingEngine::results *) const override
Real deltaForward() const
ext::shared_ptr< Exercise > exercise_
#define QL_ENSURE(condition, message)
throw an error if the given post-condition is not verified
#define QL_REQUIRE(condition, message)
throw an error if the given pre-condition is not verified
Base class for events associated with a given date.
Option exercise classes and payoff function.
ext::shared_ptr< QuantLib::Payoff > payoff
Option on a single asset.
ext::shared_ptr< YieldTermStructure > r