CVaR och riskexponering
CVaR är det förväntade förlustvärdet givet ett minsta förlusttröskelsvärde. Det innebär att CVaR redan har formen av en riskexponering – det är summan (eller integralen) av sannolikheten för förlust i fördelningens svans multiplicerad med förlustbeloppet.
För att beräkna 99% CVaR anpassar du först en T-fördelning till tillgängliga portföljdata i crisis_losses från 2008–2009, med hjälp av metoden t.fit(). Den returnerar T-fördelningens parametrar p, som används för att hitta VaR med metoden .ppf().
Därefter beräknar du 99% VaR, eftersom det används för att hitta CVaR.
Slutligen beräknar du 99% CVaR med metoden t.expect() – samma metod som du använde för att beräkna CVaR för normalfördelningen i en tidigare övning.
Fördelningen t från scipy.stats är också tillgänglig.
Den här övningen är en del av kursen
Kvantitativ riskhantering i Python
Övningsinstruktioner
- Hitta fördelningsparametrarna
pmed hjälp av metoden.fit()tillämpad påcrisis_losses. - Beräkna
VaR_99med de anpassade parametrarnapoch percentpunktsfunktionen fört. - Beräkna
CVaR_99med metodent.expect()och de anpassade parametrarnap, och visa resultatet.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Fit the Student's t distribution to crisis losses
p = t.____(crisis_losses)
# Compute the VaR_99 for the fitted distribution
VaR_99 = t.____(____, *p)
# Use the fitted parameters and VaR_99 to compute CVaR_99
tail_loss = t.expect(____ y: y, args = (p[0],), loc = p[1], scale = p[2], lb = VaR_99 )
CVaR_99 = (1 / (1 - ____)) * tail_loss
print(CVaR_99)