Mesures de risque alternatives

Introduction à l'analyse de portefeuille en Python

Charlotte Werger

Data Scientist

Examiner le risque à la baisse

Graphique du risque à la hausse et à la baisse

  • Une bonne mesure du risque met l'accent sur les pertes potentielles, c.-à-d. le risque à la baisse
Introduction à l'analyse de portefeuille en Python

Ratio de Sortino

$$

  • Semblable au ratio de Sharpe, mais avec un écart-type différent
  • $ Sortino \; Ratio = \frac{R_p - R_f}{\sigma_d}$
  • $\sigma_d$ est l'écart-type de la baisse.

$$

Calcul du risque à la baisse

Introduction à l'analyse de portefeuille en Python

Ratio de Sortino en Python

# Define risk free rate and target return of 0
rfr = 0
target_return = 0
# Calcualte the daily returns from price data
apple_returns=pd.DataFrame(apple_price.pct_change())
# Select the negative returns only 
negative_returns = apple_returns.loc[apple_returns['AAPL'] < target]
Introduction à l'analyse de portefeuille en Python
# Calculate expected return and std dev of downside returns
expected_return = apple_returns['AAPL'].mean()
down_stdev = negative_returns.std()
# Calculate the sortino ratio
sortino_ratio = (expected_return - rfr)/down_stdev
print(sortino_ratio)
0.07887683763760528
Introduction à l'analyse de portefeuille en Python

Décrochage (drawdown) maximal

  • La plus forte perte en pourcentage entre un sommet et un creux du marché
  • Dépend de la fenêtre temporelle choisie
  • Temps de recouvrement : délai pour revenir à l'équilibre

Décrochages (drawdowns) du S&P500 dans le temps

Introduction à l'analyse de portefeuille en Python

Décrochage quotidien maximal en Python

# Calculate the maximum value of returns using rolling().max()
roll_max = apple_price.rolling(min_periods=1,window=250).max()

# Calculate daily draw-down from rolling max daily_drawdown = apple_price/roll_max - 1.0
# Calculate maximum daily draw-down max_daily_drawdown = daily_drawdown.rolling(min_periods=1,window=250).min()
# Plot the results daily_drawdown.plot() max_daily_drawdown.plot() plt.show()
Introduction à l'analyse de portefeuille en Python

Décrochage maximal d'Apple

Graphique du décrochage maximal des prix d'Apple

Introduction à l'analyse de portefeuille en Python

Passons à la pratique !

Introduction à l'analyse de portefeuille en Python

Preparing Video For Download...