CVaR'ı En Aza İndirme
Bu egzersiz, risk yönetimi hedefi olarak CVaR minimizasyonu için PyPortfolioOpt araçlarını kullanma pratiği yapmanı sağlayacak.
pypfopt.efficient_frontier modülünü yükleyip EfficientCVaR sınıfını alacak ve 2005 - 2010 dönemi yatırım bankası varlıklarını kullanarak bu sınıfın bir örneğini oluşturacaksın.
Ardından, CVaR'ı en aza indiren optimal portföy ağırlıklarını bulmak için örneğin min_cvar() metodunu kullanacaksın.
Portföy varlık getirileri returns vektöründe — ayrıca bu egzersizde portföy ağırlıklarını banka adlarıyla eşlemek için bir names sözlüğü kullanılıyor.
Bu egzersiz, kursun bir parçasıdır
Python ile Nicel Risk Yönetimi
Egzersiz talimatları
pypfopt.efficient_frontieriçindenEfficientCVaRsınıfını içe aktar.- Amaç fonksiyonu ortalama-varyans optimizasyonundan farklı olduğu için
expected_returns'a ihtiyacın OLMADIĞINI unut vereturnskullanarakEfficientCVaRsınıf örneğiecyi oluştur. ec'nin.min_cvar()metodunu kullanarak optimal portföyü bul ve görüntüle.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Import the EfficientCVaR class
from pypfopt.____ import EfficientCVaR
# Create the efficient frontier for CVaR minimization
ec = ____(None, ____)
# Find the cVaR-minimizing portfolio weights at the default 95% confidence level
optimal_weights = ec.____()
# Map the values in optimal_weights to the bank names
optimal_weights = { names[i] : optimal_weights[i] for i in optimal_weights}
# Display the optimal weights
print(optimal_weights)