基于蒙特卡罗模拟的项目风险量化模型
2012-07-12王铁媛
王铁媛
一、蒙特卡罗模拟
蒙特卡罗法,(Monte-CarloSimulation)又称统计实验法或随机模拟法。该法是一种通过对随机变量的统计实验,随机模拟,求解数学、物理、工程技术问题近似解的数学方法。其特点是用数学方法在计算机上模拟实际概率过程,然后加以统计处理。此法最初由VonNeumanm和Ulam用来模拟核反应堆中子行为活动而首创的。
通常做分析时,人们最关心的问题是系统的动态性。但目前各种定量计算所运用的数字模型很少能反映随时变化的复杂过程,由其是变量本身牵涉到不确定性的问题时,使所考虑的问题更复杂,构造数学模型也更加困难。蒙特卡罗法可以随机模拟各种变量间的动态关系,解决某些具有不确定性的复杂问题,被公认为是一种经济而有效的方法。
假定函数Y=f(X1,X2,……Xn),其中变量X1,X2,……Xn的概率分布已知。当然,在实际问题中,f(X1,X2,……Xn)往往是未知的,或者是一个非常复杂的函数关系式。一般难以用解析法求解有关Y的概率分布及其数字特征。蒙特卡罗模拟分析利用一个随机数发生器,通常直接或间接抽样取出每一组随机变量(X1,X2,…,Xn)的值(X1i,X2i,…,Xni),然后按Y对于X1,X2,……Xn的关系式确定函数Y的值Yi。如此反复模拟多次,便可得到函数Y的一批抽象数据Yn。当模拟次数足够多时,由大数定律可知,就可得到与实际情况相似的数学特征解。
由于蒙特卡罗法可以仿真未知事件的结果,因此对难以用数学分析方法求解的风险问题,就具有很大的优势。该方法可以随机模拟各种变量间的动态关系,解决某些具有不确定性的复杂问题,被认为是一种经济而有效的方法,已成为当今风险分析的主要工具之一。
二、项目风险及其量化过程
项目风险就是项目生命期中的风险,即可能导致项目损失的不确定性。项目风险具有如下特征:
①客观性和普遍性;
②风险发生的偶然性和大量同类风险的必然性;
③可变性;
④多样性和多层次性;
⑤可测性。
项目风险量化是在风险识别的基础上,把损失频率、损失程度以及其他风险因素综合起来考虑,分析风险可能对项目造成的影响,寻求风险对策,是项目风险管理的重要环节。
项目风险量化的具体作用有如下几个方面:
①在风险评估的基础上进一步量化已识别的项目风险的发生概率和后果,以减少风险发生的概率和后果估计中的不确定性。如果项目行式有重大变化,则有必要重新分析风险发生的概率和可能后果;
②比较和评价项目风险因素,按照风险不确定性和大小排列先后顺序;
③找出各个风险因素之间可能的内在联系;
④考虑各种不同风险在什么样的条件下才能相互转化。
三、项目风险的蒙特卡罗模拟方法
(一)适用性分析
本文拟将蒙特卡罗模拟法应用于项目风险分析,使用它能对项目中的风险因素及其影响做出评价。蒙特卡罗模拟法具有如下优点:
第一,蒙特卡罗模拟法的模拟结果是从每个风险变量的概率统计数据中随机取样计算出来的,很少存在主观判断;
第二,蒙特卡罗模拟法可处理多个风险变量同时变化的情况,不只考虑单个风险变化。
第三,蒙特卡罗模拟法取的是相等几率的随机样本,所以每个风险变量中出现频率次数多的数值,被取到的机会也多,因而其结果更能够反映各风险变量的出现机会。同时又由于蒙特卡罗模拟法简便易用、易于在计算机上模拟实现,因此本文选用蒙特卡罗模拟法对项目进行定量风险量化。
(二)应用过程
在项目风险量化过程中采用蒙特卡罗模拟,就是通过实验的方法得到某种不确定事件出现的频率,得到其变化的规律,然后再研究这种规律,得到决策者需要的不确定信息。其一般过程是:
首先,构造描述问题的概率过程。确定输入变量及其概率分布。通过模拟试验,独立地随机抽取各输入变量的值,并使所抽取的随机数值符合既定的概率分布。对于本身就具有随机性质的问题,主要是正确地描述和模拟这个概率过程。以项目总进度为例,它实际上就是一个具有随机性质的概率过程,项目实际工期拖延事件就是一个不确定变量。
其次,建立数学模型,按照研究目的编制程序计算各输出变量。
最后,确定实验次数以满足预定的精度要求,以逐渐积累的较大样本来模拟输出函数的概率分布。
四、案例分析
某企业计划一投资项目,初始投资25000元,项目寿命期3年,期末无残值。经统计分析得出产品销售量、单价、单位变动成本和付现固定成本都有可能发生变动,其在各年可能达到的水平以及有关的概率情况如图1所示。
图1
则在excel下利用蒙特卡罗模拟法进行项目投资风险分析如下:
1.设计基本数据表格,对该项目的各种可能情况对应随机数,建立基本数据区域。如图2所示。
图2
2.对每种可能变动因素进行蒙特卡罗分析。例如,第一年的销售量的模拟过程:首先,在销售量的第一个模拟数值单元格A23中输入随机数产生公式:=RANDBETWEEN(0,99),然后将该公式复制到A24:A1022单元格,模拟1000次。然后,在B23单元格中输入对应的销售量查找公式,=VLOOKUP(A23,$C$3:$D$6,2),这样,B23单元格就显示了A23单元格的随机数所对应的销售量大小。然后复制到B24:B1022单元格,模拟1000次。
3.同理,在单价模拟的随机数C23单元格输入随机数产生公式,=RANDBETWEEN(0,99),然后复制到C24:C1022单元格,模拟1000次。然后,在D23单元格中输入对应的销售量查找公式,=VLOOKUP(C23,$C$7:$D$9,2),然后复制到D24:D1022单元格,模拟1000次。同理,产生第1年单位变动成本和付现成本的随机数和模拟值。如图3所示。
图3
4.计算第1年的净现金流量的模拟数。公式为:
5.同理产生第2年和第3年销售量、单价、单位变动成本和付现成本的模拟数据,最终计算得到1000个净现金流量的模拟数据。
6.计算1000组净现值的模拟值。
第一组数据的净现金流量的净现值为:
图4
7.计算1000组模拟净现值的期望值,方差等,如图5所示。
净现值的期望值公式:M2=AVERAGE(AB23:
图5
8.最后根据模拟分析结果绘制分析图。如图6所示。
图6
由计算结果及净现值分布图,就可以对该项目的风险程度进行分析。该项目净现金期望值为40096元(每次模拟结果不同,但大致范围一致),标准差15813,项目不可行的概率为0.006,风险水平较小,项目可行。根据净现值概率分布图可以看出,该项目的净现值大致符合正态分布,分布在20000到60000之间的概率为0.875,总体风险较小。