เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

มาพยากรณ์อัตราดอกเบี้ยกัน

ในแบบฝึกหัดนี้ จะนำเทคนิคการพยากรณ์ที่เรียนไปในแบบฝึกหัดก่อนหน้ามาใช้กับข้อมูลจริง โดยจะกลับมาใช้ชุดข้อมูลจากบทแรกอีกครั้ง ซึ่งเป็นข้อมูลรายปีของอัตราดอกเบี้ยระยะ 10 ปี ย้อนหลัง 56 ปี เก็บอยู่ใน Series ชื่อ interest_rate_data ความสามารถในการพยากรณ์อัตราดอกเบี้ยมีความสำคัญอย่างมาก ไม่เพียงแต่สำหรับนักลงทุนตราสารหนี้เท่านั้น แต่ยังสำคัญสำหรับบุคคลทั่วไป เช่น เจ้าของบ้านใหม่ที่ต้องตัดสินใจเลือกระหว่างสินเชื่อดอกเบี้ยคงที่และดอกเบี้ยลอยตัว

ในบทแรก เห็นได้ว่าอัตราดอกเบี้ยมีแนวโน้มกลับสู่ค่าเฉลี่ยในระยะยาว กล่าวคือ เมื่ออัตราดอกเบี้ยสูง มักจะปรับลดลงตามเวลา และเมื่ออัตราดอกเบี้ยต่ำ มักจะปรับสูงขึ้น ปัจจุบันอัตราดอกเบี้ยอยู่ต่ำกว่าระดับระยะยาว จึงคาดว่าจะปรับตัวสูงขึ้น ซึ่งโมเดล AR จะช่วยวัดปริมาณการเพิ่มขึ้นที่คาดไว้ได้

คลาส ARIMA และฟังก์ชัน plot_predict ได้ถูก import มาให้เรียบร้อยแล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การวิเคราะห์อนุกรมเวลาด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • สร้าง instance ของคลาส ARIMA ชื่อ mod โดยใช้ข้อมูลอัตราดอกเบี้ยรายปี และกำหนด order สำหรับโมเดล AR(1)
  • Fit โมเดล mod ด้วย method .fit() แล้วบันทึกผลลัพธ์ไว้ในออบเจกต์ชื่อ res
  • พล็อตข้อมูลพร้อมกับการพยากรณ์ทั้ง in-sample และ out-of-sample โดยใช้ฟังก์ชัน .plot_predict()
    • argument แรกของ plot_predict() ควรเป็นโมเดลที่ fit แล้ว
    • ส่ง argument start=0 เพื่อเริ่มการพยากรณ์ in-sample จากจุดเริ่มต้น และกำหนด end เป็น '2027' เพื่อพยากรณ์ไปอีกหลายปีข้างหน้า
    • โปรดสังเกตว่า argument end ที่เป็น 2027 ต้องอยู่ในเครื่องหมายคำพูด เนื่องจากแทนวันที่ ไม่ใช่ตำแหน่งจำนวนเต็ม

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# 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()
แก้ไขและรันโค้ด