Портфелі Марковіца

Вступ до керування ризиком портфеля в Python

Dakota Wixom

Quantitative Analyst | QuantCourse.com

100 000 випадково згенерованих портфелів

Вступ до керування ризиком портфеля в Python

Коефіцієнт Шарпа

Коефіцієнт Шарпа вимірює доходність з урахуванням ризику.

Щоб обчислити версію коефіцієнта Шарпа 1966 року:

$$ S = \frac{ R_a - r_f }{\sigma_a} $$

  • S: коефіцієнт Шарпа
  • $ R_a $: доходність активу
  • $ r_f $: безризикова ставка доходності
  • $ \sigma_a $: волатильність активу
Вступ до керування ризиком портфеля в Python

Ефективна межа

Вступ до керування ризиком портфеля в Python

Портфелі Марковіца

Будь-яка точка на ефективній межі — це оптимальний портфель.

Ці дві типові точки називають портфелями Марковіца:

  • MSR: портфель з max Sharpe ratio
  • GMV: портфель з global minimum volatility

Вступ до керування ризиком портфеля в Python

Вибір портфеля

Як обрати найкращий портфель?

  • Обирайте портфель на граничній лінії ефективної межі
  • Вищу доходність можна отримати, якщо ви приймаєте вищий ризик
Вступ до керування ризиком портфеля в Python

Вибір MSR у Python

Припустімо, є датафрейм df випадкових портфелів зі стовпцями Volatility і Returns:

numstocks = 5
risk_free = 0
df["Sharpe"] = (df["Returns"] - risk_free) / df["Volatility"]
MSR = df.sort_values(by=['Sharpe'], ascending=False)
MSR_weights = MSR.iloc[0, 0:numstocks]
np.array(MSR_weights)
array([0.15, 0.35, 0.10, 0.15, 0.25])
Вступ до керування ризиком портфеля в Python

Минулі результати не гарантують майбутню доходність

Хоча портфель з максимальним коефіцієнтом Шарпа звучить привабливо, на практиці доходність надзвичайно складно передбачити.

Вступ до керування ризиком портфеля в Python

Вибір GMV у Python

Припустімо, є датафрейм df випадкових портфелів зі стовпцями Volatility і Returns:

numstocks = 5
GMV = df.sort_values(by=['Volatility'], ascending=True)
GMV_weights = GMV.iloc[0, 0:numstocks]
np.array(GMV_weights)
array([0.25, 0.15, 0.35, 0.15, 0.10])
Вступ до керування ризиком портфеля в Python

Давайте потренуємось!

Вступ до керування ризиком портфеля в Python

Preparing Video For Download...