楼主: liuxin9023
176326 85

[学习分享] 蒙特卡洛模拟法及其Matlab案例   [推广有奖]

  • 1关注
  • 28粉丝

巨擘

0%

还不是VIP/贵宾

-

威望
2
论坛币
9 个
通用积分
2.1437
学术水平
60 点
热心指数
71 点
信用等级
37 点
经验
480980 点
帖子
1151
精华
0
在线时间
15370 小时
注册时间
2007-10-23
最后登录
2022-5-13

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
一 蒙特卡洛模拟法简介   
       蒙特卡洛(Monte Carlo)模拟是一种通过设定随机过程,反复生成时间序列,计算参数估计量和统计量,进而研究其分布特征的方法。具体的,当系统中各个单元的可靠性特征量已知,但系统的可靠性过于复杂,难以建立可靠性预计的精确数学模型或模型太复杂而不便应用时,可用随机模拟法近似计算出系统可靠性的预计值;随着模拟次数的增多,其预计精度也逐渐增高。由于涉及到时间序列的反复生成,蒙特卡洛模拟法是以高容量和高速度的计算机为前提条件的,因此只是在近些年才得到广泛推广。
     这个术语是二战时期美国物理学家Metropolis执行曼哈顿计划的过程中提出来的。
     蒙特卡洛模拟方法的原理是当问题或对象本身具有概率特征时,可以用计算机模拟的方法产生抽样结果,根据抽样计算统计量或者参数的值;随着模拟次数的增多,可以通过对各次统计量或参数的估计值求平均的方法得到稳定结论。
二 蒙特卡洛模拟法求解步骤     
     应用此方法求解工程技术问题可以分为两类:确定性问题和随机性问题。
     解题步骤如下:
     1.根据提出的问题构造一个简单、适用的概率模型或随机模型,使问题的解对应于该模型中随机变量的某些特征(如概率、均值和方差等),所构造的模型在主要特征参量方面要与实际问题或系统相一致
     2 .根据模型中各个随机变量的分布,在计算机上产生随机数,实现一次模拟过程所需的足够数量的随机数。通常先产生均匀分布的随机数,然后生成服从某一分布的随机数,方可进行随机模拟试验。
     3. 根据概率模型的特点和随机变量的分布特性,设计和选取合适的抽样方法,并对每个随机变量进行抽样(包括直接抽样、分层抽样、相关抽样、重要抽样等)。
     4.按照所建立的模型进行仿真试验、计算,求出问题的随机解。
     5. 统计分析模拟试验结果,给出问题的概率解以及解的精度估计。
三 蒙特卡洛模拟法的应用领域     
      蒙特卡洛模拟法的应用领域主要有:
     1.直接应用蒙特卡洛模拟:应用大规模的随机数列来模拟复杂系统,得到某些参数或重要指标。
     2.蒙特卡洛积分:利用随机数列计算积分,维数越高,积分效率越高。
     3.MCMC:这是直接应用蒙特卡洛模拟方法的推广,该方法中随机数的产生是采用的马尔科夫链形式。
四 资产组合模拟   
      假设有五种资产,其日收益率(%)分别为
      0.0246 0.0189 0.0273 0.0141 0.0311
      标准差分别为
      0.9509 1.4259, 1.5227, 1.1062, 1.0877
      相关系数矩阵为
                1.0000 0.4403 0.4735 0.4334 0.6855
                0.4403 1.0000 0.7597 0.7809 0.4343
                0.4735 0.7597 1.0000 0.6978 0.4926
                0.4334 0.7809 0.6978 1.0000 0.4289
                0.6855 0.4343 0.4926 0.4289 1.0000

      假设初始价格都为100,模拟天数为504天,模拟线程为2,程序如下
%run.m
ExpReturn = [0.0246 0.0189 0.0273 0.0141 0.0311]/100; %期望收益
Sigmas = [0.9509 1.4259, 1.5227, 1.1062, 1.0877]/100;%标准差
Correlations = [1.0000 0.4403 0.4735 0.4334 0.6855
                0.4403 1.0000 0.7597 0.7809 0.4343
                0.4735 0.7597 1.0000 0.6978 0.4926
                0.4334 0.7809 0.6978 1.0000 0.4289
                0.6855 0.4343 0.4926 0.4289 1.0000
];%相关系数
ExpCov = corr2cov(Sigmas, Correlations);%协方差
StartPrice = 100;%初始价格
NumObs = 504;
NumSim = 2;
RetIntervals = 1;
NumAssets = 5;

%开始模拟
randn('state', 0);
RetExact = portsim(ExpReturn, ExpCov, NumObs, RetIntervals, NumSim);

Weights = ones(NumAssets, 1)/ NumAssets;
PortRetExact = zeros(NumObs, NumSim);
for i = 1:NumSim
    PortRetExact(:, i) = RetExact(:,:,i)*Weights;
end

PortExact = ret2tick(PortRetExact, repmat(StartPrice, 1, NumSim));
plot(PortExact, '-r');


再给大家找点蒙特卡洛模拟法相关资料:

培训可见:基于Matlab的蒙特卡洛入门课程

参考书可见:蒙特卡洛方法(中文free)

还有还有:
蒙特卡洛水晶球(EXCEL嵌入软件)学习交流贴

水晶球Cristal Ball学习资料 基于Excel的蒙特卡罗模拟方法

水晶球教材

绝对正版水晶球软件Crystal Ball 蒙特卡洛模拟分析(软件)

给大家一本水晶球的书

水晶球软件应用实例

水晶球软件2000专业版初级教程

蒙特卡洛风险分析(视频)

“水晶球”在数据挖掘的商业应用

水晶球案例

Crystal Ball在线视频上线Peixun.net(培训)




























二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:蒙特卡洛模拟 MATLAB matla atlab 蒙特卡洛 MATLAB 蒙特卡洛

已有 7 人评分经验 学术水平 热心指数 信用等级 收起 理由
日新少年 + 1 + 1 + 1 精彩帖子
kongqingbao280 + 10 对论坛有贡献
450847594 + 50 + 2 + 2 谢谢了
qjjting@163.com + 1 + 1 + 1 热心帮助其他会员
huangzengjian + 1 + 1 学习
qiaohua + 1 + 1 Kind enouth to sharing his materials.
dumb + 100 热心

总评分: 经验 + 160  学术水平 + 6  热心指数 + 6  信用等级 + 2   查看全部评分

本帖被以下文库推荐

沙发
fategunner 发表于 2010-3-18 11:49:53 |只看作者 |坛友微信交流群
学习了。。。。。。。。。
Love all, trust a few, do wrong to none. ——William Shakespeare

使用道具

藤椅
seekts 发表于 2010-3-18 11:56:38 |只看作者 |坛友微信交流群
学习中。。。。。。

使用道具

板凳
gssdzc 在职认证  发表于 2010-3-22 23:14:06 |只看作者 |坛友微信交流群
学习了。感谢楼主

使用道具

报纸
zhaoyangwww 发表于 2010-3-25 19:14:57 |只看作者 |坛友微信交流群
LZ能写一个简单的蒙特卡洛模拟计算VaR的程序吗?小弟拜谢!

使用道具

地板
geo223 发表于 2010-3-25 20:52:06 |只看作者 |坛友微信交流群
收藏,回头看,谢谢分享

使用道具

7
wwf7 发表于 2010-3-26 11:45:58 |只看作者 |坛友微信交流群
学习了 学习楼主~

使用道具

8
zjy365286 发表于 2010-3-26 19:04:51 |只看作者 |坛友微信交流群
应该不只是时间序列吧?
学习了!

使用道具

9
gssdzc 在职认证  发表于 2010-3-27 09:19:37 |只看作者 |坛友微信交流群
非常不错,感谢了

使用道具

10
haoyun520 发表于 2010-3-27 14:14:30 |只看作者 |坛友微信交流群
xie de bu cuo aaaaaaaaaa
80 字节以内
不支持自定义 Discuz! 代码

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-19 21:13