Historical Simulation
การจำลองเชิงประวัติศาสตร์ (Historical Simulation) ของ VaR ตั้งสมมติฐานว่าการกระจายของผลขาดทุนในอดีตมีรูปแบบ เดียวกัน กับการกระจายของผลขาดทุนในอนาคต เราจะทดสอบว่าสมมติฐานนี้เป็นจริงสำหรับพอร์ตโฟลิโอธนาคารเพื่อการลงทุนของเราหรือไม่ โดยเปรียบเทียบค่า VaR ที่ระดับความเชื่อมั่น 95% ระหว่างช่วงปี 2005–2006 กับช่วงปี 2007–2009
รายการ asset_returns ถูกสร้างไว้ให้แล้ว ซึ่งเก็บผลตอบแทนของสินทรัพย์สำหรับแต่ละช่วงเวลา นำรายการนี้มาสร้าง portfolio_returns โดยใช้ weights ที่มีอยู่ แล้วนำไปคำนวณ losses ของพอร์ตโฟลิโอ
จากนั้นใช้ฟังก์ชัน np.quantile() เพื่อหาค่า VaR ที่ 95% ของแต่ละช่วงเวลา หากการกระจายของผลขาดทุนทั้งสองช่วงเหมือนกัน ค่าประมาณ VaR 95% ก็ควรใกล้เคียงกัน มิฉะนั้นการกระจายอาจเปลี่ยนแปลงไปตามที่วิกฤตการณ์ทางการเงินโลกรุนแรงขึ้น
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การบริหารความเสี่ยงเชิงปริมาณด้วย Python
คำแนะนำการฝึกหัด
- สร้าง Numpy array ของ
portfolio_returnsสำหรับทั้งสองช่วงเวลา โดยใช้รายการasset_returnsและweightsของพอร์ตโฟลิโอ - สร้าง array ของ
lossesจากportfolio_returns - คำนวณการจำลองเชิงประวัติศาสตร์ของ VaR ที่ระดับ 95% สำหรับทั้งสองช่วงเวลาโดยใช้
np.quantile() - แสดงรายการค่าประมาณ VaR 95%
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Create portfolio returns for the two sub-periods using the list of asset returns
portfolio_returns = np.array([ x.____(weights) for x in asset_returns])
# Derive portfolio losses from portfolio returns
losses = - ____
# Find the historical simulated VaR estimates
VaR_95 = [____(x, 0.95) for x in ____]
# Display the VaR estimates
print("VaR_95, 2005-2006: ", VaR_95[0], '; VaR_95, 2007-2009: ', VaR_95[1])