BaşlayınÜcretsiz başlayın

CVaR ve VaR'ı karşılaştırma

Koşullu risk değeri (CVaR) ya da beklenen açık (ES), belirli bir güven düzeyinde bir eşik değeri aşan zararlar gerçekleştiğinde ortalama zararın ne olacağını sorar. Hareket noktası olarak VaR'ı kullanır, ancak zarar dağılımının kuyruğunu dikkate aldığı için daha fazla bilgi içerir.

Önce, 2005-2010 yatırım bankası portfolio_losses ile aynı ortalama ve standart sapmaya sahip bir portföy zararlarının Normal dağılımı için %95 VaR'ı hesaplayacaksın. Ardından VaR'ı kullanarak %95 CVaR'ı hesaplayacak ve ikisini de Normal dağılıma karşı grafikte göstereceksin.

portfolio_losses çalışma alanında mevcut ve scipy.stats içindeki norm Normal dağılımı da hazır.

Bu egzersiz, kursun bir parçasıdır

Python ile Nicel Risk Yönetimi

Kursa Göz Atın

Egzersiz talimatları

  • portfolio_losses'ın ortalamasını ve standart sapmasını hesapla ve sırasıyla pm ve ps değişkenlerine ata.
  • norm'un .ppf() yöntemini kullanarak %95 VaR'ı bul — bu yöntem ortalama için loc ve standart sapma için scale argümanlarını alır.
  • %95 VaR'ı ve norm'un .expect() yöntemini kullanarak tail_loss değerini bul ve bunu kullanarak aynı güven düzeyinde CVaR'ı hesapla.
  • Normal dağılımın histogramına VaR'ı (kırmızı) ve CVaR'ı (yeşil) gösteren dikey çizgiler ekle.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# Compute the mean and standard deviation of the portfolio returns
pm = portfolio_losses.____
ps = portfolio_losses.____

# Compute the 95% VaR using the .ppf()
VaR_95 = norm.ppf(0.95, loc = ____, scale = ____)
# Compute the expected tail loss and the CVaR in the worst 5% of cases
tail_loss = norm.____(lambda x: x, loc = ____, scale = ____, lb = VaR_95)
CVaR_95 = (1 / (1 - 0.95)) * ____

# Plot the normal distribution histogram and add lines for the VaR and CVaR
plt.hist(norm.rvs(size = 100000, loc = pm, scale = ____), bins = 100)
plt.axvline(x = VaR_95, c='r', label = "VaR, 95% confidence level")
plt.axvline(x = ____, c='g', label = "CVaR, worst 5% of outcomes")
plt.legend(); plt.show()
Kodu Düzenle ve Çalıştır