1. 程式人生 > >計量經濟學導論10:ARIMA模型

計量經濟學導論10:ARIMA模型

[toc] # ${\rm ARIMA}$ 模型 ## 滯後運算元 在這一節中,我們主要介紹時間序列分析中的幾類經典的時間序列模型。為了簡化模型設定,我們需要引入滯後運算元的概念。 滯後運算元的定義非常容易理解,滿足以下性質: - $\mathscr{B}X_t=X_{t-1}$ ; - $\mathscr{B}^2X_t=\mathscr{B}(\mathscr{B}X_t)=\mathscr{B}(X_{t-1})=X_{t-2}$ ; 即稱 $\mathscr{B}$ 為時間 $t$ 的向後推移運算元或滯後運算元。 引入滯後運算元之後,我們可以定義滯後運算元多項式如下: - $m$ 階滯後運算元多項式: $$ B(\mathscr{B})=b_0+b_1\mathscr{B}+b_2\mathscr{B}^2+\cdots+b_m\mathscr{B}^m=\sum_{i=0}^mb_i\mathscr{B}^i \ . $$ - 無窮階滯後運算元多項式: $$ B(\mathscr{B})=b_0+b_1\mathscr{B}+b_2\mathscr{B}^2+\cdots=\sum_{i=0}^\infty b_i\mathscr{B}^i \ . $$ - 特別地,若 $|\varphi|<1$ ,根據 Taylor 級數計算公式有: $$ \frac{1}{1-\varphi\mathscr{B}}=1+\varphi\mathscr{B}+\varphi^2\mathscr{B}^2+\varphi^3\mathscr{B}^3+... \ . $$ 在滯後運算元的基礎上,我們可以逐一討論時間序列模型。 ## ${\rm MA}(q)$ 模型 首先我們討論滑動平均模型的性質,滯後階數為 $q$ 的滑動平均模型簡稱為 ${\rm MA}(q)$ 模型。在計量經濟學所研究的時間序列模型中,一般滯後階數不會很高,所以我們先從 ${\rm MA}(1)$ 模型開始討論,其性質更為重要也更便於討論。 ### ${\rm MA}(1)$ 模型 一般地, ${\rm MA}(1)$ 模型的模型設定
如下: $$ y_t=u_t+\theta u_{t-1} \ , $$ $$ u_t\sim{\rm WN}(0,\,\sigma^2) \ . $$ 其中,$\{u_t\}$ 是白噪聲序列。滿足上述模型設定的序列 $\{y_t\}$ 稱為 ${\rm MA}(1)$ 序列。 首先,我們討論 ${\rm MA}(1)$ 序列的平穩性,通過計算我們可以得到 $\{y_t\}$ 序列具有如下性質: - ${\rm E}(y_t)=0$ ; - ${\rm Var}(y_t)=(1+\theta^2)\sigma^2$ ; - $\gamma(k)={\rm Cov}(y_t,\,y_{t+k})={\rm E}[(u_t+\theta u_{t-1})(u_{t+k}+\theta u_{t+k-1})]= \left\{ \begin{array}{lll} \theta\sigma^2 &, & k=1\\ 0 &,& k\geq2 \end{array} \right.$ . 因此,${\rm MA}(1)$ 序列是一個平穩時間序列。可以看出, ${\rm MA}(1)$ 序列的自協方差函式是 $1$ 步截尾的。根據已經計算得到的自協方差函式,可以計算自相關函式 ACF : $$ \rho(k)=\frac{\gamma(k)}{\gamma(0)}= \left\{ \begin{array}{lll} \dfrac{\theta}{1+\theta^2} &, & k=1\\ 0 &,& {\rm otherwise} \end{array} \right. \ . $$ 可以看出 ${\rm MA}(1)$ 序列的 ACF 也是 $1$ 步截尾的。 對於 ${\rm MA}(1)$ 序列,如果 $|\theta|<1$ ,稱 $\{y_t\}$ 為可逆的 ${\rm MA}(1)$ 序列。下面我們利用滯後運算元的推導方式來討論 ${\rm MA}(1)$ 序列的可逆性質
。 >可以用滯後運算元表示 ${\rm MA}(1)$ 序列並進行“逆變換” >$$ >y_t=(1+\theta\mathscr{B})u_t \ , >$$ > >$$ >\dfrac{y_t}{1+\theta\mathscr{B}}=u_t \ , >$$ > >$$ >y_t=u_t-(-\theta)y_{t-1}-(-\theta)^2y_{t-2}-\cdots \ . >$$ > >以上過程被稱為 ${\rm MA}(1)$ 序列的無限自迴歸表示。 上面的最後一個式子說明對於可逆的 ${\rm MA}$ 模型,可以利用 ${\rm AR}(\infty)$ 模型來建模。 最後我們來討論 ${\rm MA}(1)$ 序列的偏相關函式 PACF 。仍然是利用自迴歸的方式求解樣本偏相關函式。根據可逆性質和無限自迴歸表示,我們可以得到: - $y_t=\beta_0+\beta_1y_{t-1}+\varepsilon_t$ , - $p(1)=\hat\beta_1\approx\theta$ . - $y_t=\beta_0+\beta_1y_{t-1}+\cdots+\beta_ky_{t-k}+\varepsilon_t$ , - $p(k)=\hat\beta_k\approx(-1)^{k+1}\theta^k$ . 在可逆性條件下 $|\theta|<1$ ,因此 PACF 隨 $k$ 逐漸收斂至 $0$ ,表現為拖尾。影象中可表現為 - 若 $\theta>0$ 則 PACF 上下襬動收斂於 $0$ ; - 若 $\theta<0$ 則 PACF 恆為負並遞增收斂於 $0$ 。 ### ${\rm MA}(q)$ 模型 接下來我們將滑動平均模型推廣至一般情況, ${\rm MA}(q)$ 模型的模型設定如下: $$ y_t=u_t+\theta_1u_{t-1}+\theta_2u_{t-2}+\cdots+\theta_qu_{t-q} \ , $$ $$ u_t\sim{\rm WN}(0,\,\sigma^2) \ . $$ 其中,$\{u_t\}$ 是白噪聲序列。滿足上述模型設定的序列 $\{y_t\}$ 稱為 ${\rm MA}(q)$ 序列。 首先討論 ${\rm MA}(q)$ 序列的平穩性: - ${\rm E}(y_t)=0$ ; - ${\rm Var}(y_t)=(1+\theta_1^2+\cdots+\theta_q^2)\sigma^2$ ; - 自協方差函式: $$ \gamma(k)={\rm Cov}(y_t,\,y_{t+k})= \left\{ \begin{array}{lll} (\theta_1+\theta_2\theta_1+...+\theta_q\theta_{q-1})\sigma^2 &, & k=1 \\ \cdots && \\ (\theta_{q-1}+\theta_q\theta_1)\sigma^2 &,& k=q-1\\ \theta_q\sigma^2&,&k=q \\ 0 &,& k>q \end{array} \right. $$ 因此 ${\rm MA}(q)$ 序列是一個平穩時間序列。由於這裡的 $q$ 是有限階數,因此也稱有限 ${\rm MA}(q)$ 序列。有根據自協方差函式,我們可以知道 ${\rm MA}(q)$ 序列的自協方差函式和自相關函式都是 $q$ 後截尾的。 同樣的 ${\rm MA}(q)$ 序列也具有可逆性,其充要條件為:有限 ${\rm MA}(q)$ 序列是可逆的當且僅當特徵多項式 $\Theta(z)$ 的根均在單位圓外: $$ \Theta(z)=\sum_{i=0}^q\theta_iz^i\neq0\ , \ \ \ \ |z|\leq1 \ . $$ 根據 ${\rm MA}(q)$ 序列的自相關函式的結尾性質,我們可以通過計算 ACF 來定階。 ## ${\rm AR}(p)$ 模型 接下來我們討論自迴歸模型,簡稱為 ${\rm AR}$ 模型。我們先來看簡單的情況。 ### ${\rm AR}(1)$ 模型 一般地, ${\rm AR}(1)$ 模型的模型設定
如下: $$ y_t=\phi y_{t-1+}\varepsilon_t \ , $$ $$ \varepsilon_t\sim{\rm WN}(0,\,\sigma^2) \ . $$ 其中,$\{\varepsilon_t\}$ 是白噪聲序列。滿足上述模型設定的序列 $\{y_t\}$ 稱為 ${\rm AR}(1)$ 序列。容易計算得到 $y_t$ 的期望和方差如下: - ${\rm E}(y_t)=0$ ; - ${\rm Var}(y_t)=\dfrac{\sigma^2}{1-\phi^2}$ . 為了得到自協方差函式,我們對 ${\rm AR}(1)$ 模型的兩邊同時乘一個 $y_{t-k}$ : $$ y_ty_{t-k}=\phi y_{t-1}y_{t-k}+\varepsilon_ty_{t-k} \ , $$ 對 $k\geq1$ ,兩邊同時取數學期望: $$ {\rm E}(y_ty_{t-k})=\phi {\rm E}(y_{t-1}y_{t-k})+{\rm E}(\varepsilon_ty_{t-k}) \ , $$ 得到下面重要的式子 **Yule-Walker 方程** : $$ \gamma(k)=\phi\gamma(k-1) \ . $$ 這是一個遞迴方程,如果我們已知初值條件 $\gamma(0)$ ,我們就可以利用 Y-W 方程計算出全體自協方差函式序列。下面推導如何計算 $\gamma(0)$ : 對 ${\rm AR}(1)$ 模型的兩邊同時乘一個 $y_{t}$ 並取數學期望 $$ {\rm E}(y_t^2)=\phi {\rm E}(y_ty_{t-1})+{\rm E}(\varepsilon_ty_t)=\phi {\rm E}(y_ty_{t-1})+\phi {\rm E}(\varepsilon_ty_{t-1})+{\rm E}(\varepsilon_t^2) \ . $$ $$ \gamma(0)=\phi\gamma(1)+\sigma^2 \ . $$ 對 Y-W 方程取 $k=1$ 得 $$ \gamma(1)=\phi\gamma(0) \ . $$ 兩個方程聯立解得: $$ \gamma(0)=\frac{\sigma^2}{1-\phi^2} \ . $$ 這也是 ${\rm AR}(1)$ 序列的方差。 利用 Y-W 方程和初值條件,我們可以得到一般的自協方差函式: $$ \gamma(k)=\phi^k\frac{\sigma^2}{1-\phi^2} \ , $$ 可以看出 ${\rm AR}(1)$ 序列是平穩序列。但為保證自協方差存在,需要滿足平穩性條件: $|\phi|<1$ 。 進而我們可以得到自相關函式: $$ \rho(k)=\phi^k \ . $$ 注意到 ${\rm AR}(1)$ 序列的 ACF 是一個逐漸收斂到 $0$ 的序列,表現為拖尾。如果 $\phi>0$ 則 $\rho(k)$ 遞減趨近於 $0$ ,如果 $\phi<0$ 則 $\rho(k)$ 上下振盪衰減至 $0$ 。 繼續討論偏相關函式,不難發現 ${\rm AR}(1)$ 序列的 PACF 是 $1$ 步截尾的 $$ p(k)= \left\{ \begin{array}{lll} \phi &, & k=1\\ 0 &,& k\geq1 \end{array} \right. \ . $$ PACF 只是一個連續的總體自迴歸序列中的最後一期滯後項的自迴歸係數。如果真實過程實際上是 ${\rm AR}(1)$ ,則 $p(1)$ 就是自迴歸係數 $\phi$ ,所有較長滯後的係數均為零。 ### ${\rm AR}(p)$ 模型 將自迴歸模型推廣至一般情況, ${\rm AR}(p)$ 模型的模型設定如下: $$ y_t=\phi_1y_{t-1}+\phi_2y_{t-2}+...+\phi_py_{t-p}+\varepsilon_t \ , $$ $$ \varepsilon_t\sim{\rm WN}(0,\,\sigma^2) \ . $$ 使用滯後運算元多項式可以表示為: $$ (1-\phi_1\mathscr{B}-\phi_2\mathscr{B}^2-...-\phi_p\mathscr{B}^p)y_t=\varepsilon_t \ . $$ 其中,$\{\varepsilon_t\}$ 是白噪聲序列。滿足上述模型設定的序列 $\{y_t\}$ 稱為 ${\rm AR}(p)$ 序列。 類似於 ${\rm AR}(1)$ 序列的性質,一個 ${\rm AR}(p)$ 序列是自協方差平穩的的當且僅當其滯後運算元多項式 $\Phi(z)$ 的根都在單位圓的外部。在滿足平穩性的條件下, ${\rm AR}(p)$ 模型的解可以寫為: $$ y_t=\frac{1}{\Phi(\mathscr{B})}\varepsilon_t $$ 同樣的, ${\rm AR}(p)$ 序列的偏相關函式具有 $p$ 步截尾性,因此可以通過計算 PACF 為 ${\rm AR}(p)$ 模型定階。 ## ${\rm ARMA}(p,\,q)$ 模型 關於滑動平均自迴歸模型我們只做簡單的介紹。詳細的內容需要參考課程《時間序列分析》。 ### ${\rm ARMA}(1,\,1)$ 模型 先從簡單的開始, ${\rm ARMA}(1,\,1)$ 模型的模型設定如下: $$ y_t=\phi y_{t-1}+\varepsilon_t+\theta\varepsilon_{t-1} \ , $$ $$ \varepsilon_t\sim{\rm WN}(0,\,\sigma^2) \ . $$ 用滯後運算元表示的形式為: $$ (1-\phi\mathscr{B})y_t=(1+\theta\mathscr{B})\varepsilon_t \ . $$ 當 $|\phi|<1$ 時 ${\rm ARMA}(1,\,1)$ 序列是平穩的,當 $|\theta|<1$ 時 ${\rm ARMA}(1,\,1)$ 序列是可逆的。 ### ${\rm ARMA}(p,\,q)$ 模型 一般地, ${\rm ARMA}(p,\,q)$ 模型的模型設定如下: $$ y_t=\phi_1y_{t-1}+\phi_2y_{t-2}+...+\phi_py_{t-p}+\varepsilon_t+\theta_1\varepsilon_{t-1}+\theta_2\varepsilon_{t-2}+...+\theta_q\varepsilon_{t-q} \ , $$ $$ \varepsilon_t\sim{\rm WN}(0,\,\sigma^2) \ . $$ 滯後運算元形式: $$ \Phi(\mathscr{B})y_t=\Theta(\mathscr{B})\varepsilon_t \ , $$ $$ \Phi(z)=1-\phi_1z-...-\phi_pz^p \ , $$ $$ \Theta(z)=1+\theta_1z+...+\theta_qz^q \ . $$ 對於一個 ${\rm ARMA}(p,\,q)$ 序列: 當 $\Phi(z)$ 的所有根都在單位圓外時,該序列是平穩的: $$ y_t=\frac{\Theta(\mathscr{B})}{\Phi(\mathscr{B})}\varepsilon_t $$ 當 $\Theta(z)$ 的所有根都在單位圓外時,該序列是可逆的。 $$ \frac{\Phi(\mathscr{B})}{\Theta(\mathscr{B})}y_t=\varepsilon_t $$ 此外,${\rm ARMA}(p,\,q)$ 模型的 ACF 和 PACF 都是拖尾的,即逐漸收斂到 $0$ 的。 那麼我們面臨一個問題:如何選擇 ${\rm ARMA}(p,\,q)$ 模型的滯後階數以更好的擬合數據。 在利用迴歸進行引數估計時,增加滯後期數 $p$ 或 $q$ 可以減少殘差平方和,但是增加滯後期數也會造成自由度的損失。因此我們需要模型選擇的方式。 ## 模型的選擇 在介紹完五種常見的時間序列模型之後,我們來討論一下如果根據樣本資料的特徵來選擇我們需要擬合的模型。我們可以根據 ACF 圖和 PACF 圖來初步判斷模型: | | ${\rm AR}(p)$ | ${\rm MA}(q)$ | ${\rm ARMA}(p,\,q)$ | | :--: | :-----------: | :-----------: | :-----------------: | | ACF | 拖尾 | $q$ 步截尾 | 拖尾 | | PACF | $p$ 步截尾 | 拖尾 | 拖尾 | 由於 ${\rm ARMA}(p,\,q)$ 模型的 ACF、PACF 均為拖尾,因此無法通過 ACF、PACF 影象判斷 ${\rm ARMA}$ 模型的階數。在實踐中,我們還可以通過資訊準則等進行判斷: 簡單介紹一下 ${\rm AIC}$ 資訊準則: $$ {\rm AIC}(k)=\ln\hat\sigma_k^2+\frac{2k}{n} \ , $$ 其中 $\hat\sigma^2$ 為迴歸模型的殘差平方和 ${\rm SSR}$ 。 函式的前半部分解釋了模型擬合優劣性,我們希望選擇擬合程度好的模型,即方差小的模型;增加自由引數可以提高擬合的優良性,同時可能會出現過度擬合,於是引入後半部分用來懲罰那些複雜的模型。最後選擇 ${\rm AIC}$ 值最小的模型,代表擬合優良性和模型簡潔程度綜合最佳的模型。實際操作過程中,我們以 $p$ 的估計為例:假設模型可取階數的上限為 $p_0$ ,那麼我們只需讓 $k$ 遍歷 $0,1,2,...,p_0$ ,選取 ${\rm AIC}$ 值的最小值點即為 $p$ 的估計。 還有 ${\rm BIC}$(也稱為 ${\rm SIC}$)等資訊準則,不同的資訊準則會對模型的複雜性在不同的角度和強度上進行懲罰。 $$ {\rm BIC}(k)=\ln\hat\sigma_k^2+\frac{k\ln n}{n} \ . $$ ## 弱相依時間序列 當 $h$ 無限增大時,如果 $y_t$ 和 $y_{t+h}$ 是“近乎獨立”的,則這個序列被稱為弱相依的(weakly dependent)。注意這個概念與時間序列是否平穩無關。 在迴歸分析中使用弱相依序列之前不需要對它們做任何操作,可以直接使用 OLS 估計,因為這些序列的平均值滿足大數定律和中心極限定理。 含時間趨勢的時間序列不是平穩序列,但是它是一個弱相依的時間序列。 $$ y_t=\alpha+\beta t+u_t \ , $$ $$ u_t\sim {\rm i.i.d.}\ {\rm WN}(0,\,\sigma_u^2) \ . $$ $$ {\rm E}(y_t)={\rm E}(\alpha+\beta t+u_t)=\alpha+\beta t \ , $$ $$ \gamma_h={\rm Cov}(y_t,\,y_{t+h})={\rm Cov}(u_t,\,u_{t+h})=0 \ . $$ 如果一個序列是弱相依的,而且在除掉了趨勢之後是平穩的,則稱其為趨勢-平穩過程(trend-stationary process)。 ## ${\rm ARIMA}(p,\,d,\,q)$ 模型 這裡我們只簡單介紹一些概念。 對於一個非平穩序列 $\{y_t\}$ 如果經過 $d$ 次差分之後可以變成一個平穩時間序列,即 $y_t\sim {\rm I}(d)$ ,如何建立時間序列模型? 首先利用單位根檢驗找到 $y_t$ 的單整階數 $d$ ,通過 $d$ 次差分變換得到平穩時間序列 $\{\Delta^d y_t\}$ ,對序列 $\{\Delta^d y_t\}$ 建立 ${\rm ARMA}(p,\,q)$ 模型即可。 這樣的模型稱為 ${\rm ARIMA}(p,\,d,\,q)$ 模型。 > 概括一下 ${\rm ARIMA}(p,\,d,\,q)$ 模型的建模一般步驟: > > **step.1** 先確定差分次數 $d$ :對序列進行 ADF 平穩性檢驗,如果非平穩,則對序列進行差分,並再次進行 ADF 平穩性檢驗,直到經過 $d$ 次差分後變成平穩序列,此時 $d$ 即為差分階數。 > > **step.2** 確定 $p$ 和 $q$ ,對差分後的序列建立 ${\rm ARMA}$ 模型,利用 ACF 和 PACF 影象資訊是否截尾和AIC、BIC資訊準則確定最佳的引數 $p$ 和 $q$ 。 > > **step.3** 建模並估計引數,對迴歸後的殘差序列進行白噪聲的 $Q$