导航:首页 > 全球股市 > 时间序列拟合股票

时间序列拟合股票

发布时间:2023-02-27 03:48:36

‘壹’ (三)时间序列分析的基本方法

1.模型的选择和建模基本步骤

(1)建模基本步骤

1)用观测、调查、取样,取得时间序列动态数据。

2)作相关图,研究变化的趋势和周期,并能发现跳点和拐点。拐点则是指时间序列从上升趋势突然变为下降趋势的点,如果存在拐点,则在建模时必须用不同的模型去分段拟合该时间序列。

3)辨识合适的随机模型,进行曲线拟合。

(2)模型的选择

当利用过去观测值的加权平均来预测未来的观测值时,赋予离得越近的观测值以更多的权,而“老”观测值的权数按指数速度递减,称为指数平滑(exponential smoothing),它能用于纯粹时间序列的情况。

对于短的或简单的时间序列,可用趋势模型和季节模型加上误差来进行拟合。对于平稳时间序列,可用自回归(AR)模型、移动平均(MA)模型或其组合的自回归移动平均(ARMA)模型等来拟合。

一个纯粹的AR模型意味着变量的一个观测值由其以前的p个观测值的线性组合加上随机误差项而成,就像自己对自己回归一样,所以称为自回归模型。

MA模型意味着变量的一个观测值由目前的和先前的n个随机误差的线性的组合。

当观测值多于50个时一般采用ARMA模型。

对于非平稳时间序列,则要先将序列进行差分(Difference,即每一观测值减去其前一观测值或周期值)运算,化为平稳时间序列后再用适当模型去拟合。这种经差分法整合后的ARMA模型称为整合自回归移动平均模型(Autoregressive Integrated Moving Average),简称ARIMA模型(张文彤,2002;薛薇,2005;G.E.P.Box et al.,1994)。

ARIMA模型要求时间序列满足平稳性和可逆性的条件,即序列均值不随着时间增加或减少,序列的方差不随时间变化。但由于我们所关注的地层元素含量变化为有趋势和周期成分的时间序列,都不是平稳的,这就需要对其进行差分来消除这些使序列不平稳的成分。所以我们选择更强有力的ARIMA模型。

2.平稳性和周期性研究

有些数学模型要检验周期性变化是否为平稳性过程,即其统计特性不随时间而变化,我们可根据序列图、自相关函数图、偏自相关函数图和谱密度图等对序列的平稳性和周期性进行识别。当序列图上表现有明显分段特征时可采用分段计算法,若分段求得的每段频谱图基本一致或相似,则认为过程是平稳的,否则是非平稳的。

自相关函数ACF(Autocorrelations function)是描述序列当前观测值与序列前面的观测值之间简单和常规的相关系数;而偏自相关函数PACF(Partial autocorrelations function)是在控制序列其他的影响后,测度序列当前值与某一先前值之间的相关程度。

平稳过程的自相关系数和偏自相关系数只是时间间隔的函数,与时间起点无关,都会以某种方式衰减趋近于0。

当ACF维持许多期的正相关,且ACF的值通常是很缓慢地递减到0,则序列为非平稳型。

序列的自相关-偏自相关函数具有对称性,即反映了周期性变化特征。

3.谱分析

确定性周期函数X(t)(设周期为T)在一定条件下通过傅里叶(Fourier)级数展开可表示成一些不同频率的正弦和余弦函数之和(陈磊等,2001),这里假设为有限项,即:

洞庭湖区第四纪环境地球化学

其中,频率fk=k/T,k=1,2,…,N。

上式表明:如果抛开相位的差别,这类函数的周期变化完全取决于各余弦函数分量的频率和振幅。换句话说,我们可以用下面的函数来表示X(t)的波动特征:

洞庭湖区第四纪环境地球化学

函数p(f)和函数X(t)表达了同样的周期波动,两者实际上是等价的,只不过是从频域和时域两个不同角度来描述而已。称p(f)为X(t)的功率谱密度函数,简称谱密度。它不仅反映了X(t)中各固有分量的周期情况,还同时显示出这些周期分量在整体X(t)中各自的重要性。具体说,在X(t)中各周期分量的对应频率处,谱密度函数图应出现较明显的凸起,分量的振幅越大,峰值越高,对X(t)的整体影响也越大。

事实上,无论问题本身是否具有周期性或不确定性(如连续型随机过程或时间序列)都可以采用类似的方法在频域上加以描述,只是表示的形式和意义比上面要复杂得多。时间序列的谱分析方法就是要通过估计时间序列的谱密度函数,找出序列中的各主要周期分量,通过对各分量的分析达到对时间序列主要周期波动特征的把握。

根据谱分析理论,对一个平稳时间序列{Xt},如果其自协方差函数R(k)满足

|R(k)|<+∞,则其谱密度函数h(f)必存在且与R(k)有傅氏变换关系,即平稳序列 {Xt} 的标准化谱密度p(f)是自相关函数r(k)的傅氏变换。由于p(f)是一个无量纲的相对值,在许多情况下更便于分析和比较。

如何从实际问题所给定的时间序列 {Xt,t=1,2,…,n} 中估计出其谱密度或标准谱密度函数是谱分析要解决的主要问题。本书采用图基-汉宁(Tukey-Hanning)窗谱估计法。

‘贰’ 怎么利用svm对时间序列进行建模

SVM理论是在统计学习理论的基础上发展起来的,由于统计学习理论和SVM方法对有限样本情况下模式识别中的一些根本性的问题进行了系统的理论研究,很大程度上解决了以往的机器学习中模型的选择与过学习问题、非线性和维数灾难、局部极小点问题等。应用SVM进行回归预测的步骤具体如下:
1)实验规模的选取,决定训练集的数量、测试集的数量,以及两者的比例;2)预测参数的选取;3)对实验数据进行规范化处理;4)核函数的确定;5)核函数参数的确定。其中参数的选择对SVM的性能来说是十分重要的,对于本文的核函数使用RBF核函数,对于RBF核函数,SVM参数包括折衷参数C、核宽度C和不敏感参数E。目前SVM方法的参数、核函数的参数选择,在国际上都还没有形成统一的模式,也就是说最优SVM算法参数选择还只能是凭借经验、实验对比、大范围的搜寻和交叉检验等进行寻优。实际应用中经常为了方便,主观设定一个较小的正数作为E的取值,本文首先在C和C的一定范围内取多个值来训练,定下各个参数取值的大概范围,然后利用留一法来具体选定参数值
股价时间序列的SVM模型最高阶确定
股价数据是一个时间序列,从时间序列的特征分析得知,股价具有时滞、后效性,当天的股价不仅还与当天各种特征有关,还与前几天的股价及特征相关,所以有必要把前几天的股价和特征作为自变量来考虑。最高阶确定基本原理是从低阶开始对系统建模,然后逐步增加模型的阶数,并用F检验对这些模型进行判别来确定最高阶n,这样才能更客观反映股票价格的时滞特性。具体操作步骤如下:假定一多输入单输出回归模型有N个样本、一个因变量(股价)、m- 1个自变量(特征),由低阶到高阶递推地采用SVM模型去拟合系统(这儿的拓阶就是把昨天股价当做自变量,对特征同时拓阶),并依次对相邻两个SVM模型采用F检验的方法判断模型阶次增加是否合适[ 7]。对相邻两模型SVM ( n)和SVM ( n+ 1)而言,有统计量Fi为:Fi=QSVR (n)- QSVR( n+1)QSVR (n)1N - m n - (m -1)mi =1,2,,, n(1)它服从自由度分别为m和(N - m n - (m -1) )的F分布,其中QSVR (n)和QSVR( n+1)分别为SVR ( n)和QSVR( n+1)的剩余离差平方和,若Fi< F(?,m, N-m n- (m-1) ),则SVM (n )模型是合适的;反之,继续拓展阶数。
前向浮动特征筛选
经过上述模型最高阶数的确定后,虽然确定了阶数为n的SVM模型,即n个特征,但其中某些特征对模型的预测精度有不利影响,本文采用基于SVM和留一法的前向浮动特征特征筛选算法选择对提高预测精度有利影响的特征。令B= {xj: j=1,2,,, k}表示特征全集, Am表示由B中的m个特征组成的特征子集,评价函数MSE (Am)和MSE (Ai) i =1,2,,, m -1的值都已知。本文采用的前向浮动特征筛选算法如下[9]:1)设置m =0, A0为空集,利用前向特征筛选方法寻找两个特征组成特征子集Am(m =2);2)使用前向特征筛选方法从未选择的特征子集(B -Am)中选择特征xm +1,得到子集Am+1;3)如果迭代次数达到预设值则退出,否则执行4);4)选择特征子集Am+1中最不重要的特征。如果xm+1是最不重要的特征即对任意jXm +1, J (Am +1- xm+1)FJ(Am +1- xj)成立,那么令m = m +1,返回2) (由于xm+1是最不重要的特征,所以无需从Am中排除原有的特征);如果最不重要的特征是xr( r =1,2,,, m )且MSE (Am+1- xr) < MSE (Am)成立,排除xr,令A'm= Am+1- xr;如果m =2,设置Am= A'm,J (Am) = J (A'm), ,返回2),否则转向步骤5);5)在特征子集A'm中寻找最不重要的特征xs,如果MSE (A'm- xs)EM SE (Am-1),那么设置Am= A'm, MSE (Am)= MSE (A'm),返回2);如果M SE (A'm- xs) < M SE (Am -1),那么A'm从中排除xs,得到A'm-1= Am- xs,令m = m -1;如果m =2,设置Am= A'm, MSE (Am) = MSE (A'm)返回2),否则转向5)。最后选择的特征用于后续建模预测。
预测评价指标及参比模型
训练结果评估阶段是对训练得出的模型推广能力进行验证,所谓推广能力是指经训练后的模型对未在训练集中出现的样本做出正确反应的能力。为了评价本文模型的优劣,选择BPANN、多变量自回归时间序列模型( CAR)和没有进行拓阶和特征筛选的SVM作为参比模型。采用均方误差(mean squared error, MSE)和平均绝对误差百分率(mean ab-solute percentage error, MAPE)作为评价指标。MSE和MAP定义如下:M SE=E(yi- y^i)2n( 2)MAPE=E| yi- y^i| /yin( 3)其中yi为真值, y^i为预测值, n为预测样本数。如果得出M SE, MAPE结果较小,则说明该评估模型的推广能力强,或泛化能力强,否则就说明其推广能力较差

‘叁’ 时间序列分析方法

时间序列是指一组在连续时间上测得的数据,其在数学上的定义是一组向量x(t), t=0,1,2,3,...,其中t表示数据所在的时间点,x(t)是一组按时间顺序(测得)排列的随机变量。包含单个变量的时间序列称为单变量时间序列,而包含多个变量的时间序列则称为多变量。

时间序列在很多方面多有涉及到,如天气预报,每天每个小时的气温,股票走势等等,在商业方面有诸多应用,如:

下面我们将通过一个航班数据来说明如何使用已有的工具来进行时间序列数据预测。常用来处理时间序列的包有三个:

对于基于AR、MA的方法一般需要数据预处理,因此本文分为三部分:

通过简单的初步处理以及可视化可以帮助我们有效快速的了解数据的分布(以及时间序列的趋势)。

观察数据的频率直方图以及密度分布图以洞察数据结构,从下图可以看出:

使用 statsmodels 对该时间序列进行分解,以了解该时间序列数据的各个部分,每个部分都代表着一种模式类别。借用 statsmodels 序列分解我们可以看到数据的主要趋势成分、季节成分和残差成分,这与我们上面的推测相符合。

如果一个时间序列的均值和方差随着时间变化保持稳定,则可以说这个时间序列是稳定的。

大多数时间序列模型都是在平稳序列的前提下进行建模的。造成这种情况的主要原因是序列可以有许多种(复杂的)非平稳的方式,而平稳性只有一种,更加的易于分析,易于建模。

在直觉上,如果一段时间序列在某一段时间序列内具有特定的行为,那么将来很可能具有相同的行为。譬如已连续观察一个星期都是六点出太阳,那么可以推测明天也是六点出太阳,误差非常小。

而且,与非平稳序列相比,平稳序列相关的理论更加成熟且易于实现。

一般可以通过以下几种方式来检验序列的平稳性:

如果时间序列是平稳性的,那么在ACF/PACF中观测点数据与之前数据点的相关性会急剧下降。

下图中的圆锥形阴影是置信区间,区间外的数据点说明其与观测数据本身具有强烈的相关性,这种相关性并非来自于统计波动。

PACF在计算X(t)和X(t-h)的相关性的时候,挖空在(t-h,t)上所有数据点对X(t)的影响,反应的是X(t)和X(t-h)之间真实的相关性(直接相关性)。

从下图可以看出,数据点的相关性并没有急剧下降,因此该序列是非平稳的。

如果序列是平稳的,那么其滑动均值/方差会随着时间的变化保持稳定。

但是从下图我们可以看到,随着时间的推移,均值呈现明显的上升趋势,而方差也呈现出波动式上升的趋势,因此该序列是非平稳的。

一般来讲p值小于0.05我们便认为其是显着性的,可以拒绝零假设。但是这里的p值为0.99明显是非显着性的,因此接受零假设,该序列是非平稳的。

从上面的平稳性检验我们可以知道该时间序列为非平稳序列。此外,通过上面1.3部分的序列分解我们也可以看到,该序列可分解为3部分:

我们可以使用数据转换来对那些较大的数据施加更大的惩罚,如取对数、开平方根、立方根、差分等,以达到序列平稳的目的。

滑动平均后数据失去了其原来的特点(波动式上升),这样损失的信息过多,肯定是无法作为后续模型的输入的。

差分是常用的将非平稳序列转换平稳序列的方法。ARIMA中的 'I' 便是指的差分,因此ARIMA是可以对非平稳序列进行处理的,其相当于先将非平稳序列通过差分转换为平稳序列再来使用ARMA进行建模。

一般差分是用某时刻数值减去上一时刻数值来得到新序列。但这里有一点区别,我们是使用当前时刻数值来减去其对应时刻的滑动均值。

我们来看看刚刚差分的结果怎么样。

让我们稍微总结下我们刚刚的步骤:

通过上面的3步我们成功的将一个非平稳序列转换成了一个平稳序列。上面使用的是最简单的滑动均值,下面我们试试指数滑动平均怎么样。

上面是最常用的指数滑动平均的定义,但是pandas实现的指数滑动平均好像与这个有一点区别,详细区别还得去查pandas文档。

指数滑动均值的效果看起来也很差。我们使用差分+指数滑动平均再来试试吧。

在上面我们通过 取log+(指数)滑动平均+差分 已经成功将非平稳序列转换为了平稳序列。

下面我们看看,转换后的平稳序列的各个成分是什么样的。不过这里我们使用的是最简单的差分,当前时刻的值等于原始序列当前时刻的值减去原始序列中上一时刻的值,即: x'(t) = x(t) - x(t-1)。

看起来挺不错,是个平稳序列的样子。不过,还是检验一下吧。

可以看到,趋势(Trend)部分已基本被去除,但是季节性(seasonal)部分还是很明显,而ARIMA是无法对含有seasonal的序列进行建模分析的。

在一开始我们提到了3个包均可以对时间序列进行建模。

为了简便,这里 pmdarima 和 statsmodels.tsa 直接使用最好的建模方法即SARIMA,该方法在ARIMA的基础上添加了额外功能,可以拟合seasonal部分以及额外添加的数据。

在使用ARIMA(Autoregressive Integrated Moving Average)模型前,我们先简单了解下这个模型。这个模型其实可以包括三部分,分别对应着三个参数(p, d, q):

因此ARIMA模型就是将AR和MA模型结合起来然后加上差分,克服了不能处理非平稳序列的问题。但是,需要注意的是,其仍然无法对seasonal进行拟合。

下面开始使用ARIMA来拟合数据。

(1) 先分训练集和验证集。需要注意的是这里使用的原始数据来进行建模而非转换后的数据。

(2)ARIMA一阶差分建模并预测

(3)对差分结果进行还原

先手动选择几组参数,然后参数搜索找到最佳值。需要注意的是,为了避免过拟合,这里的阶数一般不太建议取太大。

可视化看看结果怎么样吧。

(6)最后,我们还能对拟合好的模型进行诊断看看结果怎么样。

我们主要关心的是确保模型的残差(resial)部分互不相关,并且呈零均值正态分布。若季节性ARIMA(SARIMA)不满足这些属性,则表明它可以进一步改善。模型诊断根据下面的几个方面来判断残差是否符合正态分布:

同样的,为了方便,我们这里使用 pmdarima 中一个可以自动搜索最佳参数的方法 auto_arima 来进行建模。

一般来说,在实际生活和生产环节中,除了季节项,趋势项,剩余项之外,通常还有节假日的效应。所以,在prophet算法里面,作者同时考虑了以上四项,即:

上式中,

更多详细Prophet算法内容可以参考 Facebook 时间序列预测算法 Prophet 的研究 。

Prophet算法就是通过拟合这几项,然后把它们累加起来得到时间序列的预测值。

Prophet提供了直观且易于调整的参数:

Prophet对输入数据有要求:

关于 Prophet 的使用例子可以参考 Prophet example notebooks

下面使用 Prophet 来进行处理数据。

参考:
Facebook 时间序列预测算法 Prophet 的研究
Prophet example notebooks
auto_arima documentation for selecting best model
数据分析技术:时间序列分析的AR/MA/ARMA/ARIMA模型体系
https://github.com/advaitsave/Introction-to-Time-Series-forecasting-Python
时间序列分析
My First Time Series Comp (Added Prophet)
Prophet官方文档: https://facebookincubator.github.io

‘肆’ 应用时间序列分析有哪几种方法

时间序列分析常用的方法:趋势拟合法和平滑法。

1、趋势拟合法就是把时间作为自变量,相应的序列观察值作为因变量,建立序列值随时间变化的回归模型的方法。包括线性拟合和非线性拟合。

线性拟合的使用场合为长期趋势呈现出线形特征的场合。参数估计方法为最小二乘估计。

非线性拟合的使用场合为长期趋势呈现出非线形特征的场合。其参数估计的思想是把能转换成线性模型的都转换成线性模型,用线性最小二乘法进行参数估计。实在不能转换成线性的,就用迭代法进行参数估计。

2、平滑法是进行趋势分析和预测时常用的一种方法。它是利用修匀技术,削弱短期随机波动对序列的影响,使序列平滑化,从而显示出长期趋势变化的规律 。

(4)时间序列拟合股票扩展阅读

时间序列分析的主要用途:

1、系统描述

根据对系统进行观测得到的时间序列数据,用曲线拟合方法对系统进行客观的描述。

2、系统分析

当观测值取自两个以上变量时,可用一个时间序列中的变化去说明另一个时间序列中的变化,从而深入了解给定时间序列产生的机理。

3、预测未来

一般用ARMA模型拟合时间序列,预测该时间序列未来值。

4、决策和控制

根据时间序列模型可调整输入变量使系统发展过程保持在目标值上,即预测到过程要偏离目标时便可进行必要的控制。

‘伍’ 时间序列基础

1.随机时序分析的基本概念
1)随机变量:简单的随机现象,如某班一天学生出勤人数,是静态的。
2)随机过程:随机现象的动态变化过程。动态的。如某一时期各个时刻的状态。
所谓随机过程,就是说现象的变化没有确定形式,没有必然的变化规律。用数学语言来说,就是事物变化的过程不能用一个(或几个)时间t的确定的函数来描述。
如果对于每一特定的t属于T(T是时间集合),X(t)是一个随机变量,则称这一族无穷多个随机变量{X(t),t属于T}是一个随机过程。

2.白噪声序列
1)纯随机过程:随机变量X(t)(t=1,2,3……),如果是由一个不相关的随机变量的序列构成的,即对于所有s不等于k,随机变量Xs和Xk的协方差为零,则称其为 纯随机过程
2)白噪声过程:如果一个纯随机过程的期望和方差均为常数,则称之为 白噪声过程 。白噪声过程的样本实称成为白噪声序列,简称白噪声。
3)高斯白噪声序列:如果白噪声具体是服从均值为0、方差为常数的正态分布,那就是 高斯白噪声序列

3.平稳性序列
1)平稳性可以说是时间序列分析的基础。平稳的通俗理解就是时间序列的一些行为不随时间改变, 所谓平稳过程就是其统计特性不随时间的平移而变化的过程。
2)即时间序列内含的规律和逻辑,要在被预测的未来时间段内能够延续下去。这样我们才能用历史信息去预测未来信息,类似机器学习中的训练集和测试集同分布。
3)如果时间序列的变化是没有规律的、完全随机的,那么预测模型也就没有用。
4)平稳性的数学表达:如果时间序列在某一常数附近波动且波动范围有限,即有常数均值和常数方差,并且延迟k期的序列变量的自协方差和自相关系数是相等的或者说延迟k期的序列变量之间的影响程度是一样的,则称该序列为平稳序列。简单说就是没有明显趋势且波动范围有限。

4.严平稳/强平稳
1)通俗来说,就是时间序列的联合分布随着时间变化严格保持不变。
2)数学表达:如果对所有的时刻 t, (yt1,yt2,…ytm)的联合分布与(y(t1+k),(yt2+k),…y(tm+k))的联合分布相同,我们称时间序列 {yt} 是严平稳的。也就是时间序列的联合分布在时间的平移变换下保持不变。

5.弱平稳
1)数学表达:均值不变,协方差Cov(yt,y(t-k))=γk,γk依赖于k。
2)即协方差也不随时间改变,而仅与时间差k相关。
3)可以根据根据时间序列的折线图等大致观察数据的(弱)平稳性:*所有数据点在一个常数水平上下以相同幅度波动。
4)弱平稳的线性时间序列具有短期相关性(证明见参考书),即通常只有近期的序列值对现时值得影响比较明显,间隔越远的过去值对现时值得影响越小。至于这个间隔,也就是下面要提到的模型的阶数。

6.严平稳和弱平稳的关系
1)严平稳是一个很强的条件,难以用经验的方法验证,所以一般将弱平稳性作为模型的假设条件。
2)两者并不是严格的包含与被包含关系,但当时间序列是正态分布时,二者等价。

7.单位根非平稳序列(可转换为平稳序列的非平稳序列)
在金融数据中,通常假定资产收益率序列是弱平稳的。但还有一些研究对象,比如利率、汇率、资产的价格序列,往往不是平稳的。对于资产的价格序列,其非平稳性往往由于价格没有固定的水平,这样的非平稳序列叫做单位根(unit-root)非平稳序列。
1)最着名的单位根非平稳序列的例子是随机游走(random walk)模型:
pt=μ+p(t-1)+εt
μ是常数项(漂移:drift)。εt是白噪声序列,则pt就是一个随机游走。它的形式和AR模型很像,但不同之处在于,AR模型中,系数的模需要小于1,这是AR的平稳性条件,而随机游走相当于系数为1的AR公式,不满足AR模型的平稳性条件。
随机游走模型可作为(对数)股价运动的统计模型,在这样的模型下,股价是不可预测的。因为εt关于常数对称,所以在已知p(t-1)的条件下,pt上升或下降的概率都是50%,无从预测。
2)带趋势项的时间序列
pt=β0+β1*t+yt,yt是一个平稳时间序列。
带漂移的随机游走模型,其均值和方差都随时间变化;而带趋势项的时间序列,其均值随时间变化,但方差则是不变的常数。
单位根非平稳序列可以进行平稳化处理转换为平稳序列。比如用差分法处理随机游走序列,用用简单的回归分析移除时间趋势处理带趋势项的时间序列。

建立具体的模型,需解决如下三个问题模型的具体形式、时序变量的滞后期以及随机扰动项的结构。

μ是yt的均值;ψ是系数,决定了时间序列的线性动态结构,也被称为权重,其中ψ0=1;{εt}为高斯白噪声序列,它表示时间序列{yt}在t时刻出现了新的信息,所以εt称为时刻t的innovation(新信息)或shock(扰动)。
线性时间序列模型,就是描述线性时间序列的权重ψ的计量经济模型或统计模型,比如ARIMA。因为并非所有金融数据都是线性的,所以不是所有金融数据都适合ARIMA等模型。

①自回归模型(AR)
用变量自身的历史时间数据对变量进行回归,从而预测变量未来的时间数据。
p阶(滞后值,可暂理解为每个移动窗口有p期)自回归公式即AR(p):

②移动平均模型(MA)
移动平均模型关注的是误差项的累加,能够有效消除预测中的随机波动。
可以看作是白噪声序列的简单推广,是白噪声序列的有限线性组合。也可以看作是参数受到限制的无穷阶AR模型。

③自回归移动平均模型(ARMA)
有时候,要用很多阶数的AR和MA模型(见后面的定阶问题),为解决这个问题提出ARMA模型。
对于金融中的收益率序列,直接使用ARMA模型的时候较少,但其概念与波动率建模很相关,GARCH模型可以认为是对{εt}的ARMA模型。

④自回归差分移动平均模型(ARIMA)
ARIMA比ARMA仅多了个"I",代表的含义可理解为 差分。
一些非平稳序列经过d次差分后,可以转化为平稳时间序列。我们对差分1次后的序列进行平稳性检验,若果是非平稳的,则继续差分。直到d次后检验为平稳序列。

⑤一般分析过程
1、 平稳性检验
ADF检验(单位根检验):这是一种检查数据稳定性的统计测试。
原假设(无效假设):时间序列是不稳定的。
2、 平稳化处理
平稳化的基本思路是:通过建模并估计趋势和季节性这些因素,并从时间序列中移除,来获得一个稳定的时间序列,然后再使用统计预测技术来处理时间序列,最后将预测得到的数据,通过加入趋势和季节性等约束,来还原到原始时间序列数据。
2.0 对数变换
对某些时间序列需要取对数处理,一是可以将一些指数增长的时间序列变成线性增长,二是可以稳定序列的波动性。对数变换在经济金融类时间序列中常用。
2.1 差分法
如果是单位根非平稳的(比如随机游走模型),可以对其进行差分化。它能让数据呈现一种更加平稳的趋势。差分阶数的选择通常越小越好,只要能够使得序列稳定就行。
2.2 平滑法
移动平均、指数加权移动平均
注:经差分或平滑后的数据可能因包含缺失值而不能使用检验,需要将缺失值去除
2.3 分解法
建立有关趋势和季节性的模型,并从模型中删除它们。
3 、建立模型:模型选择和模型的定阶
模型的选择即在AR、MA、ARMA、ARIMA中间如何选择。
模型的定阶即指定上面过程中产生的超参数p、q和d(差分的阶数)。
(1)用ACF和PACF图判断使用哪种线性时间序列模型
AR模型:ACF拖尾,PACF截尾,看PACF定阶。
MA模型:ACF截尾,PACF拖尾,看ACF定阶。
ARMA模型:都拖尾。(EACF定阶)
截尾:在某阶后 迅速 趋于0(后面大部分阶的对应值在二倍标准差以内);
拖尾:按指数衰减或震荡,值到后面还有增大的情况。
ARIMA模型:适用于差分后平稳的序列。
(2)利用 信息准则 函数选择合适的阶
对于个数不多的时序数据,可以通过观察自相关图和偏相关图来进行模型识别,倘若要分析的时序数据量较多,例如要预测每只股票的走势,就不可能逐个去调参了。这时可以依据AIC或BIC准则识别模型的p, q值,通常认为AIC或BIC值越小的模型相对更优。
AIC或BIC准则综合考虑了残差大小和自变量的个数,残差越小AIC或BIC值越小,自变量个数越多AIC或BIC值越大。AIC或BIC准则可以说是对模型过拟合设定了一个标准。
AIC (Akaike information criterion,赤池信息度量准则)
AIC=2k-2ln(L)
· BIC (Bayesian information criterion,贝叶斯信息度量准则)
BIC=kln(n)-2ln(L)
k为模型的超参数个数,n为样本数量,L为似然函数。
类比机器学习中的损失函数=经验损失函数+正则化项。
模型选择标准:AIC和BIC越小越好(在保证精度的情况下模型越简单越好)
4 、模型检验和评估(之前应切分训练集和验证集)
检验残差是否符合标准(QQ图):是否服从均值为0,方差是常数的正态分布(εt是否是高斯白噪声序列)。
拟合优度检验(模型的评估):R 2和调整后的R 2(R^2只适用于平稳序列)。
5 、预测
如果之前进行了标准化、差分化等,需要进行还原:
标准化的还原要注意是log(x+1)还是log(x)。

1 、基础概念
波动率
在期权交易中,波动率是标的资产的收益率的条件标准差。之前的平稳序列假设方差为常数,但当序列的方差不是常数时,我们需要用波动率对其变化进行描述。
对于金融时间序列,波动率往往具有以下特征:
存在波动率聚集(volatility cluster)现象。 即波动率在一些 时间段 上高,一些时间段上低。
波动率以连续时间变化,很少发生跳跃。
波动率不会发散到无穷,而是在固定的范围内变化(统计学角度上说,其是平稳的)
杠杆效应:波动率对价格大幅上升和大幅下降的反应是不同的。
波动率模型/条件异方差模型
给资产收益率的波动率进行建模的模型叫做条件异方差模型。这些波动率模型试图刻画的数据有这样的特性: 它们是序列不相关或低阶序列相关的(比如股票的日收益率可能相关,但月收益率则无关),但又不是独立的 。波动率模型就是试图刻画序列的这种非独立性。
定义信息集F(t-1)是包含过去收益率的一切线性函数,假定F(t-1)给定,那么在此条件下时间序列yt的条件均值和条件方差分别表示为:

‘陆’ 时间序列分析模型——ARIMA模型

姓名:车文扬 学号:16020199006

【嵌牛导读】:什么是 ARIMA模型

【嵌牛鼻子】: ARIMA

【嵌牛提问】: ARIMA模型可以具体应用到什么地方?

【嵌牛正文】:

一、研究目的

传统的经济计量方法是以经济理论为基础来描述变量关系的模型。但经济理论通常不足以对变量之间的动态联系提供一个严密的说明,而且内生变量既可以出现在方程的左端又可以出现在方程的右端使得估计和推断变得更加复杂。为了解决这些问题而出现了一种用非结构方法来建立各个变量之间关系的模型,如向量自回归模型(vector autoregression,VAR)和向量误差修正模型(vector error correction model,VEC)。

在经典的回归模型中,主要是 通过回归分析来建立不同变量之间的函数关系(因果关系),以考察事物之间的联系 。本案例要讨论如何 利用时间序列 数据本身建立模型,以研究事物发展自身的规律 ,并据此对事物未来的发展做出预测。研究时间序列数据的意义:在现实中,往往需要研究某个事物其随时间发展变化的规律。这就需要通过研究该事物过去发展的历史记录,以得到其自身发展的规律。在现实中很多问题,如利率波动、收益率变化、反映股市行情的各种指数等通常都可以表达为时间序列数据,通过研究这些数据,发现这些经济变量的变化规律(对于某些变量来说,影响其发展变化的因素太多,或者是主要影响变量的数据难以收集,以至于难以建立回归模型来发现其变化发展规律,此时,时间序列分析模型就显现其优势——因为这类模型不需要建立因果关系模型,仅需要其变量本身的数据就可以建模),这样的一种建模方式就属于时间序列分析的研究范畴。而时间序列分析中,ARIMA模型是最典型最常用的一种模型。

二、ARIMA模型的原理

1、ARIMA的含义。 ARIMA包含3个部分,即AR、I、MA。AR——表示auto  regression,即自回归模型;I——表示integration,即单整阶数,时间序列模型必须是平稳性序列才能建立计量模型,ARIMA模型作为时间序列模型也不例外,因此首先要对时间序列进行单位根检验,如果是非平稳序列,就要通过差分来转化为平稳序列,经过几次差分转化为平稳序列,就称为几阶单整;MA——表示moving average,即移动平均模型。可见,ARIMA模型实际上是AR模型和MA模型的组合。

ARIMA模型与ARMA模型的区别:ARMA模型是针对平稳时间序列建立的模型。ARIMA模型是针对非平稳时间序列建模。换句话说,非平稳时间序列要建立ARMA模型,首先需要经过差分转化为平稳时间序列,然后建立ARMA模型。

2、ARIMA模型的原理。 正如前面介绍,ARIMA模型实际上是AR模型和MA模型的组合。

AR模型的形式如下:

其中:参数为常数,是阶自回归模型的系数;为自回归模型滞后阶数;是均值为0,方差为的白噪声序列。模型记做——表示阶自回归模型。

MA模型的形式如下:

其中:参数为常数;参数是阶移动平均模型的系数;为移动平均模型滞后阶数;是均值为0,方差为的白噪声序列。模型记做——表示阶移动平均模型。

ARIMA模型的形式如下:

模型记做。为自回归模型滞后阶数,为时间序列单整阶数,为阶移动平均模型滞后阶数。当时,,此时ARIMA模型退化为MA模型;当时,,ARIMA模型退化为AR模型。

3、建立ARIMA模型需要解决的3个问题。 由以上分析可知,建立一个ARIMA模型需要解决以下3个问题:

(1)将非平稳序列转化为平稳序列。

(2)确定模型的形式。即模型属于AR、MA、ARMA中的哪一种。这主要是通过 模型识别 来解决的。

(3)确定变量的滞后阶数。即和的数字。这也是通过 模型识别 完成的。

4、ARIMA模型的识别

ARIMA模型识别的工具为自相关系数(AC)和偏自相关系数(PAC)。

自相关系数: 时间序列滞后k阶的自相关系数由下式估计:

其中是序列的样本均值,这是相距k期值的相关系数。称为时间序列的自相关系数,自相关系数可以部分的刻画一个随机过程的形式。它表明序列的邻近数据之间存在多大程度的相关性。

偏自相关系数: 偏自相关系数是在给定的条件下,之间的条件相关性。其相关程度用偏自相关系数度量。在k阶滞后下估计偏自相关系数的计算公式为:

其中是在k阶滞后时的自相关系数估计值。称为偏相关是因为它度量了k期间距的相关而不考虑k-1期的相关。如果这种自相关的形式可由滞后小于k阶的自相关表示,那么偏相关在k期滞后下的值趋于0。

识别:

AR(p) 模型 的自相关系数是随着k的增加而呈现指数衰减或者震荡式的衰减,具体的衰减形式取决于AR(p)模型滞后项的系数;AR(p)模型的偏自相关系数是p阶截尾的。因此可以通过识别AR(p)模型的偏自相关系数的个数来确定AR(p)模型的阶数p。

MA(q) 模型 的自相关系数在q步以后是截尾的。MA(q)模型的偏自相关系数一定呈现出拖尾的衰减形式。

ARMA(p,q) 模型 是AR(p)模型和MA(q)模型的组合模型,因此ARMA(p,q)的自相关系数是AR(p)自相关系数和MA(q)的自相关系数的混合物。当p=0时,它具有截尾性质;当q=0时,它具有拖尾性质;当p,q都不为0,它具有拖尾性质。

通常,ARMA(p,q)过程的偏自相关系数可能在p阶滞后前有几项明显的 尖柱 ,但从p阶滞后项开始逐渐趋于0;而它的自相关系数则是在q阶滞后前有几项明显的 尖柱 ,从q阶滞后项开始逐渐趋于0。

三、数据和变量的选择

本案例选取我国实际GDP的时间序列建立ARIMA模型,样本区间为1978—2001。数据来源于国家统计局网站上各年的统计年鉴,GDP数据均通过GDP指数换算为以1978年价格计算的值。见表1:

表1:我国1978—2003年GDP(单位:亿元)

年度GDP年度GDP年度GDP

19783605.6198610132.8199446690.7

19794074198711784.7199558510.5

19804551.3198814704199668330.4

19814901.4198916466199774894.2

19825489.2199018319.5199879003.3

19836076.3199121280.4199982673.1

19847164.4199225863.7200089340.9

19858792.1199334500.7200198592.9

四、ARIMA模型的建立步骤

1、单位根检验,确定单整阶数。

由单位根检验的案例分析可知,GDP时间序列为2阶单整的。即d=2。通过2次差分,将GDP序列转化为平稳序列 。利用序列来建立ARMA模型。

2、模型识别

确定模型形式和滞后阶数,通过自相关系数(AC)和偏自相关系数(PAC)来完成识别。

首先将GDP数据输入Eviews软件,查看其二阶差分的AC和PAC。打开GDP序列窗口,点击View按钮,出现下来菜单,选择Correlogram(相关图),如图:

打开相关图对话框,选择二阶差分(2nd difference),点击OK,得到序列的AC和PAC。(也可以将GDP序列先进行二阶差分,然后在相关图中选择水平(Level))

从图中可以看出,序列的自相关系数(AC)在1阶截尾,偏自相关系数(PAC)在2阶截尾。因此判断模型为ARMA模型,且,。即:

3、建模

由以上分析可知,建立模型。首先将GDP序列进行二次差分,得到序列。然后在Workfile工作文件簿中新建一个方程对话框,采用 列表法 的方法对方程进行定义。自回归滞后项用ar表示,移动平均项用ma表示。本例中自回归项有两项,因此用ar(1)、ar(2)表示,移动平均项有一项,用ma(1)表示,如图:

点击确定,得到模型估计结果:

从拟合优度看,,模型拟合效果较好,DW统计量为2.43,各变量t统计量也通过显着性检验,模型较为理想。对残差进行检验,也是平稳的,因此判断模型建立正确。

阅读全文

与时间序列拟合股票相关的资料

热点内容
退市的股票怎么办啊 浏览:617
兴瑞科技股票瑞 浏览:451
证券股票买哪一个 浏览:242
路雷最新股票讲座视频 浏览:887
上海顿慧医疗股票 浏览:914
最好的收费股票分析软件 浏览:836
高铁上的股票信息联网吗 浏览:746
员工激励股票收入税 浏览:571
医师证优惠中国石油股票行情走势 浏览:136
中国银行股票办理流程 浏览:883
三亚农商银行股票 浏览:493
分析企业的股票投资价值 浏览:929
北方华创股票银行配股比例 浏览:218
证券实验报告3支股票对比 浏览:973
股票走势中的确定性 浏览:903
股票重组一定会涨吗 浏览:947
股票专用账户的会计分录 浏览:500
超华科技股票怎么维权 浏览:273
个人股票投资者资金分布 浏览:55
南航最低股票 浏览:835