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

Variance Targeting

ความผันผวนของผลตอบแทนทางการเงินเกิดขึ้นเป็นกลุ่ม (cluster) ตามช่วงเวลา โดยช่วงที่ความผันผวนสูงกว่าค่าเฉลี่ยจะตามด้วยช่วงที่ความผันผวนต่ำกว่าค่าเฉลี่ย การคาดการณ์ในระยะยาวมีดังนี้

  • เมื่อความผันผวนสูง มันจะลดลงและกลับสู่ค่าเฉลี่ยระยะยาว
  • เมื่อความผันผวนต่ำ มันจะเพิ่มขึ้นและกลับสู่ค่าเฉลี่ยระยะยาว

ในการประมาณโมเดล GARCH เราสามารถใช้ประโยชน์จากพฤติกรรม mean reversion ของความผันผวนได้ผ่านเทคนิค variance targeting กล่าวคือ เราประมาณค่าพารามิเตอร์ GARCH โดยให้ความผันผวนระยะยาวที่โมเดล GARCH บอกนั้นเท่ากับส่วนเบี่ยงเบนมาตรฐานของตัวอย่าง

มาลองทำกับผลตอบแทน EUR/USD กัน

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

GARCH Models in R

ดูคอร์ส

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

  • ปรับ GARCH specification ให้ใช้ variance targeting
  • ประมาณโมเดล GARCH
  • ใช้ uncvariance() เพื่อคำนวณส่วนเบี่ยงเบนมาตรฐานระยะยาวที่โมเดล GARCH บอก
  • ตรวจสอบว่าเมื่อปัดตัวเลขแล้ว ค่าดังกล่าวเท่ากับส่วนเบี่ยงเบนมาตรฐานของตัวอย่าง

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

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

# Complete the specification to do variance targeting
garchspec <- ugarchspec(mean.model = list(armaOrder = c(0,0)),
                        variance.model = list(model = "sGARCH",
                                             ___ = ___),
                        distribution.model = "std")

# Estimate the model
garchfit <- ___(data = EURUSDret, spec = garchspec)

# Print the GARCH model implied long run volatility
sqrt(___(___))

# Verify that it equals the standard deviation (after rounding)
all.equal(sqrt(uncvariance(garchfit)), ___(EURUSDret), tol = 1e-4)
แก้ไขและรันโค้ด