CVaR และความเสี่ยงที่ต้องรับมือ
CVaR คือค่าคาดหวังของการสูญเสีย ภายใต้เงื่อนไข ที่มีการสูญเสียขั้นต่ำตามที่กำหนด ดังนั้น CVaR จึงอยู่ในรูปของความเสี่ยงที่ต้องรับมืออยู่แล้ว นั่นคือผลรวม (หรืออินทิกรัล) ของความน่าจะเป็นของการสูญเสียในส่วน tail ของการแจกแจง คูณด้วยจำนวนการสูญเสีย
ในการหา CVaR ที่ระดับความเชื่อมั่น 99% ให้เริ่มด้วยการ fit การแจกแจง T กับข้อมูลพอร์ตโฟลิโอ crisis_losses ในช่วงปี 2008-2009 โดยใช้เมธอด t.fit() ซึ่งจะคืนค่าพารามิเตอร์ p ของการแจกแจง T เพื่อนำไปหา VaR ด้วยเมธอด .ppf()
จากนั้นคำนวณ VaR ที่ระดับ 99% เนื่องจากต้องใช้ในการหา CVaR
สุดท้าย คำนวณค่า CVaR ที่ระดับ 99% โดยใช้เมธอด t.expect() ซึ่งเป็นเมธอดเดียวกับที่ใช้คำนวณ CVaR สำหรับการแจกแจงแบบ Normal ในแบบฝึกหัดก่อนหน้า
การแจกแจง t จาก scipy.stats พร้อมใช้งานแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การบริหารความเสี่ยงเชิงปริมาณด้วย Python
คำแนะนำการฝึกหัด
- หาพารามิเตอร์
pของการแจกแจงโดยใช้เมธอด.fit()กับcrisis_losses - คำนวณ
VaR_99โดยใช้พารามิเตอร์pที่ fit แล้วและ percent point function ของt - คำนวณ
CVaR_99โดยใช้เมธอดt.expect()และพารามิเตอร์pที่ fit แล้ว จากนั้นแสดงผลลัพธ์
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Fit the Student's t distribution to crisis losses
p = t.____(crisis_losses)
# Compute the VaR_99 for the fitted distribution
VaR_99 = t.____(____, *p)
# Use the fitted parameters and VaR_99 to compute CVaR_99
tail_loss = t.expect(____ y: y, args = (p[0],), loc = p[1], scale = p[2], lb = VaR_99 )
CVaR_99 = (1 / (1 - ____)) * tail_loss
print(CVaR_99)