QuantLib: a free/open-source library for quantitative finance
Reference manual - version 1.40
Loading...
Searching...
No Matches
MonteCarloModel< MC, RNG, S > Class Template Reference

General-purpose Monte Carlo model for path samples. More...

#include <ql/methods/montecarlo/montecarlomodel.hpp>

Public Types

typedef MC< RNG > mc_traits
typedef RNG rng_traits
typedef MC< RNG >::path_generator_type path_generator_type
typedef MC< RNG >::path_pricer_type path_pricer_type
typedef path_generator_type::sample_type sample_type
typedef path_pricer_type::result_type result_type
typedef S stats_type

Public Member Functions

 MonteCarloModel (ext::shared_ptr< path_generator_type > pathGenerator, ext::shared_ptr< path_pricer_type > pathPricer, stats_type sampleAccumulator, bool antitheticVariate, ext::shared_ptr< path_pricer_type > cvPathPricer=ext::shared_ptr< path_pricer_type >(), result_type cvOptionValue=result_type(), ext::shared_ptr< path_generator_type > cvPathGenerator=ext::shared_ptr< path_generator_type >())
void addSamples (Size samples)
const stats_typesampleAccumulator () const

Detailed Description

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

General-purpose Monte Carlo model for path samples.

The template arguments of this class correspond to available policies for the particular model to be instantiated—i.e., whether it is single- or multi-asset, or whether it should use pseudo-random or low-discrepancy numbers for path generation. Such decisions are grouped in trait classes so as to be orthogonal—see mctraits.hpp for examples.

The constructor accepts two safe references, i.e. two smart pointers, one to a path generator and the other to a path pricer. In case of control variate technique the user should provide the additional control option, namely the option path pricer and the option value.

Examples
DiscreteHedging.cpp.