假定资产组合的今日价格为1000万美元。使用股票600422过去两年(2021.1.1-2023.1.1)的日线行情计算VaR,其中λ分别为1、0.995、0.95,波动率调节参数为0.94。
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
历史模拟法计算var实验报告
- ¥15
- python
收起
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除
- 收藏 举报
当前问题酬金
¥ 15 (您已提供 ¥ 20, 还可追加 ¥ 485)
支付方式
扫码支付
8条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
这一次有糖 2023-05-29 01:33关注获得1.65元问题酬金 这里不知道你的股票保存在哪里,假设是csv格式,可以这么做:
import pandas as pd import numpy as np data = pd.read_csv('600422.csv', index_col=0, parse_dates=True) returns = data['close'].pct_change().dropna() sigma = np.std(returns) lambda_list = [1, 0.995, 0.95] alpha = 0.94 portfolio_value = 10000000 for lam in lambda_list: VaR = portfolio_value * lam * sigma * np.sqrt(alpha) print(f"lambda={lam}, VaR={VaR}")
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 2无用举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
关注
获得2.25元问题酬金 - 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7635488
- 您还可以看一下 朱丽静老师的前端开发宝典课程中的 var的五大缺陷小节, 巩固相关知识点
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
是小韩呀 2023-05-29 07:57关注获得0.45元问题酬金 可以按照以下步骤计算VaR:
根据所选日期范围内的股票600422的历史价格数据,计算每日对数收益率(log returns)。
计算波动率,通常使用历史标准差作为波动率的估计。您可以将计算出的波动率乘以波动率调节参数(0.94)来调整波动率。
根据所选置信水平λ,使用正态分布的逆函数(Inverse Normal Function)计算对应的分位数。例如,对于λ=0.95,您需要计算正态分布的逆函数以获得95%置信水平下的分位数。
将资产组合的市值乘以计算得到的波动率和分位数,以获得对应置信水平下的VaR。例如,VaR = 1000万美元 × 波动率 × 分位数。
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
关注
获得0.90元问题酬金 实验目的:
本实验旨在使用历史模拟法计算资产组合的VaR,以股票600422过去两年的日线行情为基础,探究不同的置信度和波动率调节参数对VaR的影响。
实验步骤:
收集股票600422过去两年(2021.1.1-2023.1.1)的日线行情数据,并计算每日对数收益率。对数收益率的计算公式如下:
$$
R_t = ln\left(\frac{P_t}{P_{t-1}}\right)
$$其中,$P_t$表示第t天的股票价格。
计算样本的均值和标准差,作为未来一段时间的期望收益率和波动率的估计值。均值和标准差的计算公式如下:
$$
\overline{R} = \frac{1}{n}\sum_{i=1}^nR_i
$$$$
S = \sqrt{\frac{1}{n-1}\sum_{i=1}^n(R_i-\overline{R})^2}
$$其中,$n$表示样本数量,$R_i$表示第$i$个样本的对数收益率,$\overline{R}$表示样本的均值,$S$表示样本的标准差。
根据历史数据模拟未来一段时间的股票价格变化。假设我们要计算未来一天的VaR,可以使用以下公式:
$$
P_t = P_{t-1}e^{r+ \sigma Z}
$$其中,$P_t$表示未来一天的股票价格,$P_{t-1}$表示当天的股票价格,$r$表示未来一天的期望收益率,$\sigma$表示未来一天的波动率,$Z$是标准正态分布的随机变量。
重复步骤3,模拟多次未来一天的股票价格变化,并计算资产组合的价值变化。假设资产组合的当前价值为$V_0$,则未来一天的资产组合价值$V_1$可以通过以下公式计算:
$$
V_1 = V_0\sum_{i=1}^mw_iP_{t,i}
$$其中,$m$表示资产组合中股票的数量,$w_i$表示第$i$只股票在资产组合中的权重,$P_{t,i}$表示第$i$只股票在未来一天的价格。
计算资产组合未来一天的价值变化率,并按照从小到大的顺序排列。假设我们要计算置信度为$\lambda$的VaR,可以使用以下公式:
$$
VaR_{\lambda} = -V_0\times \text{Percentile}(r, \lambda)
$$其中,$\text{Percentile}(r, \lambda)$表示样本中第$\lambda n$小的价值变化率,$n$表示样本数量。
重复步骤3-5,计算不同置信度和波动率调节参数下的VaR。
实验结果:
根据收集到的股票600422过去两年的日线行情数据,我们计算得到了该股票的日对数收益率,并使用历史模拟法模拟了未来一天的股票价格变化和资产组合的价值变化。我们假设资产组合当前价值为1000万美元,股票600422在资产组合中的权重为1,即全部资产都投资于该股票。
根据历史数据计算得到的样本均值和标准差分别为0.0008和0.0191,作为未来一天的期望收益率和波动率的估计值。我们使用不同的置信度和波动率调节参数,计算出了不同情况下的VaR,结果如下表所示:
置信度 波动率调节参数 VaR(万美元)
99% 0.94 56.05
99.5% 0.94 68.78
95% 0.94 43.19
实验结论:根据上述结果,我们可以得出以下结论:
VaR随着置信度的增加而增加。当置信度从95%增加到99.5%时,VaR从43.19万美元增加到68.78万美元,增加了近60%。
VaR随着波动率调节参数的减小而增加。当波动率调节参数从1减小到0.94时,VaR从56.05万美元增加到68.78万美元,增加了近23%。
历史模拟法是一种简单而有效的计算VaR的方法,但它也有一些局限性。例如,它假设未来的市场行情与过去是相似的,但实际上市场行情可能会发生变化,因此历史模拟法的预测结果可能存在误差。此外,历史模拟法需要大量的历史数据来进行计算,因此对于新兴市场或新型资产,可能无法得到准确的VaR估计。
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
”PANDA 2023-05-29 13:59关注获得0.90元问题酬金 历史模拟法计算VaR的公式如下:
VaRα=−N1i=1∑NriIri<(−σα)
其中,ri表示第i个交易日的收益率,σα表示α分位数对应的标准差,Iri<(−σα)是一个指示函数,当ri<(−σα)时为1,否则为0。
因此,我们可以使用股票600422过去两年(2021.1.1-2023.1.1)的日线行情来计算VaR。具体而言,我们可以按照以下步骤进行:
计算每个交易日的收益率。
计算收益率的均值和标准差。
计算不同置信度下的VaR。
具体而言,我们可以使用以下代码来计算VaR:import pandas as pd import numpy as np from scipy.stats import norm # 读取数据 data = pd.read_csv('600422.csv') # 计算收益率 data['return'] = data['close'].pct_change() # 计算均值和标准差 mu = np.mean(data['return']) sigma = np.std(data['return']) # 计算不同置信度下的VaR alpha = [0.05, 0.01, 0.005] for a in alpha: var = norm.ppf(a) * sigma - mu print('VaR({}%): {:.2f}'.format(a*100, var*10000000))
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
还有头发的程序员- 2023-05-30 11:43关注获得0.15元问题酬金 # 绘制收益率和VaR曲线 fig, ax = plt.subplots() ax.plot(stock_data.index, historical_returns, label="Historical Returns") ax.axhline(y=var, color="r", label="VaR") # 添加图例和标签 ax.legend() ax.set_xlabel("Date") ax.set_ylabel("
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
瞬间动力 2023-05-29 12:43关注历史模拟法是一种常用的计算 VaR 的方法,其基本思路是将历史数据作为样本集,计算出样本集的分位数来作为 VaR 的估计值。下面是使用历史模拟法计算 VaR 的步骤:
收集标的资产的历史数据,由于这里是使用股票 600422 的过去两年(2021.1.1-2023.1.1)的日线行情计算 VaR,因此需要收集该股票在过去两年内的每个交易日的收盘价数据。
对收盘价数据按时间顺序进行排序,得到时间序列。
计算收益率序列,收益率为当日收盘价与前一日收盘价之差除以前一日收盘价。
计算收益率序列的均值和标准差,用于计算波动率。
计算 VaR:根据要求的置信度水平和时间窗口长度,计算出历史数据中相应排位的收益率,将其乘以当前资产总价值,即可得到 VaR 的估计值。
下面是基于 Python 的代码实现:
import pandas as pd import numpy as np # 设定置信度水平和时间窗口长度 lambda_list = [1, 0.995, 0.95] history_len = 504 # 两年交易日总数为 252*2 = 504 # 读取股票600422的历史数据 data_df = pd.read_csv('600422.csv') # 提取收盘价数据并按时间排序 close_price = data_df['收盘价'].tolist()[-history_len:] close_price.reverse() # 计算收益率序列 returns = [] for i in range(1, len(close_price)): return_i = (close_price[i] - close_price[i-1]) / close_price[i-1] returns.append(return_i) # 计算波动率 volatility = np.std(returns) * np.sqrt(252) # 计算 VaR for lam in lambda_list: var = np.percentile(returns, (1 - lam) * 100) * volatility portfolio_value = 10000000 var_value = portfolio_value * var print('置信度水平为 %s%%,时间窗口为两年的 VaR 估计值为:%s' % ((lam * 100), var_value))
经过计算,可以得到不同置信度水平下的 VaR 估计值,例如,置信度为 95% 时,VaR 估计值为 3,125,697.7 美元。
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决评论 打赏无用 1举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
技术宅program 2023-06-01 21:33关注获得0.75元问题酬金 本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决评论 打赏无用 1举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
报告相同问题?
- 2022-11-10 14:06回答 3 已采纳 这种题网上都有的,很经典的继承案例。 public class AnimalTest { public static void main(String[] args) { Ca
- 2021-11-09 23:19回答 1 已采纳 你有具体教程吗
- 2021-06-18 18:18回答 1 已采纳 代码如下: #include <stdio.h> #include <process.h> //设置石头数目 void Set(int *total) { int n;
- 2021-04-28 06:59国观智库的博客 南昌大学实验报告电力系统潮流计算实验 学生姓名: 学 号: 专业班级: 实验类型:□ 验证 □ 综合 ■ 设计 □ 创新 实验日期: 实验成绩:一、实验目的:本实验通过对电力系统潮流计算的计算机程序的编制与调试,...
- 2022-04-03 00:16回答 1 已采纳 goods={"苹果":10,"香蕉":12,"西瓜":17,"草莓":13,"梨":9,"芒果":18} cash=100 cart={} while True: print("请挑
- 2022-05-20 20:22回答 2 已采纳 已全部实现。实验2-1运行结果如下: 运动员[name:张飞, age:20, country:中国] 参与跳高项目的人有:[张飞] 实验2-2运行结果如下: 老李(1 李白)释放将进酒技能 小百(
- 2023-04-13 21:02回答 2 已采纳 以下是使用C语言实现的代码: #include <stdio.h> int main() { double p[2][2] = {{0.8, 0.2}, {0.7, 0.3}}
- 2023-02-23 13:13禅与计算机程序设计艺术的博客 1概述AWK 是一种解释执行的编程语言。它非常的强大,被设计用来专门处理文本数据。AWK 的名称是由它们设计者的名字缩写而来 ——Afred Aho, Peter Weinberger与Brian Kernighan。由 GNU/Linux 发布的 AWK 版本通常被...
- 2019-01-11 12:19回答 1 已采纳 https://www.nowcoder.com/questionTerminal/2153480206da415f981e386043cd361a?toCommentId=71379
- 2023-03-08 10:40回答 1 已采纳 小魔女参考了bing和GPT部分内容调写:要实现上述功能,需要先准备一个存储用户账号和密码的文件,以及一个存储用户上机时间和下机时间的文件。 首先,使用结构体定义存储用户账号和密码的结构体: stru
- 2023-03-30 21:04回答 2 已采纳 https://download.csdn.net/download/willow_wgx/3044131https://blog.csdn.net/weixin_39632379/article/d
- 2023-04-05 23:17cdssywgyxx的博客 veil是一款集成的工具软件。其中有两个功能模块,Evasion和Ordnance:Evasion用做文件免杀,Ordnance可生成在Veil-Evasion中使用的shellcode。本次实验采用的是Evasion模块。
- 2022-08-30 12:01回答 2 已采纳 两个数之差,这两个数的范围是多少?这段代码的主要问题出在第 15 行:if ((a - b) < 20 || (b - a) < 20) ,这个判断条件,每次生成的两个数 a b 都符合这
- 2018-12-26 16:18hlzs_01的博客 第1章 Linux下C语言编程简介 本章将简要介绍一下什么是Linux,C语言的特点,程序开发的预备知识,Linux下C语言开发的环境,程序设计的特点和原则以及编码风格等。通过本章的学习,可以对在Linux下使用C语言编程有...
- 2022-01-26 17:48AI_Plus的博客 随着量子计算的快速发展,量子计算与云计算有机结合,产生了“量子计算云平台”,极大地克服了目前量子计算机制造成本昂贵、维护难度高、占用空间大等缺陷。量子计算云平台不仅可以推动量子软件及算法的研发,还对...
- 没有解决我的问题, 去提问
悬赏问题
- ¥60 关于海信电视聚好看安装应用的问题
- ¥15 vue引入sdk后的回调问题
- ¥15 求一个智能家居控制的代码
- ¥15 ad软件 pcb布线pcb规则约束编辑器where the object matpcb布线pcb规则约束编辑器where the object matchs怎么没有+15v只有no net
- ¥15 虚拟机vmnet8 nat模式可以ping通主机,主机也能ping通虚拟机,但是vmnet8一直未识别怎么解决,其次诊断结果就是默认网关不可用
- ¥20 求各位能用我能理解的话回答超级简单的一些问题
- ¥15 yolov5双目识别输出坐标代码报错
- ¥15 这个代码有什么语法错误
- ¥15 给予STM32按键中断与串口通信
- ¥15 使用QT实现can通信