|
|
| MCAmericanEngine (const ext::shared_ptr< GeneralizedBlackScholesProcess > &process, Size timeSteps, Size timeStepsPerYear, bool antitheticVariate, bool controlVariate, Size requiredSamples, Real requiredTolerance, Size maxSamples, BigNatural seed, Size polynomialOrder, LsmBasisSystem::PolynomialType polynomialType, Size nCalibrationSamples=Null< Size >(), const ext::optional< bool > &antitheticVariateCalibration=ext::nullopt, BigNatural seedCalibration=Null< Size >()) |
|
void | calculate () const override |
| | MCLongstaffSchwartzEngine (ext::shared_ptr< StochasticProcess > process, Size timeSteps, Size timeStepsPerYear, bool brownianBridge, bool antitheticVariate, bool controlVariate, Size requiredSamples, Real requiredTolerance, Size maxSamples, BigNatural seed, Size nCalibrationSamples=Null< Size >(), ext::optional< bool > brownianBridgeCalibration=ext::nullopt, ext::optional< bool > antitheticVariateCalibration=ext::nullopt, BigNatural seedCalibration=Null< Size >()) |
|
void | calculate () const override |
|
result_type | value (Real tolerance, Size maxSamples=QL_MAX_INTEGER, Size minSamples=1023) const |
| | add samples until the required absolute tolerance is reached
|
|
result_type | valueWithSamples (Size samples) const |
| | simulate a fixed number of samples
|
|
result_type | errorEstimate () const |
| | error estimated using the samples simulated so far
|
|
const stats_type & | sampleAccumulator () const |
| | access to the sample accumulator for richer statistics
|
|
void | calculate (Real requiredTolerance, Size requiredSamples, Size maxSamples) const |
| | basic calculate method provided to inherited pricing engines
|
|
|
typedef SingleVariate< PseudoRandom >::path_type | path_type |
|
typedef McSimulation< SingleVariate, PseudoRandom, Statistics >::stats_type | stats_type |
|
typedef McSimulation< SingleVariate, PseudoRandom, Statistics >::path_pricer_type | path_pricer_type |
|
typedef McSimulation< SingleVariate, PseudoRandom, Statistics >::path_generator_type | path_generator_type |
|
typedef McSimulation< SingleVariate, PseudoRandom, Statistics >::path_generator_type | path_generator_type_calibration |
|
typedef MonteCarloModel< SingleVariate, PseudoRandom, Statistics >::path_generator_type | path_generator_type |
|
typedef MonteCarloModel< SingleVariate, PseudoRandom, Statistics >::path_pricer_type | path_pricer_type |
|
typedef MonteCarloModel< SingleVariate, PseudoRandom, Statistics >::stats_type | stats_type |
|
typedef MonteCarloModel< SingleVariate, PseudoRandom, Statistics >::result_type | result_type |
|
static Real | maxError (const Sequence &sequence) |
|
ext::shared_ptr< StochasticProcess > | process_ |
|
const Size | timeSteps_ |
|
const Size | timeStepsPerYear_ |
|
const bool | brownianBridge_ |
|
const Size | requiredSamples_ |
|
const Real | requiredTolerance_ |
|
const Size | maxSamples_ |
|
const BigNatural | seed_ |
|
const Size | nCalibrationSamples_ |
|
const bool | brownianBridgeCalibration_ |
|
const bool | antitheticVariateCalibration_ |
|
const BigNatural | seedCalibration_ |
|
ext::shared_ptr< LongstaffSchwartzPathPricer< path_type > > | pathPricer_ |
|
ext::shared_ptr< MonteCarloModel< SingleVariate, PseudoRandom, Statistics > > | mcModelCalibration_ |
|
ext::shared_ptr< MonteCarloModel< SingleVariate, PseudoRandom, Statistics > > | mcModel_ |
|
bool | antitheticVariate_ |
|
bool | controlVariate_ |
template<class RNG = PseudoRandom, class S = Statistics, class RNG_Calibration = RNG>
class QuantLib::MCAmericanEngine< RNG, S, RNG_Calibration >
American Monte Carlo engine.
References:
- Tests
- the correctness of the returned value is tested by reproducing results available in web/literature