Mô phỏng mô hình random walk có xu thế (drift)
Một random walk (RW) không nhất thiết dao động quanh mốc 0; nó có thể đi lên hoặc đi xuống theo thời gian, tức là có xu thế (drift) hay xu hướng theo thời gian. Điều này được thực hiện bằng cách thêm hằng số chặn (intercept) vào mô hình RW, tương ứng với độ dốc của xu hướng thời gian của RW.
Một cách diễn đạt khác: bạn có thể lấy tổng tích lũy của một chuỗi white noise (WN) có kỳ vọng không đổi; khi đó, giá trị kỳ vọng tương ứng với độ dốc của xu hướng thời gian trong RW.
Để mô phỏng dữ liệu từ mô hình RW có drift, bạn tiếp tục dùng hàm arima.sim() với đối số model = list(order = c(0, 1, 0)). Lần này, bạn cần thêm đối số mean = ... để chỉ định biến drift, hay chính là hằng số chặn.
Bài tập này là một phần của khóa học
Phân tích chuỗi thời gian bằng R
Hướng dẫn bài tập
- Dùng
arima.sim()để tạo thêm một mô hình RW. Đặt đối sốmodelbằnglist(order = c(0, 1, 0))để tạo mô hình kiểu RW và đặtnbằng100để sinh 100 quan sát. Đặt đối sốmeanbằng1để tạo drift. Lưu vàorw_drift. - Dùng
ts.plot()để vẽ dữ liệurw_driftcủa bạn. - Dùng
diff()để tính sai phân bậc nhất của dữ liệurw_drift. Lưu kết quả vàorw_drift_diff. - Gọi
ts.plot()lần nữa để vẽrw_drift_diff.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Generate a RW model with a drift uing arima.sim
rw_drift <- arima.sim(model = ___, n = ___, mean = ___)
# Plot rw_drift
# Calculate the first difference series
rw_drift_diff <-
# Plot rw_drift_diff