ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

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

2021-05-12 15:05:55  阅读:290  来源: 互联网

标签:__________ garch 方差 模型 matlab GARCH Distribution Model arma


原文链接:http://tecdat.cn/?p=3889

 

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

加载数据并指定模型 

加载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分布的模型。 

 

 

标签:__________,garch,方差,模型,matlab,GARCH,Distribution,Model,arma
来源: https://blog.51cto.com/u_15198753/2770842

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有