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

จำลองอนุกรม ARCH และ GARCH

ในแบบฝึกหัดนี้ จะจำลองอนุกรมเวลาแบบ ARCH(1) และ GARCH(1,1) โดยใช้ฟังก์ชันที่กำหนดไว้ล่วงหน้าชื่อ simulate_GARCH(n, omega, alpha, beta = 0)

ทบทวนความแตกต่างระหว่างโมเดล ARCH(1) และ GARCH(1,1): นอกจากองค์ประกอบ autoregressive ที่ใช้ \(\alpha\) คูณกับค่า residual กำลังสองที่ lag-1 แล้ว โมเดล GARCH ยังมีองค์ประกอบ moving average ที่ใช้ \(\beta\) คูณกับความแปรปรวนที่ lag-1 อีกด้วย

ฟังก์ชันที่กำหนดไว้จะจำลองอนุกรม ARCH/GARCH ตามค่า n (จำนวนการจำลอง), omega, alpha และ beta (ค่าเริ่มต้นคือ 0) ที่ระบุ และจะคืนค่า residuals และความแปรปรวนที่จำลองขึ้น จากนั้นจะพล็อตกราฟและสังเกตความแปรปรวนที่จำลองได้จากกระบวนการ ARCH และ GARCH

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

GARCH Models ใน Python

ดูคอร์ส

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

  • จำลองกระบวนการ ARCH(1) โดยกำหนด omega = 0.1 และ alpha = 0.7
  • จำลองกระบวนการ GARCH(1,1) โดยกำหนด omega = 0.1, alpha = 0.7 และ beta = 0.1
  • พล็อตกราฟความแปรปรวนที่จำลองได้จาก ARCH และ GARCH ตามลำดับ

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

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

# Simulate a ARCH(1) series
arch_resid, arch_variance = simulate_GARCH(n= 200, 
                                           omega = ____, alpha = ____)
# Simulate a GARCH(1,1) series
garch_resid, garch_variance = simulate_GARCH(n= 200, 
                                             omega = ____, alpha = ____, 
                                             beta = ____)
# Plot the ARCH variance
plt.plot(____, color = 'red', label = 'ARCH Variance')
# Plot the GARCH variance
plt.plot(____, color = 'orange', label = 'GARCH Variance')
plt.legend()
plt.show()
แก้ไขและรันโค้ด