1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<meta name="robots" content="none">
<title>MonteCarloModel< MC, RNG, S > Class Template Reference</title>
<link rel="stylesheet" href="quantlib.css" type="text/css">
<link rel="stylesheet" href="print.css" type="text/css" media="print">
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
<link rel="icon" href="favicon.ico" type="image/x-icon">
</head>
<body>
<div id="container">
<div id="header">
<img class="titleimage"
src="QL-title.jpg" width="185" height="50" border="0"
alt="QuantLib">
<br>
<h3 class="subtitle">A free/open-source library for quantitative finance</h3>
</div>
<div id="menu">
<h3 class="navbartitle">Version 1.2</h3>
<hr>
<h3 class="navbartitle">Getting started</h3>
<ul class="navbarlist">
<li class="navlink"><a href="index.html">Introduction</a></li>
<li class="navlink"><a href="where.html">Where to get QuantLib</a></li>
<li class="navlink"><a href="install.html">Installation</a></li>
<li class="navlink"><a href="config.html">Configuration</a></li>
<li class="navlink"><a href="usage.html">Usage</a></li>
<li class="navlink"><a href="history.html">Version history</a></li>
<li class="navlink"><a href="resources.html">Additional resources</a></li>
<li class="navlink"><a href="group.html">The QuantLib group</a></li>
<li class="navlink"><a href="license.html">Copyright and license</a></li>
</ul>
<hr>
<h3 class="navbartitle">Reference manual</h3>
<ul class="navbarlist">
<li class="navlink"><a href="modules.html">Modules</a></li>
<li class="navlink"><a href="hierarchy.html">Class Hierarchy</a></li>
<li class="navlink"><a href="annotated.html">Compound List</a></li>
<li class="navlink"><a href="files.html">File List</a></li>
<li class="navlink"><a href="functions.html">Compound Members</a></li>
<li class="navlink"><a href="globals.html">File Members</a></li>
<li class="navlink"><a href="todo.html">Todo List</a></li>
<li class="navlink"><a href="bug.html">Known Bugs</a></li>
<li class="navlink"><a href="caveats.html">Caveats</a></li>
<li class="navlink"><a href="test.html">Test Suite</a></li>
<li class="navlink"><a href="examples.html">Examples</a></li>
</ul>
</div>
<div id="content">
<!--Doxygen-generated content-->
<!-- Generated by Doxygen 1.7.6.1 -->
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><b>QuantLib</b> </li>
<li class="navelem"><a class="el" href="class_quant_lib_1_1_monte_carlo_model.html">MonteCarloModel</a> </li>
</ul>
</div>
</div>
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> |
<a href="#pub-methods">Public Member Functions</a> </div>
<div class="headertitle">
<div class="title">MonteCarloModel< MC, RNG, S > Class Template Reference<div class="ingroups"><a class="el" href="group__mcarlo.html">Monte Carlo framework</a></div></div> </div>
</div><!--header-->
<div class="contents">
<!-- doxytag: class="QuantLib::MonteCarloModel" -->
<p>General-purpose Monte Carlo model for path samples.
<a href="class_quant_lib_1_1_monte_carlo_model.html#details">More...</a></p>
<p><code>#include <ql/methods/montecarlo/montecarlomodel.hpp></code></p>
<p><a href="class_quant_lib_1_1_monte_carlo_model-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9792aacbaa395d164fe71c19940a35cf"></a><!-- doxytag: member="QuantLib::MonteCarloModel::mc_traits" ref="a9792aacbaa395d164fe71c19940a35cf" args="" -->
typedef MC< RNG > </td><td class="memItemRight" valign="bottom"><b>mc_traits</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b06460378c6160a0308efbecfc7a63f"></a><!-- doxytag: member="QuantLib::MonteCarloModel::rng_traits" ref="a3b06460378c6160a0308efbecfc7a63f" args="" -->
typedef RNG </td><td class="memItemRight" valign="bottom"><b>rng_traits</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aab11530354ed62b0a419f90803f7a647"></a><!-- doxytag: member="QuantLib::MonteCarloModel::path_generator_type" ref="aab11530354ed62b0a419f90803f7a647" args="" -->
typedef MC< RNG ><br class="typebreak"/>
::path_generator_type </td><td class="memItemRight" valign="bottom"><b>path_generator_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a37efbc67c5d5bcba2ad1e5a6bc382563"></a><!-- doxytag: member="QuantLib::MonteCarloModel::path_pricer_type" ref="a37efbc67c5d5bcba2ad1e5a6bc382563" args="" -->
typedef MC< RNG >::path_pricer_type </td><td class="memItemRight" valign="bottom"><b>path_pricer_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a204507d73ca2954ec4c0b27373d2c40c"></a><!-- doxytag: member="QuantLib::MonteCarloModel::sample_type" ref="a204507d73ca2954ec4c0b27373d2c40c" args="" -->
typedef <br class="typebreak"/>
path_generator_type::sample_type </td><td class="memItemRight" valign="bottom"><b>sample_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad8e5fd95c87e9d6a3657dc6083452142"></a><!-- doxytag: member="QuantLib::MonteCarloModel::result_type" ref="ad8e5fd95c87e9d6a3657dc6083452142" args="" -->
typedef <br class="typebreak"/>
path_pricer_type::result_type </td><td class="memItemRight" valign="bottom"><b>result_type</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac9e2bc84dc5b8fed59e079e42208e74c"></a><!-- doxytag: member="QuantLib::MonteCarloModel::stats_type" ref="ac9e2bc84dc5b8fed59e079e42208e74c" args="" -->
typedef S </td><td class="memItemRight" valign="bottom"><b>stats_type</b></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac333491bacb2f08888afa1d98ae29d50"></a><!-- doxytag: member="QuantLib::MonteCarloModel::MonteCarloModel" ref="ac333491bacb2f08888afa1d98ae29d50" args="(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(), const boost::shared_ptr< path_generator_type > &cvPathGenerator=boost::shared_ptr< path_generator_type >())" -->
 </td><td class="memItemRight" valign="bottom"><b>MonteCarloModel</b> (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(), const boost::shared_ptr< path_generator_type > &cvPathGenerator=boost::shared_ptr< path_generator_type >())</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a77cd545c02ed7037a3e8d582ca1069c3"></a><!-- doxytag: member="QuantLib::MonteCarloModel::addSamples" ref="a77cd545c02ed7037a3e8d582ca1069c3" args="(Size samples)" -->
void </td><td class="memItemRight" valign="bottom"><b>addSamples</b> (<a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> samples)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e28dddeca06f8b74c814ace5b4fac58"></a><!-- doxytag: member="QuantLib::MonteCarloModel::sampleAccumulator" ref="a4e28dddeca06f8b74c814ace5b4fac58" args="(void) const " -->
const stats_type & </td><td class="memItemRight" valign="bottom"><b>sampleAccumulator</b> (void) const </td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><h3>template<template< class > class MC, class RNG, class S = Statistics><br/>
class QuantLib::MonteCarloModel< MC, RNG, S ></h3>
<p>General-purpose Monte Carlo model for path samples. </p>
<p>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 <a class="el" href="mctraits_8hpp.html" title="Monte Carlo policies.">mctraits.hpp</a> for examples.</p>
<p>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. </p>
<dl><dt><b>Examples: </b></dt><dd><a class="el" href="_discrete_hedging_8cpp-example.html#_a30">DiscreteHedging.cpp</a>.</dd>
</dl></div></div><!-- contents -->
</div>
<div class="footer">
<div class="endmatter">
Documentation generated by
<a href="http://www.doxygen.org">Doxygen</a> 1.7.6.1
</div>
</div>
</div>
</body>
</html>
|