matlab一阶差分并作图,某种股票价格的数据的时间序列模型的建立及分析

1 教育部直属 国家 211 工程 重点建设高校 股票价格模型 应用时间序列分析期末论文 2013 年 11 月 一 实验目的 一 实验目的 掌握用 Box Jeakins 方法及 Paudit Wu 方法建模及预测 二 实验内容二 实验内容 应用数据 1 前 28 个数据建模 后 8 个数据供预测检验 数据数据 1 某种股票价格的数据某种股票价格的数据 单位 元 t 观测值 t 观测值 t 观测值 t 观测值 110 51012 251914 52821 5 210 441112 612015 52920 25 39 941213 52116 133025 63 2 410 251313 442214 753126 88 5111412 442311 753227 63 69 881513 52415 253323 88 710 51615 392517 133426 38 8121715 752620 53524 913 941813 8827193624 38 表表 1 三 数据检验三 数据检验 1 检验并消除数据长期趋势 检验并消除数据长期趋势 法一 图形检验法一 图形检验 1 根据表中数据我们先画出序列图并对序列图进行平稳性分析 2 Matlab 程序代码 x 10 5 10 44 9 94 10 25 11 9 88 10 5 12 13 94 12 25 12 61 13 5 13 44 12 44 13 5 15 39 15 75 13 88 14 5 15 5 16 13 14 75 11 75 15 25 17 13 20 5 19 21 5 plot x xlabel 时间 t ylabel 观测值 x title 某种股票价格序列图 3 得到图 1 图 图 1 4 观察图形 发现数据存在长期向上的趋势 表示序列是不平稳的 5 我们再进一步对数据进行一阶差分 利用 Matlab 画图 3 6 Matlab 程序代码 y diff x 1 plot y xlabel 时间 t ylabel 一阶差分之后的观测值 y title 某种股票价格差分之后序列图 7 得到图 2 图图 2 8 根据图 2 初步判定一阶差分后的序列稳定 法二 用自相关函数检验法二 用自相关函数检验 1 用 matlab 做出原数据自相关函数的图 2 Matlab 程序代码 x 10 5 10 44 9 94 10 25 11 9 88 10 5 12 13 94 12 25 12 61 13 5 13 44 12 44 13 5 15 39 15 75 13 88 14 5 15 5 16 13 14 75 11 75 15 25 17 13 20 5 19 21 5 acf1 autocorr x 2 计算自相关函数并作图 autocorr x 2 acf1 3 得到图 3 4 图 图 3 4 观察图形发现 数据是缓慢衰减的 所以序列是不平稳的 5 我们再进一步对数据进行一阶差分 利用 Matlab 画图得到差分后自相关 函数图 6 Matlab 程序代码 x 10 5 10 44 9 94 10 25 11 9 88 10 5 12 13 94 12 25 12 61 13 5 13 44 12 44 1 3 5 15 39 15 75 13 88 14 5 15 5 16 13 14 75 11 75 15 25 17 13 20 5 19 21 5 y diff x 1 一阶差分 acf2 autocorr y 2 计算自相关函数并画图 autocorr y 2 acf2 7 得到图 4 图 图 4 5 8 观察图形发现数据是迅速衰减的 所以一阶差分后的序列平稳了 附 一阶差分之后的数据附 一阶差分之后的数据 见表见表 2 一阶差分之后的数据一阶差分之后的数据 单位 元 tytytyty 1 0 0681 94151 8922 3 2 0 59 1 69 160 36233 5 30 31100 3617 1 87 24 1 88 40 75110 89180 6225 3 37 5 1 12 12 0 06 19126 1 5 60 6213 1200 63272 5 71 5141 0621 1 38 表表 2 2 检验序列的季节性 检验序列的季节性 由图 2 可已看出 序列没有季节性 四 零均值化数据四 零均值化数据 1 利用 Matlab 软件将序列零均值化 2 Matlab 程序代码为 x 10 5 10 44 9 94 10 25 11 9 88 10 5 12 13 94 12 25 12 61 13 5 13 44 12 44 1 3 5 15 39 15 75 13 88 14 5 15 5 16 13 14 75 11 75 15 25 17 13 20 5 19 21 5 y diff x 1 一阶差分后的结果 ave mean y 均值 z y ave 零均值化后的结果 见表见表 3 零均值化之后的数据零均值化之后的数据 单位 元 tztztztz 6 1 0 467481 5326151 482622 3 4074 2 0 90749 2 0974 16 0 0474 233 0926 3 0 0974 10 0 0474 17 2 2774 241 4726 40 3426110 4826180 2126252 9626 5 1 5274 12 0 4674 190 592626 1 9074 60 212613 1 4074 200 2226272 0926 71 0926140 652621 1 7874 表表 3 Box Jenkins 方法建模方法建模 一 模型类型识别一 模型类型识别 1 由平稳时间序列自相关和偏自相关函数的统计特性来初步确定时间序列模 型的类型 2 Matlab 程序代码 x 10 5 10 44 9 94 10 25 11 9 88 10 5 12 13 94 12 25 12 61 13 5 13 44 12 44 1 3 5 15 39 15 75 13 88 14 5 15 5 16 13 14 75 11 75 15 25 17 13 20 5 19 21 5 y diff x 1 一阶差分后的结果 ave mean y 均值 z y ave 零均值化后的结果 acf3 autocorr z 2 作自相关函数图 pacf3 parcorr z 2 作偏自相关函数图 autocorr z 2 acf3 parcorr z 2 pacf3 for m 2 20 判断零均值化后的数字的自相关函数截尾性 p 0 for i 2 m p p acf3 i 2 ans 1 27 1 2 p 1 2 end ans end 3 通过运行程序 可以得出零均值化后的数据的自相关和偏自相关函数值 见表4 7 K 自相关 偏自相关 K 自相关偏自相关 1 0 1050 0 112211 0 0591 0 6325 2 0 1884 0 2210120 1041 1 3451 3 0 2861 0 4811130 08027 1281 40 38160 475714 0 2376 3 2678 5 0 0287 0 324315 0 03910 6 0 3008 0 9092160 05220 7 0 0805 0 1765170 22350 80 1297 0 445518 0 15200 90 1380 0 3835190 03680 10 0 1233 0 1794200 02270 表表 4 4 运行程序也得到了的值 21 1 1 2 m l l N 2 1 分别为 0 1946 0 2012 0 2157 0 2394 0 2396 0 2532 0 2541 0 2566 0 2593 0 2615 0 2619 0 2635 0 2644 0 2722 0 2724 0 2728 0 2795 0 2825 0 2827 0 2827 这 20 个数据 计算 i 1 2 3 M 的比例 这里的 ik 21 1 1 2 m l l N 2 1 M 5 N 27 N 当 k 4 时 比例为 80 达到了 68 3 所以说在 4 步截尾 k 5 通过分析偏自相关函数的数据 可以得出结论 是拖尾的 kk 6 这个时候可以初步判定这个模型为 MA 4 模型 二 模型阶数判定二 模型阶数判定 8 法一 残差方差图定阶法法一 残差方差图定阶法 1 利用 Eviews 软件可以直接求出残差方差 计算 6 个数据 结果分别如下 图 图 5 2 用 Matlab 软件画出残差方差图 程序代码为 cf 1 598 1 515 1 241 1 225 0 893 0 924 plot cf k 3 残差方差图为 图 图 6 4 由图可以看出 模型阶数 m 从 1 升到 5 时 残差方差都是减的 模型阶 数继续上升时 残差方差开始有所增加 所以可以初步判断合适的模型 阶数为 5 即为 MA 5 模型 法二 法二 F 检验定阶法检验定阶法 1 对序列分别拟合 1 6 阶 MA 模型 利用 Eviews 软件求剩余平方和 分别 为 9 图 图 7 2 MA 6 的剩余平方和已超过 MA 5 的剩余平方和 因此可以从 MA 5 开始考虑模型阶数是否可以降低 对于 MA 4 和 MA 5 模型 有 F 21 319694 527 75938 16 1 75938 1600051 33 3 如果取显著性水平为 0 05 查 F 分布表可得 1 22 4 30 显然 05 0 F F 1 22 所以在 0 05 的显著性水平下 MA 4 和 MA 5 05 0 F 模型有显著差异 模型阶数不能降低 合适的模型阶数为 5 所以该模 型为 MA 5 模型 三 模型参数拟合三 模型参数拟合 1 由上一个步骤可知 MA 5 的模型阶数不能降低 就是为 5 2 利用 Eviews 软件 求出模型的参数 结果如下 图 8 图 图 8 3 综上 模型可写为 54321 527 0 528 0 171 1 866 0 489 0 401 0 ttttttt aaaaaaX 四 模型的适应性检验四 模型的适应性检验 方法 相关函数法方法 相关函数法 1 利用 Eviews 软件 求出残差序列的自相关函数 结果如图 9 10 图 图 9 2 图中的 AC 那一列即为代表的值 k 3 计算公式 数据都满足 1 96 当 k 1 2 20 时 k N 4 这时得出结论 在 0 05 的显著性水平下接受 0 的假设 认为 是 k t a 独立的 即表示 MA 5 模型是适合的 五 模型预测五 模型预测 1 利用 Eviews 软件 根据后八个数据对模型进行预测 得到的预测值如下 图 图 图 10 2 利用 Matlab 软件 对得出来的预测值进行求解零均值化和一阶差分的逆 过程 得到最终的预测值 程序的代码为 x 10 5 10 44 9 94 10 25 11 9 88 10 5 12 13 94 12 25 12 61 13 5 13 44 12 44 13 5 15 39 15 75 13 88 14 5 15 5 16 13 14 75 11 75 15 25 17 13 20 5 19 21 5 y diff x 1 一阶差分后的结果 ave mean y 均值 z y ave 零均值化后的结果 yuce1 1 598708 0 274822 1 491735 0 049299 0 657974 0 401210 0 401210 0 401210 预测得到的初值 yuce2 yuce1 ave 预测初值加上平均数 yuce3 21 5 yuce2 cumsum yuce3 最终的预测值 3 得出来的最终数据以及相对误差见表 5 11 原数据原数据 最终的预测值最终的预测值 相对误差百分比相对误差百分比 20 2520 3087 0 290 25 6320 990918 100 26 8819 906625 943 27 6320 363326 300 23 8820 112715 776 26 3820 118923 734 2420 125116 145 24 3820 131317 427 表 表 5 4 模型的相对误差较大 模型不是很好 Pandit Wu 方法建模方法建模 一 一 对时间序列零均值化对时间序列零均值化 之前已经有过零均值化的过程 结果见上面的表 3 二 拟合二 拟合 ARMA 2n 2n 1 模型模型 1 利用 Eviews 软件对模型依次拟合 ARMA 2 1 ARMA 4 3 和 ARMA 6 5 2 相关结果见下表 表 6 ARMA 模型阶数 参数 ARMA 6 5 ARMA 4 3 ARMA 2 1 0 332 0 047 1 0 1660 545 2 0 104 0 187 3 0 508 12 4 0 475 1 0 420 0 918 2 1 026 3 1 939 剩余平方和 9 47614 41751 730 残差方差 1 0260 9801 570 表 表 6 4 ARMA 8 7 的剩余平方和已超过 ARMA 6 5 的剩余平方和 因此可以 从 ARMA 6 5 开始考虑模型阶数是否可以降低 对于 ARMA 6 5 和 ARMA 4 3 模型 有 F 2 61 1121 476 9 2 476 9 417 14 5 如果取显著性水平为 0 05 查 F 分布表可得 2 10 4 10 显然 05 0 F F 2 16 所以在 0 05 的显著性水平下 ARMA 4 3 和 05 0 F ARMA 2 1 模型有显著差异 模型阶数不可以降低 所以模型定为 ARMA 4 3 模型 三 模型的适应性检验三 模型的适应性检验 方法 相关函数法方法 相关函数法 1 利用 Eviews 软件 求出残差序列的自相关函数 结果如图 11 13 图 图 11 2 图中的 AC 那一列即为代表的值 k 3 计算公式 数据都满足 1 96 当 k 1 2 20 时 k N 4 这时得出结论 在 0 05 的显著性水平下接受 0 的假设 认为 是 k t a 独立的 即表示 ARMA 4 3 模型是适合的 四 求最优模型四 求最优模型 1 1 分析表格 检验模型是否包含小参数 先去掉绝对值最小的参数 利用 Eviews 软件得出相关数据 2 2 2 结果如图 12 图 图 1212 14 3 3 用 F 法检验参数是否为小参数 2 F 4 26 723 384 11 1 384 11417 14 4 4 如果取显著性水平为 0 05 查 F 分布表可得 1 16 4 49 显然 05 0 F F 1 16 所以在 0 05 的显著性水平下 参数是小参数 可 05 0 F 2 以去掉 5 5 再去掉绝对值第二小的参数 利用 Eviews 软件得出相关数据 1 6 6 结果如图 13 图 图 1313 7 7 因为去掉参数后模型的剩余平方和增大 所以不能去掉 2 8 8 综上 应去掉小参数 所以 MARA 4 3 模型 0 是最优模型 模 1 1 型为 321432 044 2 896 0 438 0 563 0 358 0 088 0 167 0 tttttttt aaaaXXXX 实验总结 实验总结 用了两种方法为该序列建立模型 发现两种方法建立的模型完全不同 Box Jenkins 方法建立的 MA 5 在模型预测中发现预测值与原值的相对误 差比较大 而在 Pandit Wu 方法中拟合出的 ARMA 4 3 模型 在求最优模型中去掉两 个小参数后得到最后模型 综上两模型皆有误差 但这也属于正常情况 15

展开阅读全文

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值