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 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.20"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>QuantLib: MCAmericanPathEngine< RNG > Class Template Reference</title>
<link href='https://fonts.googleapis.com/css?family=Merriweather+Sans:800' rel='stylesheet' type='text/css'>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="quantlibextra.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname"><a href="http://quantlib.org">
<img alt="QuantLib" src="QL-title.jpg"></a>
<div id="projectbrief">A free/open-source library for quantitative finance</div>
<div id="projectnumber">Reference manual - version 1.20</div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.20 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespace_quant_lib.html">QuantLib</a></li><li class="navelem"><a class="el" href="class_quant_lib_1_1_m_c_american_path_engine.html">MCAmericanPathEngine</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<a href="#pro-methods">Protected Member Functions</a> |
<a href="class_quant_lib_1_1_m_c_american_path_engine-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">MCAmericanPathEngine< RNG > Class Template Reference<div class="ingroups"><a class="el" href="group__engines.html">Pricing engines</a> » <a class="el" href="group__basketengines.html">Basket option engines</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p>least-square Monte Carlo engine
<a href="class_quant_lib_1_1_m_c_american_path_engine.html#details">More...</a></p>
<p><code>#include <ql/experimental/mcbasket/mcamericanpathengine.hpp></code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
<img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for MCAmericanPathEngine< RNG >:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="class_quant_lib_1_1_m_c_american_path_engine__inherit__graph.png" border="0" usemap="#a_m_c_american_path_engine_3_01_r_n_g_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="_m_c_american_path_engine_3_01_r_n_g_01_4_inherit__map" id="a_m_c_american_path_engine_3_01_r_n_g_01_4_inherit__map">
<area shape="rect" title="least-square Monte Carlo engine" alt="" coords="515,13,680,54"/>
<area shape="rect" href="class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine.html" title=" " alt="" coords="248,5,467,61"/>
<area shape="rect" href="class_quant_lib_1_1_mc_simulation.html" title=" " alt="" coords="5,13,200,54"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a06777ceebe324df80c5abea9bbf596c8"><td class="memItemLeft" align="right" valign="top"><a id="a06777ceebe324df80c5abea9bbf596c8"></a>
 </td><td class="memItemRight" valign="bottom"><b>MCAmericanPathEngine</b> (const ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_stochastic_process_array.html">StochasticProcessArray</a> > &, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> timeSteps, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> timeStepsPerYear, bool brownianBridge, bool antitheticVariate, bool controlVariate, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> requiredSamples, <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> requiredTolerance, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> maxSamples, <a class="el" href="namespace_quant_lib.html#ae3df3f13e67885465f4e359b3bffa4e6">BigNatural</a> seed, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> nCalibrationSamples=<a class="el" href="class_quant_lib_1_1_null.html">Null</a>< <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> >())</td></tr>
<tr class="separator:a06777ceebe324df80c5abea9bbf596c8"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine.html">MCLongstaffSchwartzPathEngine< PathMultiAssetOption::engine, MultiVariate, PseudoRandom ></a></td></tr>
<tr class="memitem:a661bd0475b0f959c9638f3b6e29a35e6 inherit pub_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a661bd0475b0f959c9638f3b6e29a35e6"></a>
 </td><td class="memItemRight" valign="bottom"><b>MCLongstaffSchwartzPathEngine</b> (const ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_stochastic_process.html">StochasticProcess</a> > &process, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> timeSteps, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> timeStepsPerYear, bool brownianBridge, bool antitheticVariate, bool controlVariate, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> requiredSamples, <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> requiredTolerance, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> maxSamples, <a class="el" href="namespace_quant_lib.html#ae3df3f13e67885465f4e359b3bffa4e6">BigNatural</a> seed, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> nCalibrationSamples=<a class="el" href="class_quant_lib_1_1_null.html">Null</a>< <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> >())</td></tr>
<tr class="separator:a661bd0475b0f959c9638f3b6e29a35e6 inherit pub_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a082ff96da379d5e17436372ccb3c0972 inherit pub_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a082ff96da379d5e17436372ccb3c0972"></a>
void </td><td class="memItemRight" valign="bottom"><b>calculate</b> () const</td></tr>
<tr class="separator:a082ff96da379d5e17436372ccb3c0972 inherit pub_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_methods_class_quant_lib_1_1_mc_simulation"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_quant_lib_1_1_mc_simulation')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="class_quant_lib_1_1_mc_simulation.html">McSimulation< MultiVariate, PseudoRandom, Statistics ></a></td></tr>
<tr class="memitem:a5a561aadfe4f8552ee3e1a793a229973 inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a5a561aadfe4f8552ee3e1a793a229973"></a>
result_type </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_mc_simulation.html#a5a561aadfe4f8552ee3e1a793a229973">value</a> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> tolerance, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> maxSamples=<a class="el" href="group__limit_macros.html#gac49205214551771cf97efe9839ac6cb5">QL_MAX_INTEGER</a>, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> minSamples=1023) const</td></tr>
<tr class="memdesc:a5a561aadfe4f8552ee3e1a793a229973 inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="mdescLeft"> </td><td class="mdescRight">add samples until the required absolute tolerance is reached <br /></td></tr>
<tr class="separator:a5a561aadfe4f8552ee3e1a793a229973 inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a19d48f0ef361732925944d5406327b62 inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a19d48f0ef361732925944d5406327b62"></a>
result_type </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_mc_simulation.html#a19d48f0ef361732925944d5406327b62">valueWithSamples</a> (<a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> samples) const</td></tr>
<tr class="memdesc:a19d48f0ef361732925944d5406327b62 inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="mdescLeft"> </td><td class="mdescRight">simulate a fixed number of samples <br /></td></tr>
<tr class="separator:a19d48f0ef361732925944d5406327b62 inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a2b77f533f06da69df238758cd636985e inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a2b77f533f06da69df238758cd636985e"></a>
result_type </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_mc_simulation.html#a2b77f533f06da69df238758cd636985e">errorEstimate</a> () const</td></tr>
<tr class="memdesc:a2b77f533f06da69df238758cd636985e inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="mdescLeft"> </td><td class="mdescRight">error estimated using the samples simulated so far <br /></td></tr>
<tr class="separator:a2b77f533f06da69df238758cd636985e inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:abf7622f9bc94fbb40425a63aea8bac43 inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="abf7622f9bc94fbb40425a63aea8bac43"></a>
const <a class="el" href="class_quant_lib_1_1_generic_risk_statistics.html">stats_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_mc_simulation.html#abf7622f9bc94fbb40425a63aea8bac43">sampleAccumulator</a> () const</td></tr>
<tr class="memdesc:abf7622f9bc94fbb40425a63aea8bac43 inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="mdescLeft"> </td><td class="mdescRight">access to the sample accumulator for richer statistics <br /></td></tr>
<tr class="separator:abf7622f9bc94fbb40425a63aea8bac43 inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ad5f42177fb934aa1898abe8120e7d8dc inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="ad5f42177fb934aa1898abe8120e7d8dc"></a>
void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_quant_lib_1_1_mc_simulation.html#ad5f42177fb934aa1898abe8120e7d8dc">calculate</a> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> requiredTolerance, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> requiredSamples, <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> maxSamples) const</td></tr>
<tr class="memdesc:ad5f42177fb934aa1898abe8120e7d8dc inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="mdescLeft"> </td><td class="mdescRight">basic calculate method provided to inherited pricing engines <br /></td></tr>
<tr class="separator:ad5f42177fb934aa1898abe8120e7d8dc inherit pub_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a08993bed767cddb8364e0fcf6f02f4e5"><td class="memItemLeft" align="right" valign="top"><a id="a08993bed767cddb8364e0fcf6f02f4e5"></a>
ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_longstaff_schwartz_multi_path_pricer.html">LongstaffSchwartzMultiPathPricer</a> > </td><td class="memItemRight" valign="bottom"><b>lsmPathPricer</b> () const</td></tr>
<tr class="separator:a08993bed767cddb8364e0fcf6f02f4e5"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pro_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine.html">MCLongstaffSchwartzPathEngine< PathMultiAssetOption::engine, MultiVariate, PseudoRandom ></a></td></tr>
<tr class="memitem:a193be0bf3de6f67e8fa1276dd76b6b1a inherit pro_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a193be0bf3de6f67e8fa1276dd76b6b1a"></a>
virtual ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_longstaff_schwartz_multi_path_pricer.html">LongstaffSchwartzMultiPathPricer</a> > </td><td class="memItemRight" valign="bottom"><b>lsmPathPricer</b> () const=0</td></tr>
<tr class="separator:a193be0bf3de6f67e8fa1276dd76b6b1a inherit pro_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a9820e026a481e4c1cb95b4d89345101c inherit pro_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a9820e026a481e4c1cb95b4d89345101c"></a>
<a class="el" href="class_quant_lib_1_1_time_grid.html">TimeGrid</a> </td><td class="memItemRight" valign="bottom"><b>timeGrid</b> () const</td></tr>
<tr class="separator:a9820e026a481e4c1cb95b4d89345101c inherit pro_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae6583bf2aa04df4864b264950f96d72f inherit pro_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="ae6583bf2aa04df4864b264950f96d72f"></a>
ext::shared_ptr< path_pricer_type > </td><td class="memItemRight" valign="bottom"><b>pathPricer</b> () const</td></tr>
<tr class="separator:ae6583bf2aa04df4864b264950f96d72f inherit pro_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aa5f571e5ada757d8eb10dfbc93893a11 inherit pro_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="aa5f571e5ada757d8eb10dfbc93893a11"></a>
ext::shared_ptr< path_generator_type > </td><td class="memItemRight" valign="bottom"><b>pathGenerator</b> () const</td></tr>
<tr class="separator:aa5f571e5ada757d8eb10dfbc93893a11 inherit pro_methods_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pro_methods_class_quant_lib_1_1_mc_simulation"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_quant_lib_1_1_mc_simulation')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="class_quant_lib_1_1_mc_simulation.html">McSimulation< MultiVariate, PseudoRandom, Statistics ></a></td></tr>
<tr class="memitem:ab494776b2804de3802deefd3b35e2503 inherit pro_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="ab494776b2804de3802deefd3b35e2503"></a>
 </td><td class="memItemRight" valign="bottom"><b>McSimulation</b> (bool antitheticVariate, bool controlVariate)</td></tr>
<tr class="separator:ab494776b2804de3802deefd3b35e2503 inherit pro_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab0baeac19d70cdc5bb45fba69e952650 inherit pro_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="ab0baeac19d70cdc5bb45fba69e952650"></a>
virtual ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_path_pricer.html">path_pricer_type</a> > </td><td class="memItemRight" valign="bottom"><b>controlPathPricer</b> () const</td></tr>
<tr class="separator:ab0baeac19d70cdc5bb45fba69e952650 inherit pro_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a79f272afb2a75b9cb82976068659645d inherit pro_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a79f272afb2a75b9cb82976068659645d"></a>
virtual ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_multi_path_generator.html">path_generator_type</a> > </td><td class="memItemRight" valign="bottom"><b>controlPathGenerator</b> () const</td></tr>
<tr class="separator:a79f272afb2a75b9cb82976068659645d inherit pro_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a441d284ba060bff72096605cf8d2bbd8 inherit pro_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a441d284ba060bff72096605cf8d2bbd8"></a>
virtual ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_pricing_engine.html">PricingEngine</a> > </td><td class="memItemRight" valign="bottom"><b>controlPricingEngine</b> () const</td></tr>
<tr class="separator:a441d284ba060bff72096605cf8d2bbd8 inherit pro_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a1ea677195f04cb07a45b762a6fb0b16e inherit pro_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a1ea677195f04cb07a45b762a6fb0b16e"></a>
virtual result_type </td><td class="memItemRight" valign="bottom"><b>controlVariateValue</b> () const</td></tr>
<tr class="separator:a1ea677195f04cb07a45b762a6fb0b16e inherit pro_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td colspan="2" onclick="javascript:toggleInherit('pub_types_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine.html">MCLongstaffSchwartzPathEngine< PathMultiAssetOption::engine, MultiVariate, PseudoRandom ></a></td></tr>
<tr class="memitem:a448f662b148297f7628d0db98064f1c2 inherit pub_types_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a448f662b148297f7628d0db98064f1c2"></a>
typedef <a class="el" href="struct_quant_lib_1_1_multi_variate.html">MultiVariate</a>< <a class="el" href="namespace_quant_lib.html#af791c06b3da1d5f4b90a19f3f423e75e">PseudoRandom</a> >::<a class="el" href="class_quant_lib_1_1_multi_path.html">path_type</a> </td><td class="memItemRight" valign="bottom"><b>path_type</b></td></tr>
<tr class="separator:a448f662b148297f7628d0db98064f1c2 inherit pub_types_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a9e8c6745d46fec52af674b05ce5b75d7 inherit pub_types_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a9e8c6745d46fec52af674b05ce5b75d7"></a>
typedef <a class="el" href="class_quant_lib_1_1_mc_simulation.html">McSimulation</a>< <a class="el" href="struct_quant_lib_1_1_multi_variate.html">MultiVariate</a>, <a class="el" href="namespace_quant_lib.html#af791c06b3da1d5f4b90a19f3f423e75e">PseudoRandom</a>, <a class="el" href="namespace_quant_lib.html#a235b6c8805adaa743cc845aae9c05946">Statistics</a> >::stats_type </td><td class="memItemRight" valign="bottom"><b>stats_type</b></td></tr>
<tr class="separator:a9e8c6745d46fec52af674b05ce5b75d7 inherit pub_types_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a7922dd7fea2c004ef3dc817d274cfe84 inherit pub_types_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a7922dd7fea2c004ef3dc817d274cfe84"></a>
typedef <a class="el" href="class_quant_lib_1_1_mc_simulation.html">McSimulation</a>< <a class="el" href="struct_quant_lib_1_1_multi_variate.html">MultiVariate</a>, <a class="el" href="namespace_quant_lib.html#af791c06b3da1d5f4b90a19f3f423e75e">PseudoRandom</a>, <a class="el" href="namespace_quant_lib.html#a235b6c8805adaa743cc845aae9c05946">Statistics</a> >::path_pricer_type </td><td class="memItemRight" valign="bottom"><b>path_pricer_type</b></td></tr>
<tr class="separator:a7922dd7fea2c004ef3dc817d274cfe84 inherit pub_types_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a2e301ff1e9761ffd43e2e8a626d5ae90 inherit pub_types_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a2e301ff1e9761ffd43e2e8a626d5ae90"></a>
typedef <a class="el" href="class_quant_lib_1_1_mc_simulation.html">McSimulation</a>< <a class="el" href="struct_quant_lib_1_1_multi_variate.html">MultiVariate</a>, <a class="el" href="namespace_quant_lib.html#af791c06b3da1d5f4b90a19f3f423e75e">PseudoRandom</a>, <a class="el" href="namespace_quant_lib.html#a235b6c8805adaa743cc845aae9c05946">Statistics</a> >::path_generator_type </td><td class="memItemRight" valign="bottom"><b>path_generator_type</b></td></tr>
<tr class="separator:a2e301ff1e9761ffd43e2e8a626d5ae90 inherit pub_types_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pub_types_class_quant_lib_1_1_mc_simulation"><td colspan="2" onclick="javascript:toggleInherit('pub_types_class_quant_lib_1_1_mc_simulation')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="class_quant_lib_1_1_mc_simulation.html">McSimulation< MultiVariate, PseudoRandom, Statistics ></a></td></tr>
<tr class="memitem:a4e86ff468be75be1d9ec907a1af3818f inherit pub_types_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a4e86ff468be75be1d9ec907a1af3818f"></a>
typedef <a class="el" href="class_quant_lib_1_1_monte_carlo_model.html">MonteCarloModel</a>< <a class="el" href="struct_quant_lib_1_1_multi_variate.html">MultiVariate</a>, <a class="el" href="namespace_quant_lib.html#af791c06b3da1d5f4b90a19f3f423e75e">PseudoRandom</a>, <a class="el" href="namespace_quant_lib.html#a235b6c8805adaa743cc845aae9c05946">Statistics</a> >::<a class="el" href="class_quant_lib_1_1_multi_path_generator.html">path_generator_type</a> </td><td class="memItemRight" valign="bottom"><b>path_generator_type</b></td></tr>
<tr class="separator:a4e86ff468be75be1d9ec907a1af3818f inherit pub_types_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae4588b42428cb979b0fad7369aef51a6 inherit pub_types_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="ae4588b42428cb979b0fad7369aef51a6"></a>
typedef <a class="el" href="class_quant_lib_1_1_monte_carlo_model.html">MonteCarloModel</a>< <a class="el" href="struct_quant_lib_1_1_multi_variate.html">MultiVariate</a>, <a class="el" href="namespace_quant_lib.html#af791c06b3da1d5f4b90a19f3f423e75e">PseudoRandom</a>, <a class="el" href="namespace_quant_lib.html#a235b6c8805adaa743cc845aae9c05946">Statistics</a> >::<a class="el" href="class_quant_lib_1_1_path_pricer.html">path_pricer_type</a> </td><td class="memItemRight" valign="bottom"><b>path_pricer_type</b></td></tr>
<tr class="separator:ae4588b42428cb979b0fad7369aef51a6 inherit pub_types_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a38a0f2b84a876f1da1a5805922d8bb7b inherit pub_types_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a38a0f2b84a876f1da1a5805922d8bb7b"></a>
typedef <a class="el" href="class_quant_lib_1_1_monte_carlo_model.html">MonteCarloModel</a>< <a class="el" href="struct_quant_lib_1_1_multi_variate.html">MultiVariate</a>, <a class="el" href="namespace_quant_lib.html#af791c06b3da1d5f4b90a19f3f423e75e">PseudoRandom</a>, <a class="el" href="namespace_quant_lib.html#a235b6c8805adaa743cc845aae9c05946">Statistics</a> >::<a class="el" href="class_quant_lib_1_1_generic_risk_statistics.html">stats_type</a> </td><td class="memItemRight" valign="bottom"><b>stats_type</b></td></tr>
<tr class="separator:a38a0f2b84a876f1da1a5805922d8bb7b inherit pub_types_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a94aa31e474a79b56b5921e9b5e59090d inherit pub_types_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a94aa31e474a79b56b5921e9b5e59090d"></a>
typedef <a class="el" href="class_quant_lib_1_1_monte_carlo_model.html">MonteCarloModel</a>< <a class="el" href="struct_quant_lib_1_1_multi_variate.html">MultiVariate</a>, <a class="el" href="namespace_quant_lib.html#af791c06b3da1d5f4b90a19f3f423e75e">PseudoRandom</a>, <a class="el" href="namespace_quant_lib.html#a235b6c8805adaa743cc845aae9c05946">Statistics</a> >::result_type </td><td class="memItemRight" valign="bottom"><b>result_type</b></td></tr>
<tr class="separator:a94aa31e474a79b56b5921e9b5e59090d inherit pub_types_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pro_static_methods_class_quant_lib_1_1_mc_simulation"><td colspan="2" onclick="javascript:toggleInherit('pro_static_methods_class_quant_lib_1_1_mc_simulation')"><img src="closed.png" alt="-"/> Static Protected Member Functions inherited from <a class="el" href="class_quant_lib_1_1_mc_simulation.html">McSimulation< MultiVariate, PseudoRandom, Statistics ></a></td></tr>
<tr class="memitem:a6e88fa36deb63e5bf40cad0082068f57 inherit pro_static_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a6e88fa36deb63e5bf40cad0082068f57"></a>
static <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><b>maxError</b> (const Sequence &sequence)</td></tr>
<tr class="separator:a6e88fa36deb63e5bf40cad0082068f57 inherit pro_static_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ab8fcdfbea80f9ee9882c197655216b2d inherit pro_static_methods_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="ab8fcdfbea80f9ee9882c197655216b2d"></a>
static <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><b>maxError</b> (<a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> error)</td></tr>
<tr class="separator:ab8fcdfbea80f9ee9882c197655216b2d inherit pro_static_methods_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine')"><img src="closed.png" alt="-"/> Protected Attributes inherited from <a class="el" href="class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine.html">MCLongstaffSchwartzPathEngine< PathMultiAssetOption::engine, MultiVariate, PseudoRandom ></a></td></tr>
<tr class="memitem:a1e8595e5b016209840f487121dbee3e7 inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a1e8595e5b016209840f487121dbee3e7"></a>
ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_stochastic_process.html">StochasticProcess</a> > </td><td class="memItemRight" valign="bottom"><b>process_</b></td></tr>
<tr class="separator:a1e8595e5b016209840f487121dbee3e7 inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a1a8040241758f53937896005a5764344 inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a1a8040241758f53937896005a5764344"></a>
const <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><b>timeSteps_</b></td></tr>
<tr class="separator:a1a8040241758f53937896005a5764344 inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ad58dc5329a35fa64347940b5f1221fab inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="ad58dc5329a35fa64347940b5f1221fab"></a>
const <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><b>timeStepsPerYear_</b></td></tr>
<tr class="separator:ad58dc5329a35fa64347940b5f1221fab inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a51081fa144e357770bd49b179b58935c inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a51081fa144e357770bd49b179b58935c"></a>
const bool </td><td class="memItemRight" valign="bottom"><b>brownianBridge_</b></td></tr>
<tr class="separator:a51081fa144e357770bd49b179b58935c inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a7a4398e3334d904c7a7e02133d6cf0e6 inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a7a4398e3334d904c7a7e02133d6cf0e6"></a>
const <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><b>requiredSamples_</b></td></tr>
<tr class="separator:a7a4398e3334d904c7a7e02133d6cf0e6 inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a23b4d398d041075802696987e2245fce inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a23b4d398d041075802696987e2245fce"></a>
const <a class="el" href="group__types.html#ga4bdf4bfe76b9ffa6fa64c47d8bfa0c78">Real</a> </td><td class="memItemRight" valign="bottom"><b>requiredTolerance_</b></td></tr>
<tr class="separator:a23b4d398d041075802696987e2245fce inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac44a253fd9a36577d257d179e236061b inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="ac44a253fd9a36577d257d179e236061b"></a>
const <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><b>maxSamples_</b></td></tr>
<tr class="separator:ac44a253fd9a36577d257d179e236061b inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a4b3f7693fb03f7e4a6950437590d497a inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="a4b3f7693fb03f7e4a6950437590d497a"></a>
const <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><b>seed_</b></td></tr>
<tr class="separator:a4b3f7693fb03f7e4a6950437590d497a inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:aa2c329ea8ac927646ea5562bdc6981c6 inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="aa2c329ea8ac927646ea5562bdc6981c6"></a>
const <a class="el" href="group__types.html#gaf38bdb4c54463b1f456655efa95b5c77">Size</a> </td><td class="memItemRight" valign="bottom"><b>nCalibrationSamples_</b></td></tr>
<tr class="separator:aa2c329ea8ac927646ea5562bdc6981c6 inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:abec5862edb35c0646c0981de4a582e62 inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memItemLeft" align="right" valign="top"><a id="abec5862edb35c0646c0981de4a582e62"></a>
ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_longstaff_schwartz_multi_path_pricer.html">LongstaffSchwartzMultiPathPricer</a> > </td><td class="memItemRight" valign="bottom"><b>pathPricer_</b></td></tr>
<tr class="separator:abec5862edb35c0646c0981de4a582e62 inherit pro_attribs_class_quant_lib_1_1_m_c_longstaff_schwartz_path_engine"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="inherit_header pro_attribs_class_quant_lib_1_1_mc_simulation"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_quant_lib_1_1_mc_simulation')"><img src="closed.png" alt="-"/> Protected Attributes inherited from <a class="el" href="class_quant_lib_1_1_mc_simulation.html">McSimulation< MultiVariate, PseudoRandom, Statistics ></a></td></tr>
<tr class="memitem:ac5c688be78662f3ff27e1f0cc6d96c86 inherit pro_attribs_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="ac5c688be78662f3ff27e1f0cc6d96c86"></a>
ext::shared_ptr< <a class="el" href="class_quant_lib_1_1_monte_carlo_model.html">MonteCarloModel</a>< <a class="el" href="struct_quant_lib_1_1_multi_variate.html">MultiVariate</a>, <a class="el" href="namespace_quant_lib.html#af791c06b3da1d5f4b90a19f3f423e75e">PseudoRandom</a>, <a class="el" href="namespace_quant_lib.html#a235b6c8805adaa743cc845aae9c05946">Statistics</a> > > </td><td class="memItemRight" valign="bottom"><b>mcModel_</b></td></tr>
<tr class="separator:ac5c688be78662f3ff27e1f0cc6d96c86 inherit pro_attribs_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a3f79786890b8283d011bf31f3b325311 inherit pro_attribs_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a3f79786890b8283d011bf31f3b325311"></a>
bool </td><td class="memItemRight" valign="bottom"><b>antitheticVariate_</b></td></tr>
<tr class="separator:a3f79786890b8283d011bf31f3b325311 inherit pro_attribs_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a1c27fd78e44f207125a15990d39ad4f5 inherit pro_attribs_class_quant_lib_1_1_mc_simulation"><td class="memItemLeft" align="right" valign="top"><a id="a1c27fd78e44f207125a15990d39ad4f5"></a>
bool </td><td class="memItemRight" valign="bottom"><b>controlVariate_</b></td></tr>
<tr class="separator:a1c27fd78e44f207125a15990d39ad4f5 inherit pro_attribs_class_quant_lib_1_1_mc_simulation"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template<class RNG = PseudoRandom><br />
class QuantLib::MCAmericanPathEngine< RNG ></h3>
<p>least-square Monte Carlo engine </p>
<dl class="caveats"><dt><b><a class="el" href="caveats.html#_caveats000025">Warning:</a></b></dt><dd>This method is intrinsically weak for out-of-the-money options.</dd></dl>
</div></div><!-- contents -->
<!-- HTML footer for doxygen 1.8.9.1-->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by <a href="http://www.doxygen.org/index.html">Doxygen</a>
1.8.20
</small></address>
</body>
</html>
|