VaR e exposição ao risco
Antes, você calculou o VaR e o CVaR quando as perdas seguiam uma distribuição Normal. Aqui, você vai encontrar o VaR usando outra distribuição comum de perdas, a distribuição t de Student (ou T) contida em scipy.stats.
Você vai calcular um array de medidas de VaR de 99% a partir da distribuição T (com 30 - 1 = 29 graus de liberdade), usando janelas móveis de 30 dias do losses da carteira de um banco de investimento.
Primeiro, você vai encontrar a média e o desvio padrão de cada janela, criando uma lista de rolling_parameters. Você usará esses valores para calcular o array de medidas do VaR de 99%.
Depois, você vai usar esse array para plotar a exposição ao risco de uma carteira inicialmente avaliada em US$ 100.000. Lembre-se de que a exposição ao risco é a probabilidade de perda (1%) multiplicada pelo montante da perda (o valor dado pelo VaR de 99%).
Este exercício faz parte do curso
Gerenciamento Quantitativo de Risco em Python
Instruções do exercício
- Importe a distribuição
tde Student descipy.stats. - Calcule os vetores de média de 30 dias
mue desvio padrãosigmaa partir delosses, e coloque-os emrolling_parameters. - Calcule um array Numpy de medidas de VaR de 99%
VaR_99usandot.ppf(), a partir de uma lista de distribuições T usando os elementos derolling_parameters. - Calcule e visualize a exposição ao risco associada ao array
VaR_99.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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()