QuantLib_McSimulation

Langue: en

Autres versions - même langue

Version: 375127 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

NAME

QuantLib::McSimulation -

base class for Monte Carlo engines

SYNOPSIS


#include <ql/pricingengines/mcsimulation.hpp>

Inherited by MCLongstaffSchwartzEngine< BasketOption::engine, MultiVariate, RNG >, MCLongstaffSchwartzEngine< VanillaOption::engine, SingleVariate, RNG, S >, MCLongstaffSchwartzPathEngine< PathMultiAssetOption::engine, MultiVariate, RNG >, MCVanillaEngine< MultiVariate, RNG, S >, MCVanillaEngine< SingleVariate, RNG, S >, MCLongstaffSchwartzEngine< GenericEngine, MC, RNG, S >, MCLongstaffSchwartzPathEngine< GenericEngine, MC, RNG, S >, and MCVanillaEngine< MC, RNG, S, Inst >.

Public Types


typedef MonteCarloModel< MC, RNG, S >::path_generator_type path_generator_type

typedef MonteCarloModel< MC, RNG, S >::path_pricer_type path_pricer_type

typedef MonteCarloModel< MC, RNG, S >::stats_type stats_type

typedef MonteCarloModel< MC, RNG, S >::result_type result_type

Public Member Functions


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


McSimulation (bool antitheticVariate, bool controlVariate)

virtual boost::shared_ptr< path_pricer_type > pathPricer () const =0

virtual boost::shared_ptr< path_generator_type > pathGenerator () const =0

virtual TimeGrid timeGrid () const =0

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

Static Protected Member Functions


template<class Sequence > static Real maxError (const Sequence &sequence)

static Real maxError (Real error)

Protected Attributes


boost::shared_ptr< MonteCarloModel< MC, RNG, S > > mcModel_

bool antitheticVariate_

bool controlVariate_

Detailed Description

template<template< class > class MC, class RNG, class S = Statistics> class QuantLib::McSimulation< MC, RNG, S >

base class for Monte Carlo engines

Eventually this class might offer greeks methods. Deriving a class from McSimulation gives an easy way to write a Monte Carlo engine.

See McVanillaEngine as an example.

Author

Generated automatically by Doxygen for QuantLib from the source code.