77范文网 - 专业文章范例文档资料分享平台

基于Matlab语言的Monte Carlo入门教程

来源:网络收集 时间:2020-04-16 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

目录

第○章 前言与说明

第一节 简单而复杂的Monte Carlo 第二节 本课程将解决的问题 第三节 章节设置

第四节 课程的教授模式 第五节 基础知识要求

第六节 Monte Carlo并行计算 第七节 关于回答疑问 第八节 关于后续课程 第九节 版权声明 第十节 参考文献

第一章 Monte Carlo方法概述 第一节 Monte Carlo历史渊源 第二节 Monte Carlo方法适用用途 第三节 最简单的例子

第四节 Monte Carlo形式与一般步骤 第五节 Monte Carlo方法的优点 第六节 Monte Carlo原理(选读)

第二章 随机数的生成 第一节 随机变量基本概念 第二节 一维随机数

第三节 多维联合分布的随机数 第四节 伪随机数的问题

第三章 随机过程模拟 第一节 标准布朗运动

第二节 带漂移的一般布朗运动 第三节 几何布朗运动

第四章 例子 第一节 关于停止条件

第二节 例子一:计算定积分 第三节 例子二:计算圆周率

第四节 例子三:计算欧式看涨期权价值 第五节 例子四:计算亚式看涨期权价值 第六节 例子五:计算Accumulator价值

第五章 并行计算

第一节 Matlab并行计算原理梗概 第二节 启动Matlab并行计算环境 第三节 终止Matlab并行计算环境

第四节 Matlab做Monte Carlo并行的算法(本人推荐) 第五节 将前一章例子改写为并行代码 第六节 速度实测结果

前言与说明

一、Monte Carlo方法是一门简单而复杂的学问

Monte Carlo方法往小的方面说很简单,就是生成一堆随机数,然后以某函数规则计算出一堆数值,最后求这些数值的平均值就得到了结果;往大的方面说却很复杂,要将蒙特卡洛做好需要考虑的问题很多,例如:

1. 需要解决的问题是否收敛——倘若不收敛,Monte Carlo方法就不能用,不然计算出来的结果有何意义,只有老天才知道;

2. 所选用的具体方法收敛速度如何——虽然几乎所有Monte Carlo收敛阶数为1/2,但不同的方法收敛阶数前面的系数不同;

3. 所得解的误差是多少——Monte Carlo方法从来得不到精确值,而是一个近似的随机变量,因此,任何时候,报告Monte Carlo解时,需要同时报告该解的方差;

4. 如何选择具体算法,以加快速度——Monte Carlo模拟需要较长时间,所以速度很重要。尤其是你使用Monte Carlo方法实时计算金融产品价格时,时间就是金钱。加快Monte Carlo速度有很多或大或小的技巧,而且这些技巧还要依据不同问题而定。

5. 伪随机数问题——计算机生成的随机数都是伪随机数,很多Monte Carlo书中都大书特书伪随机数的危害以及如何生成尽可能“真”的伪随机数。有此告诫在,我们自然不能对伪随机数问题视而不见,但是我们是否就要因这一问题惶惶不可终日呢?

6. 模型与现实——模型是我们的理想,但是现实中的市场却是残酷的。如果有人仅仅拿着书本就冲进市场,那他必然还要交高昂的学费,最终鲜血淋漓地出来。同理,Monte Carlo方法(以及其他几乎所有方法),任何时候都只能给我们作参考。然而,我们却可以以科学的态度和方法使用Monte Carlo方法,以使其结果更加贴近现实,参考价值更大。

二、本课程将解决的问题

作为一门针对非学术人士的入门性质的课程,本课程最注重的是基础的应用性知识。在接下来,我会详细讲述Monte Carlo方法本身,且为了确保大家看懂,我会精选一些例子,从这些例子的数学推导,到算法描述,到程序设计,到误差分析,这些基础过程都将涉及。尤其考虑到我见过的不少人(尤其是论坛上的不少网友),编程基础比较薄弱,所以在讲解程序时我会逐句分析,至少确保你能看懂这个程序的每个步骤。

另一方面,入门课程还肩负为大家未来学习奠定基础的重要使命,故课程中要覆盖各个方面的内容,例如上一节所提到的都或多或少有所覆盖。

但是,正是因为这是一个入门性质的课程,很多的内容无法涉及,同时很多有所涉及的内容也无法充分展开。具体在下文中涉及到相关内容时我会尽量提供进一步学习的方向、方法等延伸性问题。

这里值得一提的是上文所提及的模型与现实的问题。本课程中的例子基本都是理论化的例子,这样的例子好处在于它简化了很多复杂的现实状况,对于初学者而言容易上手,也便于教授Monte Carlo方法如何使用,同时它还是解决现实问题的基础。所以,要特别注意,我在课程中讲的那些金融工具定价的例子都是理论化的例子,千万不要以为学会那些之后就已经学会了现实中的金融产品的定价,套用一句广告词:“才刚刚开始呢”。

三、章节设置

常见的Monte Carlo书籍包含如下内容:随机数的生成、特定分布抽样、优化(降低方差)技巧、随机过程模拟、Monte Carlo方法实际应用、以及扩展(主要是Quasi-Monte Carlo,即拟蒙特卡洛方法)

本教程覆盖随机数生成、特定抽样分布、随机过程模拟和应用实例。但和那些书籍不同在于如下这些方面:

不详细讲伪随机数问题——我们用Matlab内附带的随机数生成器,将伪随机数问题留给Mathworks的专家吧

不讲降低方差技巧——降低方差技术讲的是怎样更快地作Monte Carlo,而这是入门教程,目的在教会你怎样做Monte Carlo,如果你还不会做就去学怎样可以做得更快那没有意义。所以,先学会基本使用方法最重要,优化的问题在熟练后再讲述就水到渠成了。

特定分布抽样——会讲很多有用的技巧,例如Reject Method、条件分布方法、协方差阵、Copula等方法生成联合分布随机变量,但是如果讲述太深,每个内容都可以写一本书了,所以不会讲太深,只讲用的最多的那很少一部分内容。

并行Monte Carlo——很多入门的书上不会讲这个,但是这个课程里面会专门用一章讲,更详细介绍见本章倒数第三小节。

四、课程的教授模式

本课程中每个知识点基本按照如下步骤展开:

(一)理论基础

主要介绍与知识点息息相关的基础知识,例如公式的数学推导、概念的含义、Matlab语句基础、计算机相关知识等等。这样做最大的作用是帮助大家回忆这些内容,以便与主体内容展开相衔接。由于这并非主旨所在,所以不会在其上花费过多笔墨。若你从未接触过这些基础知识,你要是看一遍课程中的简介就懂了自然最好,若不懂,则建议翻阅相应的参考书籍。我会在课程讲义最后附上我写作本课程讲义所用到的所有参考书目。(由于我习惯看英文原版书,所以此教程的参考书目大多数是英文书籍)

(二)主体内容

不必多言,就是知识点的展开。

(三)相关例子

每个知识点后面我会附上一些与其有关的简单的例子。

(四)注意事项

任何知识、方法都有它自身的局限,所以仅仅知道方法怎么做还不够,还需要明白这些方法何时何地能用。

从另一个角度来看,本课程主要包含如下资料:

(一)讲义

就是你当前看到的这份资料。此资料覆盖所有便于书写的内容。而且,购买了视频教程的网友将收到PDF版本的讲义;同时这份讲义还会以HTML网页的形式挂在我的个人主页(http://macro2.cn/),网页教程可以直接打印,打印过程中非主要内容(如导航、广告等)会自动隐藏。

由于我的个人主页是商业空间,需要大量的流量才能产生足以支持空间运营的广告收入,所以请购买了视频教程的网友不要在未经我个人允许前提下将PDF讲义等资料公布在网络上,对此我保留追究法律责任的权力。

特别需要指出一点:由于时间紧迫,写作讲义时文字不经细细斟酌,虽然意思基本表达清楚,但中文语法错误在所难免。今后有时间会逐句修改,也欢迎大家帮忙校订,具体做法是:保存当前网页为html,用word打开网页,另存为doc,之后再修订文档。

(二)PPT

PPT主要覆盖一些公式性推导和一些我并不拥有完全版权的内容——有些比较独特的知识、例子来自于我在北京大学的金融工程等课程,将其以电子版发布在网络上会冒犯到为这些知识、例子付出很多心血的老师——故PPT不会分发(无论是否购买视频教程),但是会显示在视频中。观众通过暂停视频的方式阅读这些内容。

(三)代码

Monte Carlo的代码不是很复杂,但要写出高质量的代码却不容易,所以对于大多数例子我会写至少两个版本代码,一个是基础版本,采用大家最熟悉的最基础的Matlab语句来写;另一个是优化后的版本,这一版本将充分考虑Matlab特点进行优化,但是它可能不那么容易读懂。

对于购买了视频的网友,我会将PDF和代码文件放在一个压缩包中发送至你的邮箱,只要将此附件解压缩即可得到代码文件。

(四)视频教程

视频教程文件太大,我不可能找到足够的免费空间来存放这些视频文件,免费提供给大家观看。故视频教程将借助其他网站的空间。在我当前与人大经济论坛的合同结束前,此视频教程由人大经济论坛独家提供。具体的网址见:http://baoming.pinggu.org/Default.aspx?id=11

五、基础知识要求

虽然我会在每章开始部分很简略地复习部分基础概念,但是要顺利完成此课程,请确保自己牢固掌握了如下知识。

(一)数学基础

学习Monte Carlo必备基础的概率论知识。随机变量、PDF(随机变量的概率分布)、CDF(随机变量的累积分布)、联合分布、条件分布、边缘分布、COPULA、随机微分方程(SDE)等等。而且不仅仅是知道这些概念是什么含义,还要会用、会算。

不过也不用被这些吓到,虽然我在相关章节讲的内容比较深,这些知识都全要用到,但是里面最重要的知识只有一个,那就是正态分布。你只要会熟练学习正态分布,就可以解决不少金融产品理论定价的问题。话说回来,必须指出,本教程里面涉及的数学相对于真正难的知识还只是入门,要做现实市场中的产品定价这些知识远远不够。

补充说明,大多数理论定价模型,例如Black Scholes模型,Black模型,为了推导简便起见(当前也限于这些论文写作时的计算机技术等外界因素),都只考虑正态分布;但是,在真实市场中,很多经济变量(例如股票收益率),可能符合白噪声假设,但是一般不符合正态分布假设及独立假设。总之,只掌握正态分布,理论模型基本不会有问题,却不足以做真实市场的分析。

(二)Matlab基础

本教程的某章中,我会简略讲讲编程入门知识。但是Matlab的基本操作需要你自己去看。要求掌握程度可以参考我写得Matlab简明教程(http://macro2.cn/notes/matlab/)。

(三)金融工程知识

虽然这个教程没有明确表明专门讲金融产品定价,但是这里用了不少金融产品理论定价的例子来解说Monte Carlo方法,如果你对金融工程比较熟悉,那么看这些部分相对会更顺利。即使不熟悉也没关系,每个例子的开始部分,我会简要解释相关背景知识。

(四)计算机基本知识

由于需要讲述Matlab实际操作,所以你应该熟悉Matlab软件启动退出,磁盘目录概念;另外会讲述并行Monte Carlo计算,所以你应该明白双核概念,内存CPU等等基本知识总要懂一点的。其他的不要求。

六、Monte Carlo并行计算

这里还特别提一下并行计算。现在双核机器基本普及,还有不少网友的机器是三核甚至四核,如果能够同时使用多个核心做计算,运算速度可以有显著提升。幸运的是,Monte Carlo方法的特点使得它特别适合并行计算。所以,在这个教程中,我将用独立的一章特别讲述如何使用Matlab并行计算工具箱(Parallel Computing Toolbox)做Monte Carlo模拟。

我会先介绍并行计算的基础知识(例如两种主要的并行模式),以及会更详细介绍Matlab并行计算工具箱的工作原理——Matlab的并行计算并非标准的并行计算,必须了解其特点才能发挥并行计算优势,否则速度可能更慢。

介绍完基础知识,我将通过将此前各章的Monte Carlo例子改写为并行计算代码这种形式来讲述Monte Carlo并行算法。之后,还将特别列出用Matlab做并行Monte Carlo的一些注意事项,并给出一些用以确保效率的简要规则。

七、关于回答疑问

不论是否购买了视频教程都可以通过邮件形式联系我,我的Email地址在主(http://macro2.cn)页上及视频教程中已标明。我很乐意就本课程相关的任何问题与大家交流。不过有几点还请大家理解:

1. 由于我邮箱中垃圾邮件很多,所以你写信时的书写方式和内容尽量确保不要被Gmail当成垃圾邮件处理掉

2. 我事情比较忙,所以可能不能及时回信,还请见谅。

3. 有疑问可以通过邮件联系我,也可以直接在论坛上相关板块发帖咨询。(我收邮件频率一般高于上论坛频率)

4. 在询问我之前强烈建议你在讲义、我主页的FAQ栏目中查询是否已有类似问题。 5. 提问一定要详细具体,并附上详尽的背景材料,那些飘渺无踪影的问题实在令人无从下手!

6. 我回答问题的方式可能是直接给出代码等解答,也可能是告知你从何处寻找相关信息以自己解决——即授人以鱼和授人以渔这两种方式我都有可能选择。

7. 如果所提问题有很好的代表性,我将略去或更换你提问中涉及你个人情况的信息、数据,然后将此问题的解答方法放置在课程主页上,以便其它网友参考。

8. 我保证会很认真对待每位网友每个有意义的问题并会尽力去寻找答案,但我无法保证每个问题我都能回答。

八、关于后续课程

这个课程只讲基础。主要作用有两个,一个是为更深课程提供一个入门途径,这样将来我要是讲更深课程时就不必浪费时间讲基础知识了;另一个是投石问路,我的时间一直很紧张,此课程也是第一次和人大经济论坛合作,因此我需要看看市场反应再决定是否有必要花费大量时间准备延伸课程。

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于Matlab语言的Monte Carlo入门教程在线全文阅读。

基于Matlab语言的Monte Carlo入门教程.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/976585.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: