Teori portofolio modern

Manajemen Risiko Kuantitatif dengan Python

Jamsheed Shorish

Computational Economist

Trade-off risiko–return

  • Faktor risiko: sumber ketidakpastian yang memengaruhi return
  • Intuitif: ketidakpastian lebih besar (risiko lebih tinggi) dikompensasi return lebih besar
  • Tidak bisa menjamin return: perlu ukuran return ekspektasian
    • rata-rata (mean) return historis: proksi return ekspektasian masa depan
Manajemen Risiko Kuantitatif dengan Python

Selera risiko investor

  • Survei investor: return minimum yang dibutuhkan untuk tingkat risiko tertentu?
  • Jawaban survei membentuk satu titik data profil risiko (risiko, return)
  • Ubah tingkat risiko => himpunan titik (risiko, return)
  • Selera risiko investor: satu hubungan terkuantifikasi antara risiko dan return
Manajemen Risiko Kuantitatif dengan Python

Memilih bobot portofolio

  • Ubah bobot portofolio pada portofolio tertentu => membentuk himpunan pasangan (risiko, return)
  • Mengubah bobot = awal manajemen risiko!
  • Tujuan: ubah bobot untuk memaksimalkan return ekspektasian pada tingkat risiko tertentu
    • Setara: minimalkan risiko pada tingkat return ekspektasian tertentu
  • Mengubah bobot = menyesuaikan eksposur risiko investor
Manajemen Risiko Kuantitatif dengan Python

Teori portofolio modern

  • Portofolio efisien: bobot yang menghasilkan return ekspektasian tertinggi untuk tingkat risiko tertentu
  • Modern Portfolio Theory (MPT), 1952
    • H. M. Markowitz (Nobel 1990)
  • Vektor bobot portofolio efisien $w^\star$ menyelesaikan:

Persoalan optimisasi untuk mencari portofolio efisien

Manajemen Risiko Kuantitatif dengan Python

Garis efisien

  • Hitung banyak portofolio efisien untuk berbagai tingkat risiko
  • Garis efisien (efficient frontier): himpunan pasangan (risiko, return) dari portofolio efisien
  • Pustaka PyPortfolioOpt: alat MPT teroptimasi
    • Kelas EfficientFrontier: menghasilkan satu portofolio optimal per kali
    • Kelas Constrained Line Algorithm (CLA): menghasilkan seluruh garis efisien
      • Membutuhkan matriks kovarians return
      • Membutuhkan proksi return masa depan: mean return historis
Manajemen Risiko Kuantitatif dengan Python

Portofolio bank investasi 2005–2010

  • Return ekspektasian: data historis
  • Matriks kovarians: Covariance Shrinkage meningkatkan efisiensi estimasi
  • Objek Constrained Line Algorithm CLA
  • Portofolio varian minimum: cla.min_volatility()
  • Garis efisien (efficient frontier): cla.efficient_frontier()

 

expected_returns = mean_historical_return(prices)

efficient_cov = CovarianceShrinkage(prices).ledoit_wolf()
cla = CLA(expected_returns, efficient_cov)
minimum_variance = cla.min_volatility()
(ret, vol, weights) = cla.efficient_frontier()
Manajemen Risiko Kuantitatif dengan Python

Memvisualisasikan garis efisien

  • Scatter plot pasangan (vol, ret)

Grafik garis efisien yang diplot sebagai serangkaian pasangan (risiko, return)

Manajemen Risiko Kuantitatif dengan Python

Memvisualisasikan garis efisien

  • Scatter plot pasangan (vol, ret)
  • Portofolio varian minimum: volatilitas terkecil di antara semua portofolio efisien

Portofolio varian minimum disorot pada grafik garis efisien

Manajemen Risiko Kuantitatif dengan Python

Memvisualisasikan garis efisien

  • Scatter plot pasangan (vol, ret)
  • Portofolio varian minimum: volatilitas terkecil di antara semua portofolio efisien
  • Selera risiko meningkat: bergerak sepajang frontier

Pergerakan sepanjang grafik garis efisien digambarkan sebagai panah menuju risiko dan imbal hasil lebih tinggi

Manajemen Risiko Kuantitatif dengan Python

Ayo berlatih!

Manajemen Risiko Kuantitatif dengan Python

Preparing Video For Download...