27 : notional_(notional), guarantee_(guarantee), discount_(discount) {}
35 QL_REQUIRE(numAssets>0,
"there must be some paths");
38 Real minYield = multiPath[0].back() / multiPath[0].front() - 1.0;
39 for (
Size j=1; j<numAssets; ++j) {
40 Rate yield = multiPath[j].back() / multiPath[j].front() - 1.0;
41 minYield = std::min(minYield, yield);
Real operator()(const MultiPath &multiPath) const override
EverestMultiPathPricer(Real notional, Rate guarantee, DiscountFactor discount)
Correlated multiple asset paths.
#define QL_REQUIRE(condition, message)
throw an error if the given pre-condition is not verified
Real DiscountFactor
discount factor between dates
std::size_t Size
size of a container
Monte Carlo engine for Everest options.