18#include <ql/pricingengines/asian/mc_discr_arith_av_price_heston.hpp>
26 std::vector<Size> fixingIndices,
29 : payoff_(type, strike), discount_(discount), fixingIndices_(
std::move(fixingIndices)),
30 runningSum_(runningSum), pastFixings_(pastFixings) {
31 QL_REQUIRE(strike>=0.0,
32 "strike less than zero not allowed");
36 const Path& path = multiPath[0];
38 QL_REQUIRE(n>0,
"the path cannot be empty");
44 sum += path[fixingIndice];
47 Real averagePrice = sum/fixings;
PlainVanillaPayoff payoff_
ArithmeticAPOHestonPathPricer(Option::Type type, Real strike, DiscountFactor discount, std::vector< Size > fixingIndices, Real runningSum=0.0, Size pastFixings=0)
std::vector< Size > fixingIndices_
Real operator()(const MultiPath &multiPath) const override
Correlated multiple asset paths.
single-factor random walk
Real DiscountFactor
discount factor between dates
std::size_t Size
size of a container