当前位置: 首页 > news >正文

合肥网站建设案例外贸软件价格

合肥网站建设案例,外贸软件价格,网站优化公司信息推荐,电子商务技术点赞、关注#xff0c;养成良好习惯 Life is short, U need Python 量化投资基础系列#xff0c;不断更新中 1 引言 时间序列经典模型主要有: 自回归模型#xff08;Auto Regressive#xff0c;AR#xff09;移动回归模型#xff08;Moving Average#xff0c;MA… 点赞、关注养成良好习惯 Life is short, U need Python 量化投资基础系列不断更新中 1 引言 时间序列经典模型主要有: 自回归模型Auto RegressiveAR移动回归模型Moving AverageMA移动自回归模型Auto Regressive Moving AverageARMA差分移动自回归模型Auto Regressive Integrated Moving AverageARIMA 本案例主要介绍这四种模型的基本原理以及以沪深300指数收盘价数据为例探讨如何使用Python对平稳时间序列进行建模和预测分析。 2 AR模型 2.1 理论介绍 自回归模型Auto RegressiveAR是一个线性模型将时间序列变量当期值作为被解释变数、过去期的历史值当作解释变数因此被称作自回归模型。 p p p 阶自回归模型即 AR( p p p) 的一般表达式为 x t ϕ 0 ϕ 1 x t − 1 ϕ 2 x t − 2 … ϕ p x t − p ε t x_t\phi_0\phi_1 x_{t-1}\phi_2 x_{t-2}\ldots\phi_p x_{t-p}\varepsilon_t xt​ϕ0​ϕ1​xt−1​ϕ2​xt−2​…ϕp​xt−p​εt​ 其中 { ε t } \left\{\varepsilon_t\right\} {εt​} 是一个零均值、独立、同分布的白噪声序列即满足 E ( ε t ) 0 ; Var ⁡ ( ε t ) σ ε 2 ; E ( ε t ε s ) 0 , ∀ s ≠ t \mathbb{E}\left(\varepsilon_t\right)0 ; \quad \operatorname{Var}\left(\varepsilon_t\right)\sigma_{\varepsilon}^2 ; \quad \mathbb{E}\left(\varepsilon_t \varepsilon_s\right)0, \ \ \forall \ s \neq t E(εt​)0;Var(εt​)σε2​;E(εt​εs​)0,  ∀ st 且解释变数 x s x_s xs​ 与残差项 ε t \varepsilon_t εt​ 无相关性即 E ( x s ε t ) 0 ∀ s t \mathbb{E}\left(x_s \varepsilon_t\right)0\forall st E(xs​εt​)0∀st 。为了研究 AR 模型的统计性质假设平稳的时间序列 x t x_t xt​ 可以用 AR( 2 2 2) 模型来刻画 x t ϕ 0 ϕ 1 x t − 1 ϕ 2 x t − 2 ε t , ∣ ϕ 1 ∣ 1 , ∣ ϕ 2 ∣ 1 x_t\phi_0\phi_1 x_{t-1}\phi_2 x_{t-2}\varepsilon_t,\ \ \ |\phi_1|1,\ |\phi_2|1 xt​ϕ0​ϕ1​xt−1​ϕ2​xt−2​εt​,   ∣ϕ1​∣1, ∣ϕ2​∣1 由于平稳时间序列的均值不变则 μ E ( x t ) ϕ 0 ϕ 1 E ( x t − 1 ) ϕ 2 E ( x t − 2 ) E ( ε t ) \mu\mathbb{E}\left(x_t\right)\phi_0\phi_1 \mathbb{E}\left(x_{t-1}\right)\phi_2 \mathbb{E}\left(x_{t-2}\right)\mathbb{E}\left(\varepsilon_t\right) μE(xt​)ϕ0​ϕ1​E(xt−1​)ϕ2​E(xt−2​)E(εt​) 即 μ ϕ 0 ϕ 1 μ ϕ 2 μ 0 μ ϕ 0 1 − ϕ 1 − ϕ 2 \begin{aligned} \mu \phi_0\phi_1 \mu\phi_2 \mu0 \\ \mu \frac{\phi_0}{1-\phi_1-\phi_2} \end{aligned} μμ​ϕ0​ϕ1​μϕ2​μ01−ϕ1​−ϕ2​ϕ0​​​ 于是 x t − μ ϕ 0 ϕ 1 ( x t − 1 − μ ) ϕ 2 ( x t − 2 − μ ) ( ϕ 1 ϕ 2 − 1 ) μ ε t ϕ 1 ( x t − 1 − μ ) ϕ 2 ( x t − 2 − μ ) ε t \begin{aligned} x_t-\mu \phi_0\phi_1\left(x_{t-1}-\mu\right)\phi_2\left(x_{t-2}-\mu\right)\left(\phi_1\phi_2-1\right) \mu\varepsilon_t \\ \phi_1\left(x_{t-1}-\mu\right)\phi_2\left(x_{t-2}-\mu\right)\varepsilon_t \end{aligned} xt​−μ​ϕ0​ϕ1​(xt−1​−μ)ϕ2​(xt−2​−μ)(ϕ1​ϕ2​−1)μεt​ϕ1​(xt−1​−μ)ϕ2​(xt−2​−μ)εt​​ 将上式两边分别乘以 ( x t − 1 − μ ) \left(x_{t-1}-\mu\right) (xt−1​−μ) 并取期望再除以方差 γ 0 \gamma_0 γ0​ 之后可以得到以下公式 γ 1 γ 0 ϕ 1 γ 0 γ 0 ϕ 2 γ 1 γ 0 \frac{\gamma_1}{\gamma_0}\phi_1 \frac{\gamma_0}{\gamma_0}\phi_2 \frac{\gamma_1}{\gamma_0} γ0​γ1​​ϕ1​γ0​γ0​​ϕ2​γ0​γ1​​ 其中 γ 1 C o v ( x t , x t − 1 ) \gamma_1Cov(x_{t},x_{t-1}) γ1​Cov(xt​,xt−1​) γ 0 C o v ( x t , x t ) V a r ( x t ) \gamma_0Cov(x_{t},x_{t})Var(x_t) γ0​Cov(xt​,xt​)Var(xt​)。 即 ρ 1 ϕ 1 ϕ 2 ρ 1 \rho_1\phi_1\phi_2 \rho_1 ρ1​ϕ1​ϕ2​ρ1​ 从而 ρ 1 ϕ 1 1 − ϕ 2 \rho_1\frac{\phi_1}{1-\phi_2} ρ1​1−ϕ2​ϕ1​​ 同样的方式乘以 ( x t − 2 − μ ) \left(x_{t-2}-\mu\right) (xt−2​−μ) 并取期望再除以方差 γ 0 \gamma_0 γ0​ 可得 ρ 2 ϕ 1 ρ 1 ϕ 2 \rho_2\phi_1 \rho_1\phi_2 ρ2​ϕ1​ρ1​ϕ2​ 综上可知 ρ 1 ϕ 1 1 − ϕ 2 ρ 2 ϕ 1 ρ 1 ϕ 2 \begin{aligned} \rho_1 \frac{\phi_1}{1-\phi_2} \\ \rho_2 \phi_1 \rho_1\phi_2 \end{aligned} ρ1​ρ2​​1−ϕ2​ϕ1​​ϕ1​ρ1​ϕ2​​ 同样的方式时乘以 ( x t − k − μ ) , ∀ k ⩾ 3 \left(x_{t-k}-\mu\right), \forall k \geqslant 3 (xt−k​−μ),∀k⩾3, 可得三阶以上包含三阶的自相关系数 ρ k ϕ 1 ρ k − 1 ϕ 2 ρ k − 2 ( k ⩾ 3 ) \rho_k\phi_1 \rho_{k-1}\phi_2 \rho_{k-2}\ \ (k \geqslant 3) ρk​ϕ1​ρk−1​ϕ2​ρk−2​  (k⩾3) 可以看出符合 A R ( 2 ) \mathrm{AR}(\mathrm{2}) AR(2) 模型的时间序列之 自相关系数 会随着阶数的增加而减小但是很多阶数之后仍不等于 0 , 会呈现出所谓 拖尾 的现象。 现在将分析拓展至 A R ( p ) \mathrm{AR}(\mathrm{p}) AR(p) 模型。如果时间序列是平稳的可得 μ ϕ 0 1 − ϕ 1 − ϕ 2 − ⋯ − ϕ p \mu\frac{\phi_0}{1-\phi_1-\phi_2-\cdots-\phi_p} μ1−ϕ1​−ϕ2​−⋯−ϕp​ϕ0​​ 两边减去均值 μ \mu μ 可得 x t − μ ϕ 1 ( x t − 1 − μ ) ϕ 2 ( x t − 2 − μ ) … ϕ p ( x t − p − μ ) ε t x_t-\mu\phi_1\left(x_{t-1}-\mu\right)\phi_2\left(x_{t-2}-\mu\right)\ldots\phi_p\left(x_{t-p}-\mu\right)\varepsilon_t xt​−μϕ1​(xt−1​−μ)ϕ2​(xt−2​−μ)…ϕp​(xt−p​−μ)εt​ 两边分别乘以 ( x t − μ ) \left(x_t-\mu\right) (xt​−μ) 、 ( x t − 1 − μ ) 、 … \left(x_{t-1}-\mu\right) 、 \ldots (xt−1​−μ)、… 并取期望再除以方差 γ 0 \gamma_0 γ0​ 可得 1 ϕ 1 ρ 1 ϕ 2 ρ 2 … ϕ p ρ p ρ 1 ϕ 1 ϕ 2 ρ 1 ϕ 3 ρ 2 ⋯ ϕ p ρ p − 1 ρ 2 ϕ 1 ρ 1 ϕ 2 ϕ 3 ρ 1 ⋯ ϕ p ρ p − 2 ⋮ ρ p ϕ 1 ρ p − 1 ϕ 2 ρ p − 2 ϕ 3 ρ p − 3 ⋯ ϕ p − 1 ρ 1 ϕ p \begin{aligned} 1 \phi_1 \rho_1\phi_2 \rho_2\ldots\phi_p \rho_p \\ \rho_1 \phi_1\phi_2 \rho_1\phi_3 \rho_2\cdots\phi_p \rho_{p-1} \\ \rho_2 \phi_1 \rho_1\phi_2\phi_3 \rho_1\cdots\phi_p \rho_{p-2} \\ \vdots \\ \rho_p \phi_1 \rho_{p-1}\phi_2 \rho_{p-2}\phi_3 \rho_{p-3}\cdots\phi_{p-1}\rho_{1}\phi_p \end{aligned} 1ρ1​ρ2​ρp​​ϕ1​ρ1​ϕ2​ρ2​…ϕp​ρp​ϕ1​ϕ2​ρ1​ϕ3​ρ2​⋯ϕp​ρp−1​ϕ1​ρ1​ϕ2​ϕ3​ρ1​⋯ϕp​ρp−2​⋮ϕ1​ρp−1​ϕ2​ρp−2​ϕ3​ρp−3​⋯ϕp−1​ρ1​ϕp​​ 根据这些线性关系式可以解得 ρ 1 , ρ 2 , … , ρ p \rho_1, \rho_2, \ldots, \rho_p ρ1​,ρ2​,…,ρp​对于大于 p p p 阶的自相关系数 ρ k \rho_k ρk​也有 ρ k ϕ 1 ρ k − 1 ϕ 2 ρ k − 2 … ϕ p ρ k − p \rho_k\phi_1 \rho_{k-1}\phi_2 \rho_{k-2}\ldots\phi_p \rho_{k-p} ρk​ϕ1​ρk−1​ϕ2​ρk−2​…ϕp​ρk−p​ 因此符合 A R ( p ) \mathrm{AR}(\mathrm{p}) AR(p) 模型的平稳时间序列其自相关系数在 p p p 阶之后依然可能不为 0 亦会呈现出所谓 拖尾 的现象。 AR( p p p) 模型的建模步骤 (1) 序列识别 判别序列是否是平稳的。若非平稳的则需对其变换处理使得其平稳比如差分、平滑、变换、分解。判别平稳的序列是否是白噪声的。若白噪声的白噪声序列无法构建ARMA模型则建模结束否则进行下一步。 (2) 模型识别 确定 p p p 的值选择最优的模型。通过平稳序列的偏自相关函数PACF确定 p p p。如果偏自相关函数不是很明显的话可以尝试建立几个备选模型然后根据AIC或BIC指标进行选择一般选择较小的AIC或BIC值。 (3) 模型估计 模型估计即模型的参数估计,查看参数对应的 p p p 值是否显著为0。 (4) 模型诊断 对模型残差序列进行检验确保其服从正态分布的白噪声序列可以看残差的自相关图也可以使用假设检验方法D-W检验、Box-Ljung检验、Ljung-Box检验。当残差序列是白噪声序列时表明序列中信息充分提取到模型中了。 常用平稳化的方法 1差分差分可以去除序列中的趋势和季节性。一阶差分可以去除线性趋势如果还有二次趋势还可以继续二阶差分。二阶差分后还未平稳的话就要注意了继续差分即便最终平稳了但是多次差分后解释力下降且有可能造成过度差分最差为差分后的序列为白噪声后面也没法分析了。对于周期型序列也可以用季节差分的方式去除时间序列季节性。 2平滑对当前序列值减去平滑值得到一个残差序列当平滑结果能比较好的描述原始序列趋势特征的时候残差序列一般是平稳的后续可对残差序列进行建模预测。计算平滑值的方法可以用 简单移动平均、加权移动平均、一次指数平滑、二次指数平滑等。同类思想还可以拟合一个回归方程用回归方程描述原始序列的趋势特征。 3变换如对数变换能够去除方差随时间增长的趋势。对数据进行取log处理变换前的序列必须满足大于0。取对数后原数据越大缩小的幅度越大可以使得方差随时间波动大的时间序列的方差变得更稳定从而一定程度上使得序列平稳。但也不一定变换后即平稳比如呈指数趋势的序列变换后只能将指数趋势转化为线性趋势此时再使用一阶差分即可将序列变得平稳同时变换后的数据可以看成增长率的对数解释性强。其它还有 开根号、Box-Cox变换、Yeo-Johonson变换等。这些变换试图将数据转换为正态分布虽然对于平稳性来说并不总是必要的但通常能够纠正序列的非线性问题。 4分解可以将时间序列分解成3部分长期趋势、季节变动、不规则波动。3种成分相加即加法模型3种成分相乘即乘法模型既加又乘即混合模型。分解目的为去除季节性的影响分解后可对分解出的趋势项、季节项和余项分别进行预测。常用时间序列分解方法有 朴素分解、X11分解、SEATS分解、STL分解等其中STL分解用的较多。 2.2 实证分析 本案例选取沪深300 收盘价close日线数据为研究对象! 读取数据 # 导入包 import numpy as np import pandas as pd import matplotlib.pyplot as plt plt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False import matplotlib %matplotlib inline import warnings warnings.filterwarnings(ignore)df pd.read_csv(000300.csv,index_coltrade_date) df.index pd.to_datetime(df.index) df.head()1模拟AR(1) 过程数据来源于扰动项 ε t \varepsilon_t εt​为正态分布的时间序列np.random.normal import statsmodels.api as sma import scipy.stats as scs# 先定义一个画图函数 def ts_plot(data,lagsNone,title): if not isinstance(data, pd.Series):data pd.Series(data)# matplotlib官方提供了五种不同的图形风格# 包括bmh、ggplot、dark_background、fivethirtyeight和grayscalewith plt.style.context(ggplot):fig plt.figure(figsize(8, 6))layout (3, 2)ts_ax plt.subplot2grid(layout, (0, 0), colspan2)acf_ax plt.subplot2grid(layout, (1, 0))pacf_ax plt.subplot2grid(layout, (1, 1))qq_ax plt.subplot2grid(layout, (2, 0))pp_ax plt.subplot2grid(layout, (2, 1))data.plot(axts_ax)ts_ax.set_title(title时序图)sma.graphics.tsa.plot_acf(data, lagslags, axacf_ax, alpha0.5)acf_ax.set_title(自相关系数)sma.graphics.tsa.plot_pacf(data, lagslags, axpacf_ax, alpha0.5)pacf_ax.set_title(偏自相关系数)sma.qqplot(data, lines, axqq_ax)qq_ax.set_title(QQ 图)scs.probplot(data, sparams(data.mean(),data.std()), plotpp_ax)pp_ax.set_title(PP 图)plt.tight_layout()plt.show()# 模拟AR(1) 过程x_t phi_0 phi_1 * x_{t-1} w_t # 设置随机种子括号里数字无意义只是为了复现需要 np.random.seed(1) # 模拟次数 n 5000 # AR模型的参数 a 0.8 # phi_1 0.8 # 扰动项为正态分布 x w np.random.normal(sizen) for t in range(1,n):x[t] a * x[t-1] w[t] # phi_0 0#画图 ts_plot(x,lags20)结论模拟的 AR(1) 模型是正态的。自相关系数图ACF显示滞后值之间存在显著的序列相关性偏自相关系数图PACF则显示在滞后1期时截尾迅速降为0。 假如模拟的AR(1)模型是正确的那么估计的系数参数将很接近真实的系数0.8选择的阶数也会等于1。 from statsmodels.tsa.ar_model import AutoReg from statsmodels.tsa.ar_model import ar_select_order省略代码详见资源包2利用 AR( p p p) 模型来拟合沪深300的收盘价df.close 省略代码详见资源包3 MA模型 3.1 理论介绍 MA( q q q) 模型与 AR( p p p) 模型非常相似。 不同之处在于MA( q q q) 模型是对过去的白噪声误差项的线性组合而不是过去观测值的线性组合。 MA 模型的动机是可以直接通过拟合误差项的模型来观察误差过程中的 “冲击”。在 AR 模型中通过在一系列过去的观察中使用ACF间接观察到这些冲击。 MA( q q q) 模型认为因变量序列 x t x_t xt​ 与随机冲击项的当前值 ε t \varepsilon_t εt​ 及 q q q 期滞后值 ε t − 1 , ε t − 2 , … \varepsilon_{t-1}, \varepsilon_{t-2}, \ldots εt−1​,εt−2​,…, ε t − q \varepsilon_{t-q} εt−q​ 有关, 而且是随机冲击项的加权平均, 因此被称作移动平均模型。一个 q q q 阶移动平均模型 MA( q q q) 可以用数学表达为: x t μ ε t θ 1 ε t − 1 θ 2 ε t − 2 … θ q ε t − q x_t\mu\varepsilon_t\theta_1 \varepsilon_{t-1}\theta_2 \varepsilon_{t-2}\ldots\theta_q \varepsilon_{t-q} xt​μεt​θ1​εt−1​θ2​εt−2​…θq​εt−q​ 其中 { ε t } \left\{\varepsilon_t\right\} {εt​} 是均值为零、独立、同分布的白噪声序列, 满足 E ( ε t ) 0 ; Var ⁡ ( ε t ) σ ε 2 ; E ( ε t ε s ) 0 , ∀ s ≠ t \mathbb{E}\left(\varepsilon_t\right)0 ; \quad \operatorname{Var}\left(\varepsilon_t\right)\sigma_{\varepsilon}^2 ; \quad \mathbb{E}\left(\varepsilon_t \varepsilon_s\right)0, \forall s \neq t E(εt​)0;Var(εt​)σε2​;E(εt​εs​)0,∀st 由于 MA( q q q) 仅仅是白噪声过程的线性组合, 因此有: E ( x t ) μ , Var ⁡ ( x t ) γ 0 ( 1 θ 1 2 θ 2 2 ⋯ θ q 2 ) σ ε 2 ,  ρ l { 1 , l 0 θ l θ l 1 θ 1 θ l 2 θ 2 … θ q θ q − l 1 θ 1 2 θ 2 2 … θ q 2 , ∀ l 1 , 2 , … , q 0 , ∀ l q \begin{aligned} \mathbb{E}\left(x_t\right)\mu, \\ \operatorname{Var}\left(x_t\right)\gamma_0\left(1\theta_1^2\theta_2^2\dots\theta_q^2\right) \sigma_{\varepsilon}^2 \text {, } \\ \rho_l \begin{cases}1, l0 \\ \frac{\theta_l \ \ \theta_{l1} \ \ \theta_1 \ \ \theta_{l2} \ \ \theta_2 \ \ \dots \ \ \theta_q \ \theta_{q-l}}{1 \ \ {\theta_1}^{2} \ \ {\theta_2}^{2} \ \ \dots \ \ {\theta_q}^{2}}, \forall l1,2, \ldots, q \\ 0, \forall lq\end{cases} \\ \end{aligned} ​E(xt​)μ,Var(xt​)γ0​(1θ12​θ22​⋯θq2​)σε2​, ρl​⎩ ⎨ ⎧​1,1  θ1​2  θ2​2  …  θq​2θl​  θl1​  θ1​  θl2​  θ2​  …  θq​ θq−l​​,0,​l0∀l1,2,…,q∀lq​​ 由以上公式可以得知 MA( q q q) 模型一个很重要的统计性质MA( q q q) 模型自相关系数 q q q 阶截尾。所谓的 q q q 阶截尾是指, 在 q q q 阶以后 MA( q q q) 模型的自相关系数马上截止, q 1 q1 q1 阶起就等于 0 (即上式 γ l 0 , ∀ l q \gamma_l0, \forall lq γl​0,∀lq 所表达的内容)。考虑 AR 模型和 MA 模型自相关系数的性质, 可以根据自相关图ACF, 来初步判断所研究的时间序列大致符合什么类型的模型。 3.2 实证分析 1模拟MA(1) 过程数据来源于包smt.arma_generate_sample 省略代码详见资源包2利用 MA( q q q) 模型来拟合 沪深300 的收盘价df.close 序列识别 省略代码详见资源包模型识别定阶 通过自相关函数ACF可视化定阶根据最小化AIC准则确定 q q q。计算比较耗时为了控制计算量这里限制MA最大阶不超过3。大家可以尝试其它准则定阶比如BIC和HQIC。 省略代码详见资源包模型估计 以MA(3)模型为例 省略代码详见资源包模型诊断 可视化 残差 直方图、QQ图看是否正态分布可视化ACF看是否仍存有自相关性。 残差的白噪声检验Ljung-Box检验。 省略代码详见资源包4 ARMA模型 4.1 理论介绍 AR( p p p) 模型认为时间序列中当期的值与过去 p p p 期的滞后值有关MA( q q q) 模型则用滞后 q q q 期的随机扰动项来解释当期的 x t x_t xt​。不过在金融经济领域中很多变量的值既会与自己过去期的表现有关系又受到过去随机冲击的影响ARMA模型表达的就是这个思想。ARMA模型全称为自回归移动平均Autoregressive Moving AverageARMA模型是研究时间序列的重要方法由AR模型与MA模型混合构成。 ARMA( p p p, q q q)模型的一般表达式为: x t ϕ 0 ϕ 1 x t − 1 ⋯ ϕ p x t − p θ 1 ε t − 1 ⋯ θ q ε t − q ε t . x_t \phi_0 \phi_1 x_{t-1} \dots \phi_p x_{t-p} \theta_1 \varepsilon_{t-1} \dots \theta_q \varepsilon_{t-q} \varepsilon_t. xt​ϕ0​ϕ1​xt−1​⋯ϕp​xt−p​θ1​εt−1​⋯θq​εt−q​εt​. 其中 ε t {\varepsilon_{t}} εt​是零均值、独立、同分布白噪声序列满足 E ( ε t ) 0 ; Var ⁡ ( ε t ) σ ε 2 ; E ( ε t ε s ) 0 , ∀ s ≠ t \mathbb{E}\left(\varepsilon_t\right)0 ; \quad \operatorname{Var}\left(\varepsilon_t\right)\sigma_{\varepsilon}^2 ; \quad \mathbb{E}\left(\varepsilon_t \varepsilon_s\right)0, \forall s \neq t E(εt​)0;Var(εt​)σε2​;E(εt​εs​)0,∀st 很显然相较于 AR( p p p) 和 MA( q q q) 模型 ARMA( p p p, q q q) 更具有普适性 AR( p p p)是 q 0 q0 q0 时的 ARMA( p p p, q q q) 模型, MA( q q q) 模型是当 p 0 p0 p0 时的 ARMA( p p p, q q q) 模型。 从金融的角度理解AR 和 MA 模型的理论意义在于AR( p p p)模型试图捕捉解释交易市场中经常观察到的动量和均值回复效应MA( q q q)模型尝试捕捉解释在白噪声条件下观察到的冲击效应这些冲击效应可以被认为是影响观察过程的意外事件。ARMA模型的弱点在于忽视了大多数金融时间序列中的波动聚集效应。 ARMA( p p p, q q q) 模型的建模过程 (1) 序列识别 判别序列是否是平稳的。若非平稳的则需对其变换处理使得其平稳比如差分、平滑、变换、分解。判别平稳的序列是否是白噪声的。若白噪声的白噪声序列无法构建ARMA模型则建模结束否则进行下一步。 (2) 模型识别 确定 p p p 和 q q q 的值选择最优的模型。通过序列的自相关ACF确定 q q q 和偏自相关函数PACF确定 p p p。如果自相关和偏自相关函数不是很明显的话可以尝试建立几个备选模型然后根据AIC或BIC指标进行选择一般选择较小的AIC或BIC值。 (3) 模型估计 模型估计即模型的参数估计查看参数对应的 p p p 值是否显著为0。 (4) 模型诊断 对模型残差序列进行检验确保其服从正态分布的白噪声序列。当残差序列是白噪声序列时表明序列中信息充分提取到模型中了。 4.2 实证分析 省略代码详见资源包模型检验 可视化 残差 直方图、QQ图看是否正态分布可视化ACF看是否仍存有自相关性。 残差的白噪声检验Ljung-Box检验。 省略代码详见资源包模型评估 利用拟合模型的 predict() 方法对沪深300的收盘价进行预测拟合。 省略代码详见资源包5 ARIMA模型 5.1 理论介绍 ARIMA模型全称是差分移动自回归模型Autoregressive Integrated Moving Average ModelsARIMA是ARMA模型的拓展。 由于现实中很多时间序列不是平稳的但可以通过差分来实现平稳即通过 一阶差分 可以将 非平稳 序列转化为 平稳 序列。 由于前三个模型都有时间序列平稳的假设如果时间序列存在明显的上升或者下降趋势模型预测的效果大大折扣。对于有明显下降或者上升趋势的数据集可以使用差分的方式将其转化为平稳序列然后使用ARMA模型进行拟合。 假设模型经过 d d d 次差分通过了时间序列平稳的检验ARMA的系数为 p p p 和 q q q则 ARIMA 模型为 ARIMA( p p p, d d d, q q q。 5.2 实证分析 由于沪深300收盘价序列经过一阶差分后为平稳时间序列。因此, ARIMA( p p p, d d d, q q q模型即为ARIMA( p p p,1, q q q特别提醒是模型中研究对象为沪深300的收盘价序列df.close! 省略代码详见资源包6. 结束语 本文主要以沪深300指数收盘价数据为例简要介绍了时间序列四大经典模型的基本原理和Python实证分析。不难发现这些模型在拟合和预测沪深300指数收盘价上样本内拟合效果还不错但样本外效果不是很好读者可以结合资源包代码自己尝试。 实际上这些模型有一个潜在假设是干扰项的方差是固定不变的但是研究者发现金融数据如股票收益率大都存在异方差现象因此传统的时间序列模型无法获得可靠的估计结果。 为了解决金融资产收益率序列波动聚集的难题学者们提出了 ARCH、GARCH 以及 协整模型接下来将会对这些模型进行详细介绍并给出相应的Python实证分析。 7. 参考资料 蔡立耑. 量化投资以Python为工具[M]. 北京电子工业出版社2017.PyQuant. 量化投资基础[M]. 北京科学出版社2024. 8. 资源包下载 链接https://pan.baidu.com/s/1oSH2088fgDMAo-keiwCbSA提取码1234 写作不易切勿白剽点赞关注最大鼓励持续更新未完待续…
http://www.w-s-a.com/news/779629/

相关文章:

  • 可信赖的邵阳网站建设德清做网站
  • 上传文件网站根目录wordpress博客管理
  • 网站seo优缺点网站建设公司咨
  • 网站设计需要会什么建设网站的目的以及意义
  • 怎么样推广自己的网站wordpress register_form
  • 网站公司建站凤翔网站建设
  • 网站建设协低价格的网站建设公司
  • 研发网站建设报价深圳网站建设前十名
  • 宠物发布网站模板wordpress中文免费电商模板
  • 济南做网站创意服装品牌策划公司
  • 本地电脑做视频网站 外网连接不上软件商城源码
  • 足球直播网站怎么做crm系统介绍
  • 株洲网站建设联系方式东莞凤岗网站制作
  • 小纯洁网站开发如何注册域名
  • 网上做试卷的网站如何把刚做的网站被百度抓取到
  • 滕州网站建wordpress用户中心按钮不弹出
  • 清远新闻最新消息福建seo搜索引擎优化
  • 凡客建站网微信网站怎么做的
  • 网站建设费怎么写会计科目行业网站建设公司
  • 网站里的友情链接网站建设个人简历的网页
  • 佛山自助建站软件湖南seo优化推荐
  • 免费微信微网站模板下载不了优化人员配置
  • wordpress 导航网站主题画流程图的网站
  • 皮卡剧网站怎样做排名网
  • 网站开发 兼职哪个网站是做安全教育
  • 商品展示类网站怎么用群晖nas做网站
  • 长腿蜘蛛wordpresssem优化推广
  • 中国铁路建设监理协会官方网站深圳福田区怎么样
  • 互联网网站开发发展wordpress文章自定义栏目
  • 众筹网站平台建设工信部网站备案系统