Dự báo lãi suất
Giờ bạn sẽ áp dụng các kỹ thuật dự báo đã học ở bài trước vào dữ liệu thực thay vì dữ liệu mô phỏng. Bạn sẽ quay lại một tập dữ liệu từ chương đầu tiên: dữ liệu hằng năm của lãi suất trái phiếu kỳ hạn 10 năm trong 56 năm, nằm trong Series tên là interest_rate_data. Khả năng dự báo lãi suất cực kỳ quan trọng, không chỉ với nhà đầu tư trái phiếu mà còn với cá nhân, như những người mua nhà mới cần quyết định giữa thế chấp lãi suất cố định và thả nổi.
Ở chương đầu, bạn đã thấy lãi suất có xu hướng hồi quy về trung bình trong dài hạn. Nói cách khác, khi lãi suất cao, chúng có xu hướng giảm; khi lãi suất thấp, chúng có xu hướng tăng theo thời gian. Hiện tại lãi suất đang thấp hơn mức dài hạn, nên được kỳ vọng sẽ tăng, nhưng một mô hình AR giúp định lượng chúng được kỳ vọng tăng bao nhiêu.
Lớp ARIMA và hàm plot_predict đã được nhập sẵ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 với Python
Hướng dẫn bài tập
- Tạo một thể hiện của lớp
ARIMAđặt tên làmoddùng dữ liệu lãi suất hằng năm và chọnordercho mô hình AR(1). - Fit mô hình
modbằng phương thức.fit()và lưu kết quả vào đối tượng kết quả tênres. - Vẽ dữ liệu cùng các dự báo trong mẫu và ngoài mẫu bằng hàm
.plot_predict().- Đối số đầu tiên của
plot_predict()phải là mô hình đã fit. - Truyền các đối số
start=0để bắt đầu dự báo trong mẫu từ đầu, và chọnendlà '2027' để dự báo vài năm trong tương lai. - Lưu ý đối số
endlà 2027 phải đặt trong dấu nháy vì đây là một ngày tháng, không phải vị trí chỉ số dạng số nguyên.
- Đối số đầu tiên của
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.
# Forecast interst rates using an AR(1) model
mod = ARIMA(interest_rate_data, order=___)
res = mod.fit()
# Plot the data and the forecast
fig, ax = plt.subplots()
interest_rate_data.plot(ax=ax)
plot_predict(___, start=___, end=___, alpha=None, ax=ax)
plt.show()