CVaR와 위험 노출
CVaR는 최소 손실 임계값이 주어졌을 때의 기대 손실값입니다. 따라서 CVaR는 이미 위험 노출 형태로 표현되며, 분포 꼬리에서의 손실 확률에 손실 규모를 곱해 합(또는 적분)한 값입니다.
99% CVaR를 구하기 위해 먼저 t.fit() 메서드를 사용해 2008–2009년의 포트폴리오 crisis_losses 데이터에 T 분포를 적합합니다. 이때 반환되는 T 분포 모수 p는 .ppf() 메서드로 VaR를 구하는 데 사용됩니다.
다음으로 CVaR 계산에 사용할 99% VaR를 계산합니다.
마지막으로 이전 연습에서 정규분포의 CVaR를 계산할 때 사용했던 것과 같은 t.expect() 메서드를 이용해 99% CVaR를 계산합니다.
scipy.stats의 t 분포가 준비되어 있습니다.
이 연습은 강의의 일부입니다
Python을 활용한 정량적 리스크 관리
연습 안내
crisis_losses에.fit()메서드를 적용해 분포 모수p를 찾으세요.- 적합된 모수
p와t의 percent point function을 사용해VaR_99를 계산하세요. t.expect()메서드와 적합된 모수p로CVaR_99를 계산하고 결과를 출력하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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)