27 const ext::shared_ptr<Exercise>& exercise)
29 notional_(notional), guarantee_(guarantee) {}
59 MultiAssetOption::arguments::validate();
61 QL_REQUIRE(notional != 0.0,
"null notional given");
void validate() const override
void setupArguments(PricingEngine::arguments *) const override
void fetchResults(const PricingEngine::results *) const override
EverestOption(Real notional, Rate guarantee, const ext::shared_ptr< Exercise > &)
void calculate() const override
Base class for options on multiple assets.
void setupArguments(PricingEngine::arguments *) const override
void fetchResults(const PricingEngine::results *) const override
template class providing a null value for a given type.
Abstract base class for option payoffs.
#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
Everest option on a number of assets.
Payoffs for various options.
ext::shared_ptr< YieldTermStructure > r