资源简介
本文档介绍了如何对收益率进行时间序列分析,并用garch模型对波动率进行预测
代码片段和文件信息
close all
clear
clc
%% 读取数据
stockcode = ‘600551.SH‘;
diary([stockcode‘.txt‘])
addpath(genpath(pwd));
% 替换成你自己的token
token = ‘**************9c08b3da9b9c34b80ae0**********‘;
api = pro_api(token);
start_time = ‘20170101‘;
end_time = ‘20180101‘;
ktype = ‘D‘;
data = pro_bar(stockcode api start_time end_timektype‘E‘‘qfq‘);
% 翻转数据
data = flipud(data);
temp = data.trade_date;
temp = char(temp);
temp = str2num(temp);
tradedate = datetime(temp‘ConvertFrom‘‘yyyymmdd‘‘format‘‘yyyy-MM-dd‘);
%% 计算对数收益率
ret = price2ret(data.close);
% 绘制对数收益率图
x = tradedate(1:end-1);
figure;
plot(xret);
title([stockcode‘日收益率‘])
saveas(gcf[stockcode‘日收益率图.jpg‘]);
% 可以看出波动聚集
disp([stockcode‘ 波动率预测‘]);
% 描述性统计
mu = mean(ret);
ret_median = median(ret);
ret_max = max(ret);
ret_min = min(ret);
sigma = std(ret);
ret_skew = skewness(ret);
ret_kurt = kurtosis(ret);
% h为测试结果若h=0则可以认为X是服从正态分布的;若h=1则可以否定X服从正态分布;
% p为接受假设的概率值P越接近于0则可以拒绝是正态分布的原假设;
% jbstat为测试统计量的值;
% cv为是否拒绝原假设的临界值.
[hpjbstatcv]=jbtest(ret);
disp([‘收益序列均值为‘num2str(mu)]);
disp([‘收益序列中位数为‘num2str(ret_median)]);
disp([‘收益序列最大值为‘num2str(ret_max)]);
disp([‘收益序列最小值为‘num2str(ret_min)]);
disp([‘收益序列标准差为‘num2str(ret_max)]);
disp([‘收益序列偏度为‘num2str(ret_skew)]);
disp([‘收益序列峰度为‘num2str(ret_kurt)]);
disp([‘收益序列jb统计量为‘num2str(jbstat)]);
%% adf单位根检验
alpha=0.1;
disp(‘%%%%%%%%%%%%%%%%%%%%%%‘);
[hpValuestatcValue] = adftest(ret‘alpha‘alpha);
fprintf([‘在%d%%的置信水平下,单位根检验统计量为%f\n‘...
‘临界值为%f,概率为%f\n‘]alpha*100statcValuepValue);
alpha=0.05;
disp(‘%%%%%%%%%%%%%%%%%%%%%%‘);
[hpValuestatcValue] = adftest(ret‘alpha‘alpha);
fprintf([‘在%d%%的置信水平下,单位根检验统计量为%f\n‘...
‘临界值为%f,概率为%f\n‘]alpha*100statcValuepValue);
alpha=0.01;
disp(‘%%%%%%%%%%%%%%%%%%%%%%‘);
[hpValuestatcValue] = adftest(ret‘alpha‘alpha);
fprintf([‘在%d%%的置信水平下,单位根检验统计量为%f\n‘...
‘临界值为%f,概率为%f\n‘]alpha*100statcValuepValue);
%% 相关和自相关
% AR模型:自相关系数拖尾,偏自相关系数截尾;
% MA模型:自相关系数截尾,偏自相关函数拖尾;
% ARMA模型:自相关函数和偏自相关函数均拖尾
figure;
subplot(211);
autocorr(ret);
name = [stockcode‘ 收益率序列自相关函数图‘];
title(name);
subplot(212);
parcorr(ret);
name = [stockcode‘ 收益率序列偏自相关函数图‘];
title(name);
name = [stockcode‘ 收益率序列自相关和偏自相关函数图‘];
saveas(gcf[name‘.jpg‘]);
% 这两个图结论日收益序列没有明显的相关性
%% 因此通过arch效应检验相关性
% 建立均值方程yt=c+at
at = ret - mu;
% % 通过残差平方的偏自相关函数判断arch模型阶数
figure;
plot(xat.^2);
name = [stockcode‘ 收益率残差平方序列图‘];
title(name);
saveas(gcf[name‘.jpg‘]);
figure;
subplot(211);
autocorr(at.^2);
name = [stockcode‘ 收益率残差平方序列自相关函数图‘];
title(name);
subplot(212);
parcorr(at.^2);
name = [stockcode‘ 收益率残差平方序列偏自相关函数图‘];
title(name);
name = [stockcode‘ 收益率残差平方序列自相关和偏自相关函数图‘];
saveas(gcf[name‘.jpg‘]);
% 拉格郎日乘子检验
lags = 3;
alpha=0.05;
disp(‘%%%%%%%%%%%%%%%%%%%%%%‘);
disp(‘arch效应拉格朗日乘子检验‘);
[hpValuestatcValue] = archtest(at‘Lags‘lags‘Alpha‘alpha);
fprintf([‘在%d%%的置信水平下,滞后阶数为%d时检验统计量为%f\n‘...
‘临界值为%f,概率为%f\n‘]alpha*100
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-04-24 15:51 garch模型波动率预测\
文件 59111 2019-04-24 15:51 garch模型波动率预测\600551.SH 收益率序列自相关和偏自相关函数图.jpg
文件 32775 2019-04-24 15:51 garch模型波动率预测\600551.SH 收益率残差平方序列图.jpg
文件 60045 2019-04-24 15:51 garch模型波动率预测\600551.SH 收益率残差平方序列自相关和偏自相关函数图.jpg
文件 4073 2019-04-24 15:51 garch模型波动率预测\600551.SH.txt
文件 41818 2019-04-24 15:51 garch模型波动率预测\600551.SH日收益率图.jpg
文件 3910 2019-04-24 15:51 garch模型波动率预测\garch_var.asv
文件 3921 2019-04-24 15:51 garch模型波动率预测\garch_var.m
目录 0 2019-04-24 15:51 garch模型波动率预测\tushare_matlab_sdk\
文件 316541 2019-04-24 15:51 garch模型波动率预测\基于GARCH模型的波动率预测及应用_王献东.pdf
文件 55563 2019-04-24 15:51 garch模型波动率预测\收益率序列自相关和偏自相关函数图.jpg
文件 300 2019-04-24 15:51 garch模型波动率预测\tushare_matlab_sdk\http_createHeader.m
文件 2139 2019-04-24 15:51 garch模型波动率预测\tushare_matlab_sdk\http_paramsToString.m
文件 5325 2019-04-24 15:51 garch模型波动率预测\tushare_matlab_sdk\pro_api.m
文件 7022 2019-04-24 15:51 garch模型波动率预测\tushare_matlab_sdk\pro_bar.m
文件 8433 2019-04-24 15:51 garch模型波动率预测\tushare_matlab_sdk\readme.txt
文件 1692 2019-04-24 15:51 garch模型波动率预测\tushare_matlab_sdk\tushare_pro_test.m
文件 13656 2019-04-24 15:51 garch模型波动率预测\tushare_matlab_sdk\urlread2.m
相关资源
- Pattern Recognition and Machine Learning(高清
- MATLAB 编程 第二版 Stephen J. Chapman 著
- 均值滤波和FFT频谱分析Matlab代码
- 《MATLAB扩展编程》代码
- HDB3码、AMI码的MATLAB实现
- 3点GPS定位MATLAB仿真
- MATLAB数字信号处理85个实用案例精讲入
- matlab从入门到精通pdf94795
- 欧拉放大论文及matlab代码
- 跳一跳辅助_matlab版本
- 全面详解LTE MATLAB建模、仿真与实现
- MIMO-OFDM无线通信技术及MATLAB实现_孙锴
- MATLAB Programming for Engineers 4th - Chapman
- matlab 各种谱分析对比
- 分数阶chen混沌matlab程序
- 基于粒子群算法的非合作博弈的matl
- MATLAB车流仿真 包括跟驰、延误
- matlab空间桁架计算程序
- 基于MATLAB的图像特征点匹配和筛选
- DMA-TVP-FAVAR
- GPS信号的码捕获matlab代码.7z
- 一维光子晶体MATLAB仿真代码吸收率折
- newmark法源程序
- 传统关联成像、计算鬼成像matlab
- pri传统分选算法
- 摆动滚子推杆盘形凸轮设计
- 医学图像重建作业matlab源码
- Matlab实现混沌系统的控制
- 检测疲劳驾驶
- Matlab锁相环仿真-Phase Locked Loop.rar
评论
共有 条评论