基于蒙特卡罗模拟的股票风险价值VaR测算

基于蒙特卡罗模拟的股票风险价值VaR测算

     前言:如果各位观看博客的想学的,可以通过Tushare金融数据注册链接注册账号,在获得相关数据集,这是本人的分享链接注册后,我可以获得50积分,谢谢各位支持。

     摘要:投资者在投资前应对目标公司的股票风险价值进行分析。为评价a和b两支股票的风险,首先对样本数据进行了详细的阐述,并进行了可视化展示,以揭示其基本规律和特征。然后,基于蒙特卡罗模拟算法建立了随机过程模型,以计算股票的平均收益率与风险。通过计算得到股票位于99%置信水平下的VAR,从而对其投资风险进行评价。通过对股票编号为000001.SZ、300231.SZ、002332.SZ、2012年01月04日-2018年12月28日时段的股票数据进行分析,证明了本模型的有效性。
     关键词:金融数据;VaR估计;股票风险;蒙特卡洛算法

1.引言

2.模型介绍

        VaR (风险价值)是一种定量化描述金融机构所面临的风险的方法。VaR值的测算主要取决于两个关键的变量 :即在市场正常波动的条件下,在一定的概率水平α%下,某一金融资产或金融资产组合的VaR是在未来特定一段时间内最大的可能损失。
        使用蒙特卡罗模拟法进行风险价值估算,即运用历史数据对未来进行多次模拟,以求未来股价结果的概率分布。蒙特卡罗模拟法的公式如下:
 

Δ S S = μ Δ t + σ ε Δ t {\Delta S \over S} ={\mu \Delta t}+{\sigma \varepsilon\sqrt{\Delta t}} SΔS=μΔt+σεΔt

       其中S为股票的价格,μ为期望收益率,△t为时间间隔,σ为股票风险,ε为随机变量。
       可以看出,蒙特卡罗模拟法认为股票的价格波动可以分为两部分,第一部分为drift,即股票会根据收益率波动,第二部分为shock,即随机波动。

3.实证分析

3.1数据选取

       目前各大领域的金融机构及各大企业所持有的股票多样化,本文取国内各大领域的股票数据的日收益率作为风险因子,并定义日收益率为:

       收益为:P=V-C
       收益率为:: K = P V = ( V − C ) C = V ( C − 1 ) K={P \over V} = {(V-C) \over C}={V \over (C-1)} K=VP=C(VC)=(C1)V
       其中C为投入的本金,V为经过一段时间后的市值。

3.2基本描述收益率

       在正式建模分析之前,首先对国内企业股票的收益率做描述分析,北京银信科技的股票数据的收益率的基本描述如表1所示、浙江仙琚制药的股票数据的收益率的基本描述如表2所示、深圳平安银行的股票数据的收益率的基本描述如表3所示:
表1 北京银信科技股票收益率一览表
表2 浙江仙琚制药股票收益率一览表
表3深圳平安银行股票收益率一览表
       通过上述的股票数据的收益率的基本描述表,可以绘制核密度图出如下图2所展示的股票的日收益率分布图。核密度估计用来估计未知的密度函数,属于非参数校验方法之一,

x 1 , x 2 , x 3 ⋯ x n {x_1,x_2,x_3 \cdots x_n} x1,x2,x3xn
为独立同分布F的n个样本点,设其概率密度函数为f,核密度估计为以下:

 

f h ^ = 1 n ∑ i = 0 n K h ( x − x i ) = 1 n h ∑ i − 1 n K ( ( x − x i ) h ) {\hat{f_h}={1 \over n}{\sum_{i=0}^n}{K_h (x-x_i)} ={1 \over nh}{\sum_{i-1}^n}K({(x-x_i) \over h})} fh^=n1i=0nKh(xxi)=nh1i1nK(h(xxi))

      其中K为核密度函数,h为设定的窗宽。

图2股票的日收益率分布图

图2股票的日收益率分布图
        从图中我们可以看出,三支股票的平均日收益率大致为0,但是000001.SZ的日收益率上下波动明显大于002332.SZ和300231.SZ。

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

图3股票的收盘价及其移动平均线
        图3主要是绘制了00000.1.SZ、002332.SZ和300231.SZ三支股票的收盘价及其平均线,从绘制的移动平均线上可以大致看出股票的走势,逐渐趋于下跌的趋势,而000001.SZ的下跌状态慢于,另外两支股票,因此优胜于002332.SZ与300231.SZ股票。
图4股票的相关关系
        通过对00000.1.SZ、002332.SZ和300231.SZ三支股票的相关性数值计算后,绘制出如图4的股票之间的相关关系图,可以观察出002332.SZ和300231.SZ与00000.1.SZ在某种程度上是具有相关性的,也就是深圳平安银行股票有波动的话,其他两支北京银信科技股票、浙江仙琚制药股票也会受到影响。
图5股票的累计收益率

        对三支股票就行统一的分析,绘制出图5所示的股票的累计收益率,通过观察发现,虽然三支股票的结果都是收益率随着时间逐渐下降,但是可以在其中发现000001.SZ股票的下降趋势慢于其他的两支股票。

图6股票风险与收益率关系图
        通过图6所展示的股票风险与收益率的关系图,可以看出00000.1.SZ、002332.SZ和300231.SZ三支股票每日的平均收益率大致为0,而000001.SZ股票的风险大致为0.025,远小于002332.SZ、300231.SZ两支股票。

在这里插入图片描述

图7 股票收盘价和开盘价对比
        通过图7中 000001.SZ股票的开盘价与收盘价的对比分析,可以得出,虽然0000001.SZ的股票趋于下跌的状态的,但是还是有盈利点。

3.3.结果分析

        定义完蒙特卡罗函数,我们通过对000001.SZ、002332.SZ和300231.SZ三支股票进行模拟100次的投资,得到的结果如图8所示,可以看到,每一次模拟所得到股价走势都是不同的,300231.SZ股票在下一年的价格大致在6.25-6.75之间,002332.SZ股票在下一年的价格大致在5.7-6.7 之间,000001.SZ股票在下一年的价格大致在9.2-9.6之间,000001.SZ与另两支股票相比还是处于优势。
图8股票价格走势100次模拟结果
        下面我们用该模型模拟计算1000次的投资风险价值。并定义置信水平为99%,绘制股票最终价格的分布图如图9所示。
图9股票投资算风险价值1000次模拟结果
        从图9中我们可以得到,即在99%的置信水平下,002332.SZ股票在一年后的价格大致为5.70,其风险价值为0.56,300231.SZ股票在一年后的价格大致为5.89,其风险价值为0.61,000001.SZ股票在一年后的价格大致为8.82,其风险价值为0.56,通过数值分析000001.SZ股票不仅价值高于另外两支股票,风险更是低于另外两支股。

3.4.对比分析

        对选取的另外几支股票进行对比分析,其股票风险率收益率关系对比结果如所示:
图10 三支股票风险率与收益率关系对比图
        在三支的盘平均日收益率都大致为0的情况下,000001.SZ的风险远低于其他两支股。

4.附录

部分代码如下所示: 上传的代码没有格式化,想尽多了解。 代码整理中。

代码
git后续上传
希望多多支持

想我就打给我

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值