Meminimalkan CVaR
Latihan ini akan memberi Anda praktik menggunakan alat PyPortfolioOpt untuk meminimalkan CVaR sebagai tujuan manajemen risiko.
Anda akan memuat modul pypfopt.efficient_frontier dan mengambil kelas EfficientCVaR, lalu membuat instance kelas tersebut menggunakan aset bank investasi untuk periode 2005–2010.
Selanjutnya, Anda akan menggunakan metode min_cvar() dari instance tersebut untuk menemukan bobot portofolio optimal yang meminimalkan CVaR.
Return aset portofolio berada dalam vektor returns—latihan ini juga menggunakan kamus names untuk memetakan bobot portofolio ke nama bank.
Latihan ini adalah bagian dari kursus
Manajemen Risiko Kuantitatif dengan Python
Petunjuk latihan
- Impor kelas
EfficientCVaRdaripypfopt.efficient_frontier. - Buat instance kelas
EfficientCVaRbernamaecmenggunakanreturns; perhatikan Anda tidak memerlukanexpected_returns, karena fungsi objektifnya berbeda dari optimisasi mean-variance. - Temukan dan tampilkan portofolio optimal menggunakan metode
.min_cvar()milikec.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# 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)