Multilevel Monte Carlo software

This page provides software being developed in a MLMC software project for MLMC computations in a variety of languages.

This software differs from my previous MLMC software in separating the computations from the plotting of the results. Each application code has two parts, a high-level part which calls "mlmc_test" to perform the MLMC tests, using the routine "mlmc", and a low-level part which is called by both "mlmc_test" and "mlmc" to compute the MLMC differences for one particular level of correction.

The application codes produce one or more output text files. The MATLAB routine "mlmc_plot" can then be used to generate the standard set of figures which I use in most of my papers.


Languages


MATLAB

Common routines used by all applications:
opre -- financial options based on scalar geometric Brownian motion and Heston models, similar to my original 2008 Operations Research paper, using an Euler-Maruyama discretisation
mcqmc06 -- financial options based on scalar geometric Brownian motion, similar to my MCQMC06 paper, using a Milstein discretisation
basket -- basket options based on 5 underlying assets, similar to my 2009 Winter Simulation Conference paper, using a Milstein discretisation
reflected -- 1D reflected diffusions, giving results for a conference presentation at SciCADE 2015
29/04/16: MATLAB software for Maximum Entropy reconstruction, developed by Prof. Alexey Chernov, is available in this zip file.


C/C++

Common routines used by all applications:
mcqmc06 -- financial options based on scalar geometric Brownian motion, similar to MCQMC06 paper, using a Milstein discretisation

Python

Coming soon ...


R

Please follow this link.


Licensing and acknowledgements

This software is freely available to all under a GPL license -- anyone requiring a more permissive license for commercial purposes should contact me.

The software is based on the research reported in the papers listed here. If you find it helpful in your research, the papers there can be cited in any publications. I would also be interested to hear about it, particularly if it is used for novel applications.

The underlying research has been supported by