LoslegenKostenlos loslegen

Parameterschätzung: Schiefe Normalverteilung

In der vorherigen Übung hast du festgestellt, dass das Anpassen einer Normalverteilung an die Portfoliodaten der Investmentbank von 2005–2010 gemäß dem Anderson-Darling-Test zu einer schlechten Anpassung geführt hat.

Du wirst die Daten mit der Funktion skewtest() aus scipy.stats testen. Wenn das Testergebnis statistisch von null abweicht, sprechen die Daten für eine schiefe Verteilung.

Nun schätzt du parametrisch den 95-%-VaR einer Verlustverteilung, die mit der schiefen Normalverteilung skewnorm aus scipy.stats angepasst wurde. Diese Verteilung ist allgemeiner als die Normalverteilung und erlaubt nicht symmetrisch verteilte Verluste. Gerade während der Krise ist mit schiefen Verlusten zu rechnen, wenn Portfoliobuchverluste wahrscheinlicher sind als Gewinne.

Portfolio-losses für den Zeitraum 2007–2009 stehen bereit.

Diese Übung ist Teil des Kurses

Quantitative Risk Management in Python

Kurs anzeigen

Anleitung zur Übung

  • Importiere skewnorm und skewtest aus scipy.stats.
  • Teste die Schiefe der Portfolio-losses mit skewtest. Der Test weist auf Schiefe hin, wenn das Ergebnis statistisch von null abweicht.
  • Fitte die losses-Daten mit der Methode .fit() an die schiefe Normalverteilung an.
  • Erzeuge und zeige die 95-%-VaR-Schätzung aus der angepassten Verteilung.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Import the skew-normal distribution and skewness test from scipy.stats
from scipy.stats import skewnorm, skewtest

# Test the data for skewness
print("Skewtest result: ", ____(____))

# Fit the portfolio loss data to the skew-normal distribution
params = ____.____(losses)

# Compute the 95% VaR from the fitted distribution, using parameter estimates
VaR_95 = ____.____(0.95, *params)
print("VaR_95 from skew-normal: ", VaR_95)
Code bearbeiten und ausführen