Historický drawdown
Akciový trh má tendenci dlouhodobě růst, ale to neznamená, že se nevyskytnou období drawdownu.
Drawdown lze měřit jako procentuální pokles oproti nejvyššímu dosaženému kumulativnímu historickému bodu.
V Pythonu můžeš k výpočtu průběžného maxima využít funkce .accumulate() a .maximum() a k výpočtu drawdownu použít jednoduchý vzorec níže:
$$ \text{Drawdown} = \frac{r_t}{RM} - 1$$
- \(r_t\): Kumulativní výnos v čase t
- \(RM\): Průběžné maximum
Kumulativní výnosy USO, ETF sledujícího ceny ropy, jsou dostupné v proměnné cum_rets.
Toto cvičení je součástí kurzu
Úvod do řízení portfoliového rizika v Pythonu
Pokyny k cvičení
- Vypočítej průběžné maximum kumulativních výnosů ETF USO (
cum_rets) pomocí funkcenp.maximum.accumulate(). - Pokud průběžné maximum (
running_max) klesne pod hodnotu 1, nastav ho na 1. - Vypočítej
drawdownpomocí jednoduchého vzorce výše s využitímcum_retsarunning_max. - Prohlédni si graf.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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()