least-square Monte Carlo engine More...
#include <ql/pricingengines/basket/mcamericanbasketengine.hpp>
Public Member Functions | |
MCAmericanBasketEngine (const boost::shared_ptr< StochasticProcessArray > &, Size timeSteps, Size timeStepsPerYear, bool brownianBridge, bool antitheticVariate, Size requiredSamples, Real requiredTolerance, Size maxSamples, BigNatural seed, Size nCalibrationSamples=Null< Size >()) | |
![]() | |
MCLongstaffSchwartzEngine (const boost::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 >(), boost::optional< bool > brownianBridgeCalibration=boost::none, boost::optional< bool > antitheticVariateCalibration=boost::none, BigNatural seedCalibration=Null< Size >()) | |
void | calculate () const |
![]() | |
PricingEngine::arguments * | getArguments () const |
const PricingEngine::results * | getResults () const |
void | reset () |
void | update () |
![]() | |
Observable (const Observable &) | |
Observable & | operator= (const Observable &) |
void | notifyObservers () |
![]() | |
Observer (const Observer &) | |
Observer & | operator= (const Observer &) |
std::pair< iterator, bool > | registerWith (const boost::shared_ptr< Observable > &) |
void | registerWithObservables (const boost::shared_ptr< Observer > &) |
Size | unregisterWith (const boost::shared_ptr< Observable > &) |
void | unregisterWithAll () |
virtual void | deepUpdate () |
![]() | |
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 (void) 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 | |
Protected Member Functions | |
boost::shared_ptr< LongstaffSchwartzPathPricer< MultiPath > > | lsmPathPricer () const |
![]() | |
TimeGrid | timeGrid () const |
boost::shared_ptr< path_pricer_type > | pathPricer () const |
boost::shared_ptr< path_generator_type > | pathGenerator () const |
![]() | |
McSimulation (bool antitheticVariate, bool controlVariate) | |
virtual boost::shared_ptr< path_pricer_type > | controlPathPricer () const |
virtual boost::shared_ptr< path_generator_type > | controlPathGenerator () const |
virtual boost::shared_ptr< PricingEngine > | controlPricingEngine () const |
virtual result_type | controlVariateValue () const |
Additional Inherited Members | |
![]() | |
typedef MultiVariate< RNG >::path_type | path_type |
typedef McSimulation< MultiVariate, RNG, Statistics >::stats_type | stats_type |
typedef McSimulation< MultiVariate, RNG, Statistics >::path_pricer_type | path_pricer_type |
typedef McSimulation< MultiVariate, RNG, Statistics >::path_generator_type | path_generator_type |
typedef McSimulation< MultiVariate, RNG, Statistics >::path_generator_type | path_generator_type_calibration |
![]() | |
typedef std::set< boost::shared_ptr< Observable > > | set_type |
typedef set_type::iterator | iterator |
![]() | |
typedef MonteCarloModel< MultiVariate, RNG, Statistics >::path_generator_type | path_generator_type |
typedef MonteCarloModel< MultiVariate, RNG, Statistics >::path_pricer_type | path_pricer_type |
typedef MonteCarloModel< MultiVariate, RNG, Statistics >::stats_type | stats_type |
typedef MonteCarloModel< MultiVariate, RNG, Statistics >::result_type | result_type |
![]() | |
static Real | maxError (const Sequence &sequence) |
static Real | maxError (Real error) |
![]() | |
boost::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_ |
boost::shared_ptr< LongstaffSchwartzPathPricer< path_type > > | pathPricer_ |
boost::shared_ptr< MonteCarloModel< MultiVariate, RNG, Statistics > > | mcModelCalibration_ |
![]() | |
BasketOption::arguments | arguments_ |
BasketOption::results | results_ |
![]() | |
boost::shared_ptr< MonteCarloModel< MultiVariate, RNG, Statistics > > | mcModel_ |
bool | antitheticVariate_ |
bool | controlVariate_ |
least-square Monte Carlo engine