Page 329 - 数学建模算法与应用
P. 329

第十一章  时间序列分析研究


                   hold on;
                   % 对数变换
                   x = log(x0);

                   % 周期 s=12
                   s = 12;
                   % 预报数据的个数
                   n = 24;

                   % 进行周期差分
                   y = zeros(1, m1-s);
                   for i = s+1:m1

                       y(i-s) = x(i) - x(i-s);
                   end
                   % 计算周期差分后数据的长度
                   m2 = length(y);



                   % 进行趋势性差分
                   w = diff(y);
                   % 计算最终差分后数据的长度

                   m3 = length(w);
                   % 使用 GARCH 模型进行拟合
                   for i = 0:3
                       for j = 0:s+1
                           spec = garchset(‘R’, i, ‘M’, j, ‘Display’, ‘off’);

                           [coeffX, errorsX, LLFX] = garchfit(spec, w);
                           num = garchcount(coeffX);
                           [aic, bic] = aicbic(LLFX, num, m3);

                           fprintf(‘R=%d, M=%d, AIC=%f, BIC=%f\n’, i, j, aic, bic);
                       end
                   end
                   % 保存处理后的数据



                                                                                      319
   324   325   326   327   328   329   330   331   332   333   334