Tarihsel çekilme (drawdown)
Hisse senedi piyasası zaman içinde genelde yükselir, ancak bu çekilme (drawdown) dönemleri yaşamayacağın anlamına gelmez.
Çekilme, en yüksek kümülatif tarihsel noktadan olan yüzde kayıp olarak ölçülebilir.
Python'da, koşan maksimumu hesaplamak için .accumulate() ve .maximum() işlevlerini ve çekilmeyi hesaplamak için aşağıdaki basit formülü kullanabilirsin:
$$ \text{Drawdown} = \frac{r_t}{RM} - 1$$
- \(r_t\): t anındaki kümülatif getiri
- \(RM\): Koşan maksimum
Petrol fiyatlarını izleyen bir ETF olan USO'nun kümülatif getirileri cum_rets değişkeninde mevcut.
Bu egzersiz
Python ile Portföy Risk Yönetimine Giriş
kursunun bir parçasıdırEgzersiz talimatları
- USO petrol ETF'sinin (
cum_rets) kümülatif getirilerinin koşan maksimumununp.maximum.accumulate()kullanarak hesapla. - Koşan maksimum (
running_max) 1'in altına düştüğü yerlerde, koşan maksimumu 1'e eşitle. cum_retsverunning_maxile yukarıdaki basit formülü kullanarakdrawdownhesapla.- Grafiği incele.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Calculate the running maximum
running_max = ____(cum_rets)
# Ensure the value never drops below 1
running_max[____] = 1
# Calculate the percentage drawdown
drawdown = (____)/____ - 1
# Plot the results
drawdown.plot()
plt.show()