VaR in financieel risicobeheer

GARCH-modellen in Python

Chelsea Yang

Data Science Instructor

Mindset voor risicobeheer

Regel 1: Verlies nooit geld

Regel 2: Vergeet regel 1 nooit

-- Warren Buffett

Buffett cartoon

GARCH-modellen in Python

Wat is VaR

  • VaR staat voor Value at Risk

  • Drie onderdelen:

    1. portefeuille
    2. horizon
    3. waarschijnlijkheid
GARCH-modellen in Python

VaR-voorbeelden

1-dag 5% VaR van $1 miljoen

5% kans dat de portefeuille in 1 dag $1 mln of meer daalt

10-dagen 1% VaR van $9 miljoen

1% kans dat de portefeuille in 10 dagen $9 mln of meer daalt

GARCH-modellen in Python

VaR in risicobeheer

  • Stel risicolimieten in
  • VaR-overschrijding: verlies groter dan de VaR

VaR exceedances

GARCH-modellen in Python

Dynamische VaR met GARCH

  • Realistischere VaR-schatting met GARCH

  • VaR = gemiddelde + (GARCH-vol) * kwantiel

VaR = mean_forecast.values + np.sqrt(variance_forecast).values * quantile
GARCH-modellen in Python

Dynamische VaR-berekening

  • Stap 1: Gebruik een GARCH-model om de variantie te voorspellen
# Specify and fit a GARCH model
basic_gm = arch_model(bitcoin_data['Return'], p = 1, q = 1, 
                      mean = 'constant', vol = 'GARCH', dist = 't')
gm_result = basic_gm.fit()
# Make variance forecast
gm_forecast = gm_result.forecast(start = '2019-01-01')
GARCH-modellen in Python

Dynamische VaR-berekening (vervolg)

  • Stap 2: Gebruik GARCH om vooruitblik-gemiddelde en -volatiliteit te krijgen

    mean_forecast = gm_forecast.mean['2019-01-01':]
    variance_forecast = gm_forecast.variance['2019-01-01':]
    

     

  • Stap 3: Bepaal het kwantiel voor een betrouwbaarheidsniveau

    1. Parametrische VaR
    2. Empirische VaR
GARCH-modellen in Python

Parametrische VaR

Schat kwantielen op basis van de GARCH-verdeeld aanname voor gestandaardiseerde residuen

# Assume a Student's t-distribution 
# ppf(): Percent point function

q_parametric = garch_model.distribution.ppf(0.05, nu)
GARCH-modellen in Python

Empirische VaR

Schat kwantielen op basis van de waargenomen verdeling van GARCH-gestandaardiseerde residuen

q_empirical = std_resid.quantile(0.05)
GARCH-modellen in Python

Laten we oefenen!

GARCH-modellen in Python

Preparing Video For Download...