金融数据分析 实验四 金融风险价值计算

article/2025/8/29 11:47:10

实验原理

VaR的定义:在正常的市场条件下,给定置信水平和持有期,某种投资组合可能发生的最大损失值。
VaR模型不仅描述了损失的大小,还描述了发生损失的概率。
VaR的数学定义:给定置信水平 1 - α 和时间间隔 t ,如果一家实体机构在时间间隔 t 内预计损失额超过M的概率小于α,则称这家实体机构在时间间隔 t 内的VaR为M。
即 P {损失额 > M} < α
VaR的计算是以概率论与数理统计为基础,类似于区间估计
VaR模型可解决的问题:确定内部核心风险资本需求;设定风险限额(建立防洪堤);在风险调整的基础上更合理地分析业绩;应用于金融监管
对历史数据用不同方法计算样本统计量,计算VaR的方法就不同。主要有三类方法:
一、参数法
1、直接法; 2、移动平均; 3、指数移动平均
二、历史模拟法
1、一般法; 2、拔靴法; 3、改进拔靴法
三、蒙特卡罗模拟法
1、GARCH模型(正态分布、T分布)
2、GJR模型(正态分布、T分布)
3、EGARCH模型(正态分布、T分布)

实验内容

数据:数据从2011/01/04到2012/08/27,共400个样本,取最后50个样本作为回顾测试检验数据,用于对模型进行评价和比较。
在sheet练习题中,C1命名为收益率,在C3中输入=(B3-B2)/B2,并将C3向下拖拽至C401
在这里插入图片描述
一、 用直接发计算VaR,写出所有使用的函数、输入、结果等,并画出图。
将sheet练习题复制到新建sheet直接法。
在这里插入图片描述
在E2中输入置信水平和α分位数等信息,在H2中输入收益率的均值,在J2中输入收益率的标准差。
在这里插入图片描述
在H3中输入=AVERAGE(C3:C351)求收益率均值,J3中输入=STDEV(C3:C351)求收益率标准差
在这里插入图片描述
在这里插入图片描述
将E2:I5复制,在E345处选择按值粘贴。
在这里插入图片描述
在E350、F350、G350中分别输入95%的VaR,97.5%的VaR,99%的VaR,在E351中输入=H346-$G$346*I346,在G351中输入=H346-$G$347*I346,在F351中输入=H346-$G$348*I346
在这里插入图片描述
选中E351复制,在E351按值粘贴。对F351,:G351进行相同的操作。
并将E351:G351拖拽至E351:G401.
在这里插入图片描述
在这里插入图片描述
选中A351:A401,C351:C401,E351:G401,绘制折线图。可以看到收益率曲线小于99%的VaR只有两次,根据巴塞尔委员会规定的惩罚区规则来看,属于绿灯区。
在这里插入图片描述
二、 用移动平均法计算VaR,写出所有使用的函数、输入、结果等,并画出图。
将sheet练习题复制到新建sheet移动平均法。
取移动平均m为50.E350输入收益率均值,F350输入收益率标准差。E351输入=AVERAGE(C302:C351),F351输入=STDEV(C302:C351)
在这里插入图片描述
在E354粘贴置信区间和α分位数表格。在G350、H350、I350输入95%的VaR、97.5%的VaR、99%的VaR.在G351中输入=E351-$G$346*F351,在H351中输入=E351-F351*$G$347,在I351中输入=E351-F351*$G$348。将G351拖拽至G401,将H351拖拽至H401,将I351拖拽至I401。
在这里插入图片描述
选中A351:A401,C351:C401,G351:I35,绘制折线图,并修改图例和标题。可以看到收益率曲线小于99%的VaR曲线只有两次,根据巴塞尔委员会规定的惩罚区规则来看,属于绿灯区。
在这里插入图片描述
三、 用历史模拟法中的一般法计算VaR,写出所有使用的函数、输入、结果等,并画出图。
将sheet练习题复制到新建sheet移动平均法。
在这里插入图片描述
D1中输入随机样本。点击数据选项卡,点击数据分析,选择抽样,输入区域选择C3:C351,数量为500,输出区域为D2.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
E1中输入样本排序。将D2:D501复制到E2中。选择数据选项卡,点击排序,以当前区域排序。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
点击数据选项卡中的数据分析,选择直方图,输入区域选择E2:E501,输出区域为G2,勾选累积百分率和输出直方图。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
F351输入95%的VaR,G351输入97.5%的VaR,H351中输入99%的VaR。
95%的VaR:α=5%,在累积列的3.60%和6.20%之间。求算式(6.2%-3.6%)/(13-10)=(5%-3.6%)/x,x=1.61,即找到3.6%对应的接收-0.03967(>=-0.03967),此处是-0.03936,在样本排序中向下数1个就是95%对应的VaR-0.03936。在F352中输入-0.03936,并向下拖拽至F401.
在这里插入图片描述
在这里插入图片描述
97.5%的VaR:α=2.5%,在累积列的1.60%和3.60%之间。求算式((3.6%-1.6%))/((10-7))=((2.5%-1.6%))/x,x=1.35,即找到1.6%对应的接收-0.04502(>=-0.04502),此处是-0.044915783,在样本排序中向下数1个就是97.5%对应的VaR-0.04491。在G352中输入-0.04491,并向下拖拽至G401.
在这里插入图片描述
99%的VaR:α=1%,在累积列的0.20%和1.60%之间。求算式((1.6%-0.2%))/((7-1))=((1%-0.2%))/x,x=3.42,即找到1.6%对应的接收-0.05036(>=-0.05036),此处是-0.05036,在样本排序中向下数3个就是99%对应的VaR-0.047399605。在H352中输入-0.04739,并向下拖拽至H401.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
选中A351:A401,C351:C401,G351:I401,绘制折线图,并修改图例和标题。可以看到收益率曲线小于99%的VaR曲线只有两次,根据巴塞尔委员会规定的惩罚区规则来看,属于绿灯区。
在这里插入图片描述

实验心得

  • VaR的计算可分三步进行:第一步,把资产组合中的每一种资产损益表示为市场因子的函数——市场因子映射;第二步,预测市场因子的波动性——市场因子波动性模型;第三步,根据市场因子的波动性估计资产组合的价值变化和分布——估值模型。在这三步中市场因子波动性模型和估值模型是关键,不同的市场因子波动性模型和估值模型构成计算VaR的不同方法。计算风险价值(VaR)主要有三类:参数方法、历史模拟法和蒙特卡罗模拟法。
  • 参数法假设总体服从某种分布,用历史数据的统计量(如样本均值、样本标准差等)来表示市场因子来计算VaR。参数法主要有直接法、移动平均和指数移动平均三种方法。直接法假设总体服从正态分布,直接计算所有n个样本的样本均值和样本标准差,从而计算风险价值VaR。移动平均法只计算最近m(m称为移动窗口的宽度)个样本的样本均值和样本标准差。指数移动平均是用最近m个样本以指数加权平均来计算样本均值和样本标准差,距离越近的样本的权重越大。
  • 历史模拟法的基本假设是过去的变化情况会在未来重现。利用过去一段时间的历史数据,进行重新抽样,模拟未来一段时间的变化情况,抽样区间和抽样方法的不同,就形成不同的历史模拟法,主要有一般法和拔靴法(Bootstrap)和改进的拔靴法。
  • 蒙特卡罗模拟法假设总体服从某种概率分布,根据历史数据估计其参数,然后利用总体服从的概率分布,模拟未来一段时间的变化情况。
  • 采用回顾测试法对各种模型及模型参数进行评价和比较。可以选出针对特定市场、特定产品在一定时间范围内较为适合的模型和合适的参数。

今天十足抑郁了,坏运气纷至沓来,5555,明天和狗榕出去玩快乐一下。庆庆和曹都有安慰我好感动。好期待去省博呀!明早一定要起来晨刷!


http://chatgpt.dhexx.cn/article/KG3mAnpd.shtml

相关文章

【视频】风险价值VaR原理与Python蒙特卡罗Monte Carlo模拟计算投资组合实例

最近我们被客户要求撰写关于风险价值VaR的研究报告&#xff0c;包括一些图形和统计输出。 什么是风险价值&#xff08;VaR&#xff09;&#xff1f; 风险价值 (VaR) 是一种统计数据&#xff0c;用于量化公司、投资组合在特定时间范围内可能发生的财务损失程度。该指标最常被投…

金融分析与风险管理——风险价值(VaR)

金融分析与风险管理——风险价值&#xff08;VaR&#xff09; 1. 风险价值&#xff08;VaR&#xff09;简述1.1 Python可视化风险价值 2. VaR值的测度方法2.1 方差-协方差法2.2 历史模拟法2.3 蒙特卡洛模拟法 3. 回溯检验4. 压力VaR 1. 风险价值&#xff08;VaR&#xff09;简述…

python是动态语言还是静态语言?强类型语言还是弱类型语言

首先要清楚静态类型语言和动态类型语言的判别的标准 定义&#xff1a;如果类型检查发生在编译阶段(compile time)&#xff0c;那么是静态类型语言(statically typed languages)中&#xff0c;相反的&#xff0c;如果类型检查发生在运行阶段(run time)&#xff0c;那么是动态类型…

Typescript笔记之基础知识(1):强类型语言和弱类型语言、静态语言和动态语言

foreword&#xff08;前言&#xff09; 这是本人关于Typescript的第一篇笔记&#xff0c;之所以选择将“强类型语言和弱类型语言、静态语言和动态语言”作为第一个想要去总结的主题&#xff0c;是因为个人觉得它很重要。 如今这个年代&#xff0c;可以供我们选择的编程语言非常…

编程语言的执行方式、静态语言和脚本语言

计算机执行源程序的两种方式是编译和解释 源代码&#xff1a;采用某种编程语言编写的计算机程序&#xff0c;人类可读 目标代码&#xff1a;计算机可以直接执行&#xff0c;大部分人类不可读&#xff0c;如&#xff1a;1110000111001010 编译 编译是讲源代码一次性转换为目标代…

程序的两种执行方式,静态语言和脚本语言

程序的两种执行方式&#xff0c;静态语言和脚本语言 文章目录 程序的两种执行方式&#xff0c;静态语言和脚本语言编译和解释静态语言和脚本语言 编译和解释 编译&#xff1a;将源代码一次性转换成目标代码的过程。&#xff08;编译一次后&#xff0c;若需再次执行程序就可以直…

静态语言和脚本语言的区别

在计算机编程语言中&#xff0c;可以将编程语言分为静态语言和脚本语言两类&#xff0c;这两类编程语言最主要的区别是执行方式的不同。想要区分静态语言和脚本语言的区别&#xff0c;首先需要区分编译和解释。 编译和解释 编译是指将源代码一次性转换为目标代码的过程&#…

Java是动态语言还是静态语言,是强类型还是弱类型?

一. 前言 今天小熙突然想到一个问题&#xff0c;那就是Java到底是动态语言还是静态语言&#xff0c;是强类型还是弱类型呢&#xff1f;虽然知道但是还是不够深入&#xff0c;接下来就一起探讨下吧。 二. 图释 小熙碰巧看到一张图&#xff0c;完美的区分了以上的问题&#xf…

高级数据结构—斐波那契堆与二项堆详细介绍

斐波那契堆与二项堆 二项堆请点击这里&#x1f448; 数据结构与堆斐波那契堆概述结构实现符号定义插入结点合并抽取最小结点分析Decrease Key第一种情况 删除最大度数的界 二项堆请点击这里&#x1f448; 数据结构与堆 下图列出了小顶堆在各种数据结构(链表、二叉堆、二项堆、…

数据结构——斐波那契堆

斐波那契堆的介绍 斐波那契堆(Fibonacci heap)是一种可合并堆&#xff0c;可用于实现合并优先队列。它比二项堆具有更好的平摊分析性能&#xff0c;它的合并操作的时间复杂度是O(1)。与二项堆一样&#xff0c;它也是由一组堆最小有序树组成&#xff0c;并且是一种可合并堆。与二…

《算法导论3rd第十九章》斐波那契堆

前言 第六章堆排序使用了普通的二叉堆性质。其基本操作性能相当好&#xff0c;但union性能相当差。 对于一些图算法问题&#xff0c;EXTRACT-MIN 和DELETE操作次数远远小于DECREASE-KEY。因此有了斐波那契堆。 斐波那契堆结构 斐波那契堆是一系列具有最小堆序的有根树的集合…

斐波那契堆(Fibonacci heaps)

一&#xff1a;斐波那契堆 1&#xff1a;特性 斐波那契堆同二项堆一样,也是一种可合并堆。斐波那契堆的优势是&#xff1a;不涉及删除元素的操作仅需要O&#xff08;1&#xff09;的平摊运行时间&#xff08;关于平摊分析的知识建议看《算法导论》第17章&#xff09;。和二项…

3.3 斐波那契堆

结构 斐波那契堆的基础是可合并堆。 数据结构是一个森林。也就是N棵树。这点和二项堆一样。 这个结构没有二项堆那么多的要求。 Rank的概念,是子节点的数目 与二项堆不同的是&#xff0c;斐波那契堆的底层链表要成环&#xff0c;要双向链表。   而斐波那契堆的节点&#xff…

二叉堆/二项堆/斐波那契堆

二叉堆 二叉树 二叉树&#xff1a;是树的一种&#xff0c;主要的特点是二叉树的所有节点最多只有两个叶节点。除此之外没有别的要求完全二叉树&#xff1a;就是在二叉树当中&#xff0c;除了最后一层之外&#xff0c;所有层的节点都有满的&#xff0c;且最后一层的节点也是从…

斐波那契堆(Fibonacci heap)原理详解

前言 斐波那契堆(Fibonacci heap)是计算机科学中最小堆有序树的集合。它和二项式堆有类似的性质&#xff0c;但比二项式堆有更好的均摊时间。堆的名字来源于斐波那契数&#xff0c;它常用于分析运行时间。 堆结构介绍 基本术语介绍&#xff1a; 关键字&#xff1a;堆节点储存的…

斐波那契堆 - 解析与实现

概要 本章介绍斐波那契堆。和以往一样&#xff0c;本文会先对斐波那契堆的理论知识进行简单介绍&#xff0c;然后给出C语言的实现。后续再分别给出C和Java版本的实现&#xff1b;实现的语言虽不同&#xff0c;但是原理如出一辙&#xff0c;选择其中之一进行了解即可。若文章有…

算法导论 斐波那契堆

算法导论 斐波那契堆 定义 堆H 最小结点min&#xff1a;指向最小关键字key的根结点n表示当前堆中结点的个数 结点x 最小堆性质&#xff1a;每个结点的关键字key均大于等于父结点的关键字根链表&#xff1a;所有的根结点都通过left,right指针形成一个环形链表父类指针为p,左右兄…

斐波那契堆(Fibonacci heap)原理详解(附java代码实现)

前言 斐波那契堆(Fibonacci heap)是计算机科学中最小堆有序树的集合。它和二项式堆有类似的性质&#xff0c;但比二项式堆有更好的均摊时间。堆的名字来源于斐波那契数&#xff0c;它常用于分析运行时间。 堆结构介绍 基本术语介绍&#xff1a; 关键字&#xff1a;堆节点储存的…

斐波那契堆

斐波那契堆 作者&#xff1a; 大树先生 博客&#xff1a; http://blog.csdn.net/koala_tree GitHub&#xff1a;https://github.com/koalatree 2017 年 09 月 13 日 自《算法导论》. 斐波那契堆有两种用途&#xff1a;第一种&#xff0c;支持一系列操作&#xff0c;这些操作…

斐波那契堆(Fibonacci Heap)

也许我们每个人都知道斐波那契数列&#xff08;Fibonacci sequence&#xff09;。即这样一个数列&#xff1a;1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144...,如果我们用伪代码比表示: int FibonacciSequence(int n){if (n 1 || n 2) {return 1;}return FibonacciSequence(n …