VaR și expunerea la risc
Anterior ai calculat VaR și CVaR pentru cazul în care pierderile urmau o distribuție normală. Acum vei calcula VaR folosind o altă distribuție comună a pierderilor: distribuția t a lui Student (sau T), disponibilă în scipy.stats.
Vei calcula un array de măsuri VaR de 99% din distribuția T (cu 30 - 1 = 29 grade de libertate), folosind ferestre mobile de 30 de zile din pierderile portofoliului băncii de investiții losses.
Mai întâi vei calcula media și deviația standard pentru fiecare fereastră, creând o listă de rolling_parameters. Acestea vor fi folosite pentru a calcula array-ul de măsuri VaR de 99%.
În final, vei folosi acest array pentru a vizualiza expunerea la risc a unui portofoliu cu o valoare inițială de 100.000 $. Reamintim că expunerea la risc reprezintă probabilitatea pierderii (1%) înmulțită cu valoarea pierderii (dată de VaR-ul de 99%).
Acest exercițiu face parte din cursul
Managementul Cantitativ al Riscului în Python
Instrucțiuni pentru exercițiu
- Importă distribuția
ta lui Student dinscipy.stats. - Calculează vectorii de medie pe 30 de zile
muși deviație standardsigmadinlossesși plasează-i înrolling_parameters. - Calculează un array Numpy de măsuri VaR de 99%,
VaR_99, folosindt.ppf()și o listă de distribuții T construită din elementele dinrolling_parameters. - Calculează și vizualizează expunerea la risc asociată array-ului
VaR_99.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Import the Student's t-distribution
from scipy.____ import t
# Create rolling window parameter list
mu = losses.rolling(30).____
sigma = losses.rolling(30).____
rolling_parameters = [(29, mu[i], s) for i,s in enumerate(sigma)]
# Compute the 99% VaR array using the rolling window parameters
VaR_99 = np.array( [ t.ppf(____, *params)
for params in ____ ] )
# Plot the minimum risk exposure over the 2005-2010 time period
plt.plot(losses.index, 0.01 * ____ * 100000)
plt.show()