1. Nauka
  2. /
  3. Kursy
  4. /
  5. Wprowadzenie do zarządzania ryzykiem portfela w Pythonie

Connected

ćwiczenie

Historyczny drawdown

Rynek akcji ma tendencję do wzrostu w długim okresie, ale nie oznacza to, że unikniesz okresów drawdownu.

Drawdown można zmierzyć jako procentową stratę od najwyższego skumulowanego punktu historycznego.

W Pythonie możesz użyć funkcji .accumulate() i .maximum(), aby obliczyć bieżące maksimum, oraz poniższego wzoru, aby obliczyć drawdown:

$$ \text{Drawdown} = \frac{r_t}{RM} - 1$$

  • \(r_t\): Skumulowany zwrot w czasie t
  • \(RM\): Bieżące maksimum

Skumulowane zwroty USO – funduszu ETF śledzącego ceny ropy – są dostępne w zmiennej cum_rets.

Instrukcje

100 XP
  • Oblicz bieżące maksimum skumulowanych zwrotów funduszu ETF USO (cum_rets), używając np.maximum.accumulate().
  • W miejscach, gdzie bieżące maksimum (running_max) spada poniżej 1, ustaw je równe 1.
  • Oblicz drawdown, korzystając z powyższego wzoru z użyciem cum_rets i running_max.
  • Przejrzyj wykres.