MATLAB用GARCH-EVT-Copula极值理论模型VaR预测分析股票投资组合

简介: MATLAB用GARCH-EVT-Copula极值理论模型VaR预测分析股票投资组合

全文链接:http://tecdat.cn/?p=30426


对VaR计算方法的改进,以更好的度量开放式基金的风险。本项目把基金所持股票看成是一个投资组合,引入Copula来描述多只股票间的非线性相关性,构建多元GARCH-EVT-Copula模型来度量开放式基金的风险,并与其他VaR估计方法的预测结果进行比较点击文末“阅读原文”获取完整代码数据


其次是将VaR引入到基金业绩评价中,构造RAROC指标来评价基金业绩,检验该评价指标的可行性。


GARCH-EVT-Copula 模型


首先用GARCH族模型拟合单项资产收益率,并提取标准化残差以满足极值理论的假设前提,接着对标准化残差的上下尾部分采用EVT理论中的广义帕累托分布GPD拟合,中间部分采用高斯核函数来估计其经验累积分布函数,从而得到标准化残差的边缘分布函数 。然后选取适当的Copula 函数,构造多元标准化残差间的相关结构和联合分布函数。


Copula 函数参数估计


本项目中,采用 伪极大似然估计(CML) 方法来估计 Copula 函数的参数 第一步,将金融资产对数收益率数据x通过经验分布函数转化为均匀变量(uniform variates) 第二步,利用密度似然函数估计Copula函数的参数:

GARCH-EVT-Copula 模型计算 VaR


项目将开放式基金看做是一个资产组合,以每只基金所持有的股票收益率为研究对象,从投资组合的角度利用多元GARCH-EVT-Copula模型来计算基金的VaR值。

读取数据


[NUM,TXT,RAW]=xlsread('data')
Data=NUM
function [ output_args ] = GEC( input_args )


建立 GARCH 模型


nIndices = size(Data,2); % # 基金数量
spec(1:nIndices) = garchset('Distribution' , 'T' , 'Display', 'off', ...
'VarianceModel', 'GJR', 'P', 1, 'Q', 1, 'R', 1);%对每只基金设置garch模型的

残差自相关性检验

%残差自相关性检验
figure, subplot(2,1,1)
plot(residuals(:,1))
xlabel('时间'), ylabel('残差'), title ('N225收益率残差')

根据 FHS 提取标准化残差


title('N225标准化残差自相关图')
subplot(2,1,2)
autocorr(residuals(:,1).^2)

点击标题查阅往期内容


R语言用GARCH模型波动率建模和预测、回测风险价值 (VaR)分析股市收益率时间序列


01

02

03

04


GDAXI

%残差自相关性检验
figure, subplot(2,1,1)
plot(residuals(:,2))

GSPC


FCHI


%残差自相关性检验
figure, subplot(2,1,1)
plot(residuals(:,4))

根据 FHS 提取标准化残差

采用 EVT 理论对标准残差估计累计分布函数


% Estimate the Semi-Parametric CDFs
nPoints= 200; % # of sampled points of kernel-smoothed CDF需要拟合的样本点
tailFraction = 0.1; % Decimal fraction of residuals allocated to each tail 小数保存位数
plot(y, (OBJ{index}.cdf(y + Q(2)) - P(2))/P(1))
[F,x] = ecdf(y); % empirical CDF
hold('on'); stairs(x, F, 'r'); grid('on')
legend('拟合的广义 Pareto 累计分布函数','经验累积分布函数','Location','SouthEast');
xlabel('Exceedance'); ylabel('Probability');
title(['标准化残差序列',num2str(index),'的上尾']);

for i=1:242
VaRp(i,:)=pPrice(i+T-242)*exp(VaR(i,:));
end
%%
figure
plot(1:242,pPrice(T-242+2:end),'r-',1:242,VaRp(1:242,1),'g-',1:242,VaRp(1:242,2),'b-',1:242,VaRp(1:242,3),'y-');
title('基金持股收盘价实际与 VaR 预测下限走势图')

plot(1:242, b(:,s),'go-',x,d,'ro',1:0.25:250,0,'b');
legend('未突破 VaR 预测下限','突破 VaR 预测下限','Location','Best' )
title('基金实际持股收盘价与 VaR 预测下限差额')
xlabel('时间日期')
ylabel('差额');

收益率t分布%QQ图


N225收益率平方自相关图和偏相关图



相关文章
|
2天前
|
数据安全/隐私保护
matlab程序, 脉冲波合成与提取,滑冲效应、方向性效应,自定义脉冲模型,提取脉冲波
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
2天前
|
算法 调度
考虑需求响应的微网优化调度模型【粒子群算法】【matlab】
考虑需求响应的微网优化调度模型【粒子群算法】【matlab】
|
2天前
|
算法 调度 SoC
电动汽车充放电V2G模型(Matlab代码)
电动汽车充放电V2G模型(Matlab代码)
|
2天前
|
算法
考虑区域多能源系统集群协同优化的联合需求侧响应模型(matlab代码)
考虑区域多能源系统集群协同优化的联合需求侧响应模型(matlab代码)
|
2天前
|
供应链 算法
市场模式下光伏用户群的电能共享与需求响应模型(matlab代码)
市场模式下光伏用户群的电能共享与需求响应模型(matlab代码)
|
2天前
|
调度
储能参与调峰调频联合调度模型(matlab代码)
储能参与调峰调频联合调度模型(matlab代码)
|
2天前
|
调度 SoC
【MPC|云储能】基于模型预测控制(MPC)的微电网调度优化的研究(matlab代码)
【MPC|云储能】基于模型预测控制(MPC)的微电网调度优化的研究(matlab代码)
|
2天前
|
算法 调度
【免费】基于模型预测算法的含储能微网双层能量管理模型(MATLAB)
【免费】基于模型预测算法的含储能微网双层能量管理模型(MATLAB)
|
2天前
|
算法 调度
电网两阶段鲁棒优化调度模型(含matlab程序)
电网两阶段鲁棒优化调度模型(含matlab程序)
|
3天前
|
算法 计算机视觉
基于表面法线法的二维人脸图构建三维人脸模型matlab仿真
该内容概述了一个使用MATLAB2022a的二维人脸图像三维重建算法。首先,通过人脸检测和对齐,然后运用深度信息估计技术(如Shape from Shading)获取表面法线。接着,结合预训练的三维人脸模型库和二维关键点,通过迭代优化和全局优化构建三维模型。核心程序涉及图像处理、光源方向转换、反射率和表面法线计算,最终重构高度图并显示结果。该方法依赖多视角图像,单幅图像重建可能存在挑战。

热门文章

最新文章