Extremevaluetheorie

Kwantitatief risicobeheer in Python

Jamsheed Shorish

Computational Economist

Extreme waarden

  • Portefeuilleverliezen: extreme waarden
  • afbeelding van extreme gebeurtenissen boven VaR-drempel
  • Extreme waarden: uit de staart van de verdeling
    • Staartverliezen: verliezen boven een grens
    • Modelleer staartverliezen => beter risicobeheer
  • afbeelding van tail risk en VaR
Kwantitatief risicobeheer in Python

Extremevaluetheorie

  • Extremevaluetheorie: statistische verdeling van extreme waarden
  • Blokmaxima

lijninterval van 0 tot T

Kwantitatief risicobeheer in Python

Extremevaluetheorie

  • Extremevaluetheorie: statistische verdeling van extreme waarden
  • Blokmaxima:
    • Periode opdelen in subperioden

lijn van 0 tot T verdeeld in subintervallen

Kwantitatief risicobeheer in Python

Extremevaluetheorie

  • Extremevaluetheorie: statistische verdeling van extreme waarden
  • Blokmaxima:
    • Periode opdelen in subperioden
    • Vorm een blok per subperiode

lijninterval met blokken

Kwantitatief risicobeheer in Python

Extremevaluetheorie

  • Extremevaluetheorie: statistische verdeling van extreme waarden
  • Blokmaxima:
    • Periode opdelen in subperioden
    • Vorm blokken per subperiode
    • Verzameling blokmaxima = dataset
  • Peak over threshold (POT):
    • Vind alle verliezen boven een drempel
    • Die verliezen vormen de dataset

interval met blokken en maximaal verlies per blok

Kwantitatief risicobeheer in Python

Generalized Extreme Value-distributie

  • Voorbeeld: Blokmaxima voor 2007 - 2009

    • Resample verliezen met gewenste periode (bv. wekelijks)
      maxima = losses.resample("W").max()
      
  • Generalized Extreme Value-distributie (GEV)

    • Verdeling van maxima van data
    • Voorbeeld: parametrische schatting met scipy.stats.genextreme
      from scipy.stats import genextreme
      params = genextreme.fit(maxima)
      
Kwantitatief risicobeheer in Python

VaR en CVaR uit GEV

  • 99% VaR uit GEV
    • Gebruik .ppf() (percent point function) voor 99% VaR
    • Vereist params van gefitte GEV
    • Bepaalt maximaal verlies over één week bij 99% zekerheid
  • 99% CVaR uit GEV
    • CVaR = verwachte verlies gegeven VaR als minimum
    • Gebruik .expect() voor de verwachtingswaarde
VaR_99 = genextreme.ppf(0.99, *params)
CVar_99 = ( 1 / (1 - 0.99) ) * genextreme.expect(lambda x: x, *params, lb = VaR_99)
Kwantitatief risicobeheer in Python

Verliezen afdekken

  • Risicobeheer: verliezen afdekken
    • Wettelijke eis (banken, verzekeraars)
    • Reserves moeten beschikbaar zijn om verliezen te dekken
      • Voor een bepaalde periode (bv. één week)
      • Met een bepaald zekerheidsniveau (bv. 99%)
  • VaR uit GEV:
    • schat maximaal verlies
      • gegeven periode
      • gegeven zekerheidsniveau
Kwantitatief risicobeheer in Python

Verliezen afdekken

  • Voorbeeld: Initiële portefeuillevermogen = $1.000.000
  • Eénweekse reserve-eis bij 99% zekerheid
    • $\text{VaR}_{99}$ uit GEV: max. verlies over één week bij 99% zekerheid
  • Reserve-eis: Portefeuillewaarde × $\text{VaR}_{99}$
    • Stel $\text{VaR}_{99}$ = 0,10 (10% max. verlies)
    • Reserve-eis = $100.000
  • Portefeuillewaarde wijzigt => reserve-eis wijzigt
  • Regelgeving bepaalt updatefrequentie van reserves
Kwantitatief risicobeheer in Python

Laten we oefenen!

Kwantitatief risicobeheer in Python

Preparing Video For Download...