Science for Economics.

[Dữ liệu chuỗi thời gian] MÔ HÌNH AR, MA VÀ ARIMA (Phần 1)
Cover Image for [Dữ liệu chuỗi thời gian] MÔ HÌNH AR, MA VÀ ARIMA (Phần 1)
Phạm Huy Du
Phạm Huy Du
Ngày viết:
STATA

Bạn có bao giờ tự hỏi làm thế nào để dự đoán giá cổ phiếu trong tương lai, xu hướng tiêu dùng trong tháng tới, hay lượng mưa trong mùa sắp tới? Chuỗi thời gian - tập dữ liệu ghi lại các giá trị theo thời gian - đóng vai trò then chốt trong việc giải quyết những bài toán dự đoán này.

Trong bài viết này, SciEco sẽ giới thiệu ba mô hình thống kê phổ biến cho chuỗi thời gian: AR(p) (Autoregressive), MA(q) (Moving Average) và ARIMA(p,d,q) (Autoregressive Integrated Moving Average). Chúng ta sẽ cùng khám phá cách thức hoạt động, ưu điểm và nhược điểm của từng mô hình trong phần 1 này, cũng như ứng dụng thực tế của chúng trong nhiều lĩnh vực khác nhau tại bài viết tiếp theo.

1. MỘT SỐ LÝ THUYẾT CƠ BẢN

1.1. Mô hình tự hồi quy tổng quát (Autoregressive) – AR(p)

Một chuỗi thời gian được gọi là tuân theo mô hình tự hồi quy bậc p, hay AR(p), nếu:

yt=β+ϕ1yt1+ϕ2yt2++ϕpytp+ut(1)y_t = \beta + \phi_1y_{t-1} + \phi_2y_{t-2} + \ldots + \phi_py_{t-p} + u_t \quad (1)

trong đó, utu_t là nhiễu trắng thỏa mãn đồng thời ba điều kiện sau:

  • E[ut]=0E[u_t] = 0 (Trung bình của sai số bằng 0)
  • Var[ut]=E[ut2]=σ2Var [u_t] = E[{u_t}^2] = \sigma^2 (Phương sai của sai số cố định)
  • Cov[utus]=E[utus]=0(ts)Cov[{u_t}{u_s}] = E[{u_t}{u_s}] = 0 (t \neq s)Hiệp phương sai với các giá trị tại thời kỳ khác t bằng 0)

\Rightarrow Mô hình AR(p) hàm ý hành vi của phụ thuộc chủ yếu vào hành vi trong quá khứ của chính nó cho tới p thời kỳ trước đó.

***Điều kiện dừng

Điều kiện để chuỗi tuân theo AR(p) trong phương trình (1) có tính dừng là phương trình đặc trưng 1ϕ1zϕ2z2ϕpzp=01 - \phi_1z - \phi_2z^2 - \ldots - \phi_pz^p = 0 , hay 1i=1pϕizi=01 - \sum_{i=1}^{p} \phi_i z^i = 0, của nó có tất cả các nghiệm z thỏa mãn zi>1 |z_i| > 1.

\Rightarrow Điều kiện cần, nhưng chưa đủ, là i=1pϕi<1\sum_{i=1}^{p} \phi_i <1.

***Lựa chọn độ trễ hợp lý p*

Để có thể xác định được độ trễ tối ưu, hai nhà thống kê George Box và Gwilym Jenkins (1976) đã xây dựng nên phương pháp Box-Jenkins.

Phương pháp Box-Jenkins giúp xác định lựa chọn độ trễ hợp lý p* cho mô hình AR thông qua việc xem xét hàm tự tương quan (Autocorrelation Function – ACF) và hàm tương quan riêng (Partial Autocorrelation Function – PACF):

  • Đồ thị ACF của mọi mô hình AR(p) dừng đều tiến về 0 khi kk \rightarrow \infty
  • Đồ thị PACF của mô hình AR(p) sẽ đột ngột cắt đứt/bằng 0 kể từ sau độ trễ p

\Rightarrow Chúng ta sẽ dựa vào đồ thị PACF để xác định độ trễ p phù hợp (Nếu đồ thị PACF đột ngột cắt đứt kể từ sau độ trễ p → p là độ trễ tối ưu cho mô hình AR(p)).

1.2. Mô hình trung bình trượt tổng quát (Moving Average) – MA(q)

Một chuỗi thời gian được gọi là tuân theo mô hình trung bình trượt bậc q, hay MA(q), nếu:

yt=ut+θ1ut1+θ2ut2++θqutq(2)y_t = u_t + \theta_1u_{t-1} + \theta_2u_{t-2} + \ldots + \theta_qu_{t-q} \quad (2)

trong đó, utu_t là nhiễu trắng thỏa mãn điều kiện sau:

  • E[ut]=0E[u_t] = 0 (Trung bình của sai số bằng 0)
  • Var[ut]=E[ut2]=σ2Var[u_t] = E[{u_t}^2] = \sigma^2 (Phương sai của sai số cố định)

\Rightarrow Mô hình MA(q) hàm ý hành vi của phụ thuộc chủ yếu vào các yếu tố shock ngẫu nhiên trong thời điểm hiện tại và thời kỳ q trước đó.

***Lựa chọn độ trễ hợp lý q*

Để có thể xác định được độ trễ tối ưu, ta cũng dựa vào việc xem xét hàm tự tương quan (Autocorrelation Function – ACF) và hàm tương quan riêng (Partial Autocorrelation Function – PACF). Cụ thể:

  • Đồ thị PACF của mọi mô hình MA(q) dừng đều tiến về 0 khi kk \rightarrow \infty
  • Đồ thị ACF của mô hình MA(q) sẽ đột ngột cắt đứt/bằng 0 kể từ sau độ trễ q

\Rightarrow Chúng ta sẽ dựa vào đồ thị ACF để xác định độ trễ q phù hợp (Nếu đồ thị ACF đột ngột cắt đứt kể từ sau độ trễ q → q là độ trễ tối ưu cho mô hình MA(q)).

1.3. Mô hình tự hồi quy trung bình trượt (Autoregressive Moving Average) - ARMA(p,q)

Mô hình ARMA(p,q) là sự kết hợp của mô hình AR(p) với MA(q). Do vậy, một chuỗi thời gian bất kì được gọi là tuân theo mô hình ARMA(p,q) nếu:

yt=β+ϕ1yt1+ϕ2yt2++ϕpytp+ut+θ1ut1+θ2ut2++θqutq(3)y_t = \beta + \phi_1y_{t-1} + \phi_2y_{t-2} + \ldots + \phi_py_{t-p} + u_t + \theta_1u_{t-1} + \theta_2u_{t-2} + \ldots + \theta_qu_{t-q} \quad (3)

trong đó, utu_t là nhiễu trắng thỏa mãn điều kiện sau:

  • E[ut]=0E[u_t] = 0 (Trung bình của sai số bằng 0)
  • Var[ut]=E[ut2]=σ2Var[u_t] = E[{u_t}^2] = \sigma^2 (Phương sai của sai số cố định)

***Lựa chọn độ trễ hợp lý p* và q*

Mô hình ARMA(p,q) là sự kết hợp của mô hình AR(p) với MA(q). Vì vậy, các hàm ACF và PACF của ARMA(p,q) sẽ mang đặc điểm của ACF và PACF trong các mô hình AR(p) và MA(q). Cụ thể:

  1. Đồ thị ACF của mọi mô hình ARMA(p,q) sẽ đột ngột cắt đứt/bằng 0 kể từ sau độ trễ q
  2. Đồ thị PACF của mô hình ARMA(p,q) sẽ đột ngột cắt đứt/bằng 0 kể từ sau độ trễ p

\Rightarrow Chúng ta sẽ dựa vào đồ thị ACF và PACF để xác định độ trễ q và p phù hợp (Nếu đồ thị ACF đột ngột cắt đứt kể từ sau độ trễ q → q là độ trễ tối ưu cho mô hình ARMA(p,q); còn nếu đồ thị PACF đột ngột cắt đứt kể từ sau độ trễ p → p là độ trễ tối ưu cho mô hình ARMA(p,q)).

1.4. Mô hình ARIMA(p,d,q) (Autoregressive Intergrated Moving Average)

Để có thể sử dụng được các mô hình AR, MA và ARMA, chuỗi phải được đảm bảo là chuỗi dừng. Tuy nhiên, trong thực tế, hầu hết các chuỗi đều tăng hoặc giảm theo thời gian. Việc biến đổi sang chuỗi dừng sẽ loại bỏ các nhân tố ảnh hưởng thời gian và chuỗi sẽ dễ dự báo hơn. Để tạo thành chuỗi dừng, một phương pháp đơn giản nhất là chúng ta sẽ lấy sai phân. Bậc của sai phân để tạo thành chuỗi dừng còn được gọi là bậc của quá trình đồng tích hợp (order of intergration). Quá trình sai phân bậc d của chuỗi được thực hiện như sau:

  • Sai phân bậc 1: I(1)=Δ(yt)=ytyt1I(1) = \Delta(y_t) = y_t - y_{t-1}
  • Sai phân bậc d: I(d)=Δd(yt)=Δ(Δ(Δ(yt)))dla^ˋnI(d) = \Delta^d (y_t) = \underbrace{\Delta(\Delta(…\Delta(y_t)))}_{d lần}

Thông thường chuỗi sẽ dừng sau quá trình đồng tích hợp I(0)I(0) hoặc I(1)I(1) . Rất ít chuỗi chúng ta phải lấy tới sai phân bậc 2. Một số trường hợp chúng ta sẽ cần biến đổi logarit hoặc căn bậc 2 để tạo thành chuỗi dừng.

Kết hợp các yếu tố trên, một chuỗi thời gian được gọi là tuân theo mô hình ARIMA(p,d,q) nếu:

Δyt=β+(ϕ1Δyt1+ϕ2Δyt2++ϕpΔytp)+(ut+θ1ut1+θ2ut2++θqutq)(4)\Delta y_t = \beta + (\phi_1 \Delta y_{t-1} + \phi_2 \Delta y_{t-2} + \ldots + \phi_p \Delta y_{t-p}) + (u_t + \theta_1 u_{t-1} + \theta_2 u_{t-2} + \ldots + \theta_q u_{t-q}) \tag{4}

trong đó, utu_t vẫn phải được đảm bảo là nhiễu trắng.

\Rightarrow Về tổng quát, ARIMA là mô hình kết hợp của 2 quá trình tự hồi qui và trung bình trượt. Dữ liệu trong quá khứ sẽ được sử dụng để dự báo dữ liệu trong tương lai. Trước khi “huấn luyện” mô hình, cần chuyển hóa chuỗi sang chuỗi dừng bằng cách lấy sai phân bậc 1 hoặc logarit. Ngoài ra mô hình cũng cần tuân thủ điều kiện ngặt về sai số không có hiện tượng tự tương quanphần dư là nhiễu trắng.

Như vậy, SciEco đã cùng các bạn tìm hiểu cách thức hoạt động, ưu điểm và nhược điểm của ba mô hình thống kê phổ biến cho chuỗi thời gian: AR(p) (Autoregressive), MA(q) (Moving Average) và ARIMA(p,d,q) (Autoregressive Integrated Moving Average).

Theo dõi fanpage Science for Economics để biết thêm ứng dụng thực tế của các mô hình này trong nhiều lĩnh vực khác nhau cũng như cách thực hành với công cụ STATA ở bài viết tiếp theo.

Comments:


    Nội dung khác.