28 "unknown/illegal type1 value (only 0.0 and +/-1,0 are allowed))");
30 "unknown/illegal type2 value(only 0.0 and +/-1,0 are allowed)");
36 type1_*std::max<Real>(
type1_*(swaplet-effStrike1),effStrike3));
41 return "DoubleStickyRatchetPayoff";
45 std::ostringstream result;
degenerate base class for the Acyclic Visitor pattern
std::string description() const override
void accept(AcyclicVisitor &) override
std::string name() const override
Real operator()(Real forward) const override
virtual void accept(AcyclicVisitor &)
Visitor for a specific class
virtual void visit(T &)=0
#define QL_REQUIRE(condition, message)
throw an error if the given pre-condition is not verified
ext::shared_ptr< BlackVolTermStructure > v
Payoffs for double nested options of sticky or ratchet type.