MonteCarloModel Class Template Reference
[Monte Carlo framework]
#include <ql/MonteCarlo/montecarlomodel.hpp>
List of all members.
Detailed Description
template<class mc_traits, class stats_traits = Statistics>
class QuantLib::MonteCarloModel< mc_traits, stats_traits >
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.
|
Public Types |
typedef mc_traits::rsg_type | rsg_type |
typedef mc_traits::path_generator_type | path_generator_type |
typedef mc_traits::path_pricer_type | path_pricer_type |
typedef path_generator_type::sample_type | sample_type |
typedef path_pricer_type::result_type | result_type |
typedef stats_traits | stats_type |
Public Member Functions |
| MonteCarloModel (const boost::shared_ptr< path_generator_type > &pathGenerator, const boost::shared_ptr< path_pricer_type > &pathPricer, const stats_type &sampleAccumulator, bool antitheticVariate, const boost::shared_ptr< path_pricer_type > &cvPathPricer=boost::shared_ptr< path_pricer_type >(), result_type cvOptionValue=result_type()) |
void | addSamples (Size samples) |
const stats_type & | sampleAccumulator (void) const |
|