Modern portföy teorisi

Python ile Nicel Risk Yönetimi

Jamsheed Shorish

Computational Economist

Risk-getiri değiş tokuşu

  • Risk faktörleri: getiriyi etkileyen belirsizlik kaynakları
  • Sezgisel olarak: daha fazla belirsizlik (daha çok risk) daha yüksek getiri ile telafi edilir
  • Getiri garantilenemez: beklenen getiri ölçüsüne ihtiyaç var
    • tarihsel ortalama getiri: beklenen gelecekteki getiriye vekil
Python ile Nicel Risk Yönetimi

Yatırımcı risk iştahı

  • Yatırımcı anketi: verilen risk düzeyi için asgari beklenen getiri?
  • Yanıt, (risk, getiri) profili “veri noktası” üretir
  • Riski değiştirin => (risk, getiri) noktalar kümesi oluşur
  • Yatırımcının risk iştahı: risk-getiri arasında sayısal bir ilişki tanımlar
Python ile Nicel Risk Yönetimi

Portföy ağırlıklarını seçmek

  • Verilen bir portföyün ağırlıklarını değiştirin => (risk, getiri) çiftleri kümesi oluşur
  • Ağırlıkları değiştirmek = risk yönetiminin başlangıcı!
  • Amaç: belirli risk düzeyinde beklenen getiriyi ençoklamak
    • Eşdeğeri: belirli beklenen getiri düzeyinde riski enazlamak
  • Ağırlıkları değiştirmek = yatırımcının risk maruziyetini ayarlamak
Python ile Nicel Risk Yönetimi

Modern portföy teorisi

  • Belirli risk düzeyi için en yüksek beklenen getiriyi üreten ağırlıklara sahip portföy = etkin portföy
  • Modern Portföy Teorisi (MPT), 1952
    • H. M. Markowitz (1990 Nobel)
  • Etkin portföy ağırlık vektörü $w^\star$ şunu çözer:

Etkin portföyü bulma optimizasyon denklemleri

Python ile Nicel Risk Yönetimi

Etkin sınır

  • Farklı risk düzeyleri için çok sayıda etkin portföy hesaplayın
  • Etkin sınır: etkin portföylerin oluşturduğu (risk, getiri) eğrisi
  • PyPortfolioOpt kütüphanesi: MPT için araçlar
    • EfficientFrontier sınıfı: her seferinde bir optimal portföy üretir
    • Constrained Line Algorithm (CLA) sınıfı: tüm etkin sınırı üretir
      • Getiri kovaryans matrisi gerekir
      • Beklenen getiri vekili gerekir: ortalama tarihsel getiriler
Python ile Nicel Risk Yönetimi

Yatırım bankası portföyü 2005 - 2010

  • Beklenen getiriler: tarihsel veriler
  • Kovaryans matrisi: Covariance Shrinkage tahmin verimliliğini artırır
  • Constrained Line Algorithm nesnesi CLA
  • Asgari varyans portföyü: cla.min_volatility()
  • Etkin sınır: 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()
Python ile Nicel Risk Yönetimi

Etkin sınırı görselleştirme

  • (vol, getiri) çiftlerinin saçılım grafiği

(risk, getiri) çiftleri olarak çizilen etkin sınır grafiği

Python ile Nicel Risk Yönetimi

Etkin sınırı görselleştirme

  • (vol, getiri) çiftlerinin saçılım grafiği
  • Asgari varyans portföyü: tüm etkin portföyler içinde en düşük volatilite

Etkin sınır grafiğinde vurgulanan asgari varyans portföyü

Python ile Nicel Risk Yönetimi

Etkin sınırı görselleştirme

  • (vol, getiri) çiftlerinin saçılım grafiği
  • Asgari varyans portföyü: tüm etkin portföyler içinde en düşük volatilite
  • Artan risk iştahı: sınır boyunca ilerleyin

Etkin sınır üzerinde daha yüksek risk ve getiri yönünde hareketi okla gösteren görsel

Python ile Nicel Risk Yönetimi

Haydi pratik yapalım!

Python ile Nicel Risk Yönetimi

Preparing Video For Download...