McSimulation Class Template Reference

#include <ql/PricingEngines/mcsimulation.hpp>

List of all members.


Detailed Description

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

base class for Monte Carlo engines

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

See McVanillaEngine as an example of one factor engine.


Public Types

typedef MonteCarloModel< MC,
S >::path_generator_type 
path_generator_type
typedef MonteCarloModel< MC,
S >::path_pricer_type 
path_pricer_type
typedef MonteCarloModel< MC,
S >::stats_type 
stats_type

Public Member Functions

Real value (Real tolerance, Size maxSample=QL_MAX_INTEGER) const
 add samples until the required tolerance is reached

Real valueWithSamples (Size samples) const
 simulate a fixed number of samples

Real errorEstimate () const
 error estimated using the samples simulated so far

const stats_typesampleAccumulator (void) const
 access to the sample accumulator for richer statistics


Protected Member Functions

 McSimulation (bool antitheticVariate, bool controlVariate)
virtual boost::shared_ptr<
path_pricer_type
pathPricer () const =0
virtual boost::shared_ptr<
path_pricer_type
controlPathPricer () const
virtual boost::shared_ptr<
PricingEngine
controlPricingEngine () const
virtual boost::shared_ptr<
path_generator_type
pathGenerator () const =0
virtual TimeGrid timeGrid () const =0

Protected Attributes

boost::shared_ptr< MonteCarloModel<
MC, S > > 
mcModel_
bool antitheticVariate_
bool controlVariate_

Static Protected Attributes

const Size minSample_ = 1023


QuantLib.org
QuantLib
Hosted by
SourceForge.net Logo
Documentation generated by
doxygen