25#ifndef quantlib_asian_option_hpp
26#define quantlib_asian_option_hpp
47 const ext::shared_ptr<StrikedTypePayoff>&
payoff,
48 const ext::shared_ptr<Exercise>&
exercise);
66 Real runningAccumulator,
68 std::vector<Date> fixingDates,
69 const ext::shared_ptr<StrikedTypePayoff>&
payoff,
70 const ext::shared_ptr<Exercise>&
exercise);
80 std::vector<Date> fixingDates,
81 const ext::shared_ptr<StrikedTypePayoff>&
payoff,
82 const ext::shared_ptr<Exercise>&
exercise,
83 std::vector<Real> allPastFixings = std::vector<Real>());
102 :
public OneAssetOption::arguments {
116 :
public OneAssetOption::arguments {
125 :
public GenericEngine<DiscreteAveragingAsianOption::arguments,
126 DiscreteAveragingAsianOption::results> {};
130 :
public GenericEngine<ContinuousAveragingAsianOption::arguments,
131 ContinuousAveragingAsianOption::results> {};
Averaging algorithm enumeration.
Extra arguments for single-asset continuous-average Asian option.
Average::Type averageType
void validate() const override
Continuous-averaging Asian engine base class.
Continuous-averaging Asian option.
void setupArguments(PricingEngine::arguments *) const override
Average::Type averageType_
Extra arguments for single-asset discrete-average Asian option.
Average::Type averageType
std::vector< Date > fixingDates
void validate() const override
Discrete-averaging Asian engine base class.
Discrete-averaging Asian option.
void setupArguments(PricingEngine::arguments *) const override
std::vector< Date > fixingDates_
Average::Type averageType_
std::vector< Real > allPastFixings_
bool allPastFixingsProvided_
template base class for option pricing engines
template class providing a null value for a given type.
Base class for options on a single asset.
ext::shared_ptr< Payoff > payoff() const
ext::shared_ptr< Exercise > exercise() const
date- and time-related classes, typedefs and enumerations
std::size_t Size
size of a container
Option on a single asset.
Payoffs for various options.
Placeholder for enumerated averaging types.