matlab估计arma garch 条件均值和方差模型

简介: matlab估计arma garch 条件均值和方差模型

此示例显示如何估计条件均值和方差模型。

加载数据并指定模型

加载NASDAQ数据 。为了使数值平稳,将数据转换为收益率。建立AR(1)和GARCH(1,1)模型。



load Data_EquityIdx
nasdaq = DataTable.NASDAQ;
r = 100*price2ret(nasdaq);
T = length(r);


Mdl = arima('ARLags',1,'Variance',garch(1,1))
Mdl =
arima with properties:


Description: "ARIMA(1,0,0) Model (Gaussian Distribution)"
Distribution: Name = "Gaussian"
P: 1
D: 0
Q: 0
Constant: NaN
AR: {NaN} at lag [1]
SAR: {}
MA: {}
SMA: {}
Seasonality: 0
Beta: [1×0]
Variance: [GARCH(1,1) Model]

不使用预采样数据估计模型参数

使用estimate。使用estimate自动生成的预采样样本。


EstMdl = estimate(Mdl,r);


ARIMA(1,0,0) Model (Gaussian Distribution):


Value      StandardError    TStatistic      PValue
________    _____________    __________    __________


Constant    0.072632      0.018047         4.0245      5.7087e-05
AR{1}        0.13816      0.019893          6.945      3.7845e-12






GARCH(1,1) Conditional Variance Model (Gaussian Distribution):


Value      StandardError    TStatistic      PValue
________    _____________    __________    __________
Constant    0.022377      0.0033201        6.7399      1.5852e-11
GARCH{1}     0.87312      0.0091019        95.927               0
ARCH{1}      0.11865       0.008717        13.611      3.4339e-42

估计显示五个估计参数及其对应的标准误差(AR(1),条件均值模型具有两个参数,GARCH(1,1)条件方差模型具有三个参数。


推断条件方差和标准化残差

推断并绘制条件方差和标准化残差。输出对数似然目标函数值。



[res,v,logL] = infer(EstMdl,r);


figure
subplot(2,1,1)
plot(v)
xlim([0,T])
title('Conditional Variance')


subplot(2,1,2)
plot(res./sqrt(v))
xlim([0,T])
title('Standardized Residuals')

在2000个样本之后,条件方差增加。看到波动性增加。

标准化残差在标准正态分布下具有比预期更大的值 。


拟合具有t分布的模型

修改模型为Student's t分布 ,指定方差模型常量项的初始值。



MdlT = Mdl;
MdlT.Distribution = 't';
EstMdlT = estimate(MdlT,r,'Variance0',{'Constant0',0.001});


ARIMA(1,0,0) Model (t Distribution):


Value      StandardError    TStatistic      PValue
________    _____________    __________    __________


Constant    0.093488      0.016694         5.6002      2.1412e-08
AR{1}        0.13911      0.018857         7.3771      1.6175e-13
DoF           7.4775       0.88261          8.472      2.4125e-17






GARCH(1,1) Conditional Variance Model (t Distribution):


Value      StandardError    TStatistic      PValue
________    _____________    __________    __________
Constant    0.011246      0.0036305        3.0976       0.0019511
GARCH{1}     0.90766       0.010516        86.316               0
ARCH{1}     0.089897       0.010835        8.2966      1.0712e-16
DoF           7.4775        0.88261         8.472      2.4125e-17

当t分布时,系数估计值会略有变化。第二个模型拟合(EstMdlT)有一个额外的参数估计,即t分布自由度。估计的自由度相对较小(约为8),表明有明显误差。

比较模型拟合

使用赤池信息准则(AIC)和贝叶斯信息准则(BIC)比较两种模型拟合 。首先,获得第二拟合的对数似然目标函数值。


[resT,vT,logLT] = infer(EstMdlT,r);
[aic,bic] = aicbic([logL,logLT],[5,6],T)
aic = 1×2
103 ×


9.4929    9.3807


bic = 1×2
103 ×


9.5230    9.4168

第二个模型有六个参数,而第一个模型中有五个参数 。尽管如此,两个信息标准都支持具有学生t分布的模型。

相关文章
|
1天前
|
机器学习/深度学习 算法 数据安全/隐私保护
数据链中常见电磁干扰matlab仿真,对比噪声调频,线性调频,噪声,扫频,灵巧五种干扰模型
本项目展示了用于分析和模拟电磁干扰对数据链系统影响的算法。通过Matlab 2022a运行,提供无水印效果图预览。完整代码包含详细中文注释及操作视频。理论部分涵盖五种常见干扰模型:噪声调频、线性调频、噪声、扫频和灵巧干扰,详细介绍其原理并进行对比分析。灵巧干扰采用智能技术如认知无线电和机器学习,自适应调整干扰策略以优化效果。
|
9天前
|
算法
基于Adaboost模型的数据预测和分类matlab仿真
AdaBoost(Adaptive Boosting)是一种由Yoav Freund和Robert Schapire于1995年提出的集成学习方法,旨在通过迭代训练多个弱分类器并赋予分类效果好的弱分类器更高权重,最终构建一个强分类器。该方法通过逐步调整样本权重,使算法更关注前一轮中被误分类的样本,从而逐步优化模型。示例代码在MATLAB 2022A版本中运行,展示了随着弱分类器数量增加,分类错误率的变化及测试数据的分类结果。
|
16天前
|
存储 算法
基于HMM隐马尔可夫模型的金融数据预测算法matlab仿真
本项目基于HMM模型实现金融数据预测,包括模型训练与预测两部分。在MATLAB2022A上运行,通过计算状态转移和观测概率预测未来值,并绘制了预测值、真实值及预测误差的对比图。HMM模型适用于金融市场的时间序列分析,能够有效捕捉隐藏状态及其转换规律,为金融预测提供有力工具。
|
2月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于BP神经网络的苦瓜生长含水量预测模型matlab仿真
本项目展示了基于BP神经网络的苦瓜生长含水量预测模型,通过温度(T)、风速(v)、模型厚度(h)等输入特征,预测苦瓜的含水量。采用Matlab2022a开发,核心代码附带中文注释及操作视频。模型利用BP神经网络的非线性映射能力,对试验数据进行训练,实现对未知样本含水量变化规律的预测,为干燥过程的理论研究提供支持。
|
1月前
|
算法
基于HASM模型的高精度建模matlab仿真
本课题使用HASM进行高精度建模,介绍HASM模型及其简化实现方法。HASM模型基于层次化与自适应统计思想,通过多层结构捕捉不同尺度特征,自适应调整参数,适用于大规模、高维度数据的分析与预测。MATLAB2022A版本运行测试,展示运行结果。
|
2月前
|
机器学习/深度学习 算法 数据处理
基于最小二乘法的太阳黑子活动模型参数辨识和预测matlab仿真
本项目基于最小二乘法,利用Matlab对太阳黑子活动进行模型参数辨识和预测。通过分析过去288年的观测数据,研究其11年周期规律,实现对太阳黑子活动周期性的准确建模与未来趋势预测。适用于MATLAB2022a版本。
|
2月前
|
算法
基于Kronig-Penney能带模型的MATLAB求解与仿真
基于Kronig-Penney能带模型的MATLAB求解与仿真,利用MATLAB的多种数学工具简化了模型分析计算过程。该模型通过一维周期势垒描述晶体中电子运动特性,揭示了能带结构的基本特征,对于半导体物理研究具有重要价值。示例代码展示了如何使用MATLAB进行模型求解和图形绘制。
|
4月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
230 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
4月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
142 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
4月前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
111 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码

热门文章

最新文章