Rolling ไปเรื่อย ๆ
สามารถแสดงให้เห็นว่าความผันผวนเปลี่ยนแปลงตามเวลาได้ โดยใช้ฟังก์ชัน chart.RollingPerformance() จากแพ็กเกจ PerformanceAnalytics พารามิเตอร์สำคัญที่ต้องปรับคือ ความยาวของหน้าต่าง (window length) หน้าต่างที่ สั้นกว่า จะทำให้ค่าประมาณความผันผวนแบบ rolling ตอบสนองต่อผลตอบแทนล่าสุดได้เร็วกว่า ส่วนหน้าต่างที่ ยาวกว่า จะให้ค่าที่ เรียบกว่า ฟังก์ชัน sd.annualized ช่วยคำนวณความผันผวนรายปี โดยกำหนดจำนวนวันซื้อขายในหนึ่งปีผ่านอาร์กิวเมนต์ scale
ในแบบฝึกหัดนี้ ให้เติมโค้ดให้สมบูรณ์เพื่อคำนวณค่าประมาณความผันผวนรายปีแบบ rolling จากผลตอบแทนรายวันของ S&P 500 ใน sp500ret สำหรับช่วงปี 2005 ถึง 2017
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
GARCH Models in R
คำแนะนำการฝึกหัด
- โหลดแพ็กเกจ
PerformanceAnalytics - คำนวณค่าประมาณ หนึ่งเดือน โดยกำหนดอาร์กิวเมนต์ scale เป็นจำนวนวันซื้อขายในหนึ่งปี
- คำนวณค่าประมาณ สามเดือน โดยกำหนดอาร์กิวเมนต์ scale เป็นจำนวนวันซื้อขายในหนึ่งปี
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Load the package PerformanceAnalytics
___
# Showing two plots on the same figure
par(mfrow=c(2,1))
# Compute the rolling 1 month estimate of annualized volatility
chart.RollingPerformance(R = sp500ret["2000::2017"], width = ___,
FUN = "sd.annualized", scale = ___, main = "One month rolling volatility")
# Compute the rolling 3 months estimate of annualized volatility
chart.RollingPerformance(R = ___, width = ___,
FUN = ___, scale = ___, main = "Three months rolling volatility")