Teoria dei valori estremi

Gestione quantitativa del rischio in Python

Jamsheed Shorish

Computational Economist

Valori estremi

  • Perdite di portafoglio: valori estremi
  • immagine di eventi estremi oltre la soglia VaR
  • Valori estremi: dalla coda della distribuzione
    • Perdite in coda: perdite oltre una certa soglia
    • Modellare le perdite di coda => gestione del rischio migliore
  • immagine di tail risk e VaR
Gestione quantitativa del rischio in Python

Teoria dei valori estremi

  • Teoria dei valori estremi: distribuzione statistica dei valori estremi
  • Massimi a blocchi

intervallo da 0 a T

Gestione quantitativa del rischio in Python

Teoria dei valori estremi

  • Teoria dei valori estremi: distribuzione statistica dei valori estremi
  • Massimi a blocchi:
    • Suddividi il periodo in sottoperiodi

linea da 0 a T divisa in sottointervalli

Gestione quantitativa del rischio in Python

Teoria dei valori estremi

  • Teoria dei valori estremi: distribuzione statistica dei valori estremi
  • Massimi a blocchi:
    • Suddividi il periodo in sottoperiodi
    • Crea un blocco per ogni sottoperiodo

intervallo con blocchi

Gestione quantitativa del rischio in Python

Teoria dei valori estremi

  • Teoria dei valori estremi: distribuzione statistica dei valori estremi
  • Massimi a blocchi:
    • Suddividi il periodo in sottoperiodi
    • Crea blocchi per ogni sottoperiodo
    • L'insieme dei massimi di blocco = insieme di dati
  • Peak over threshold (POT):
    • Trova tutte le perdite sopra un certo livello
    • L'insieme di tali perdite = insieme di dati

intervallo con blocchi e perdita massima per blocco

Gestione quantitativa del rischio in Python

Distribuzione Generalizzata dei Valori Estremi

  • Esempio: Massimi a blocchi per 2007 - 2009

    • Ricampiona le perdite con il periodo desiderato (es. settimanale)
      maxima = losses.resample("W").max()
      
  • Distribuzione generalizzata dei valori estremi (GEV)

    • Distribuzione dei massimi dei dati
    • Esempio: stima parametrica con scipy.stats.genextreme
      from scipy.stats import genextreme
      params = genextreme.fit(maxima)
      
Gestione quantitativa del rischio in Python

VaR e CVaR dalla distribuzione GEV

  • VaR 99% dalla distribuzione GEV
    • Usa la percent point function .ppf() per trovare la VaR 99%
    • Richiede params dalla GEV stimata
    • Trova la perdita massima su una settimana al 99% di confidenza
  • CVaR 99% dalla distribuzione GEV
    • La CVaR è l'attesa condizionata della perdita dato la VaR come perdita minima
    • Usa il metodo .expect() per il valore atteso
VaR_99 = genextreme.ppf(0.99, *params)
CVar_99 = ( 1 / (1 - 0.99) ) * genextreme.expect(lambda x: x, *params, lb = VaR_99)
Gestione quantitativa del rischio in Python

Coprire le perdite

  • Gestione del rischio: coprire le perdite
    • Obbligo normativo (banche, assicurazioni)
    • Devono esserci riserve per coprire le perdite
      • Per un periodo specifico (es. una settimana)
      • A un livello di confidenza specifico (es. 99%)
  • VaR dalla distribuzione GEV:
    • stima la perdita massima
      • dato il periodo
      • dato il livello di confidenza
Gestione quantitativa del rischio in Python

Coprire le perdite

  • Esempio: Valore iniziale del portafoglio = $1,000,000
  • Requisito di riserva di una settimana al 99% di confidenza
    • $\text{VaR}_{99}$ dalla GEV: perdita massima in una settimana al 99% di confidenza
  • Requisito di riserva: Valore del portafoglio x $\text{VaR}_{99}$
    • Supponi $\text{VaR}_{99}$ = 0.10, cioè perdita massima del 10%
    • Requisito di riserva = $100,000
  • Il valore del portafoglio cambia => il requisito di riserva cambia
  • La normativa stabilisce la frequenza di aggiornamento delle riserve
Gestione quantitativa del rischio in Python

Esercitiamoci!

Gestione quantitativa del rischio in Python

Preparing Video For Download...