Value-at-risk

GARCH modely v R

Kris Boudt

Professor of finance and econometrics

Value-at-risk

  • Oblíbená míra rizika poklesu: 5% value-at-risk. 5% kvantil rozdělení výnosů představuje nejlepší výnos v 5 % nejhorších scénářů.
    Rozdělení denních výnosů za rok
GARCH modely v R

Rozdělení denních výnosů za rok

GARCH modely v R

Je potřeba předvídavý přístup

  • Kvantily z klouzavých oken výnosů jsou zpětně orientované:
    • otázka ex post: jaký byl 5% kvantil denních výnosů za poslední rok
    • otázka ex ante: jaký je 5% kvantil predikovaného rozdělení budoucího výnosu?
  • Předvídavé řízení rizik využívá predikované kvantily z odhadu GARCH.
  • Jak? Metoda quantile() aplikovaná na objekt ugarchroll.
GARCH modely v R

Postup pro získání predikovaných 5% kvantilů z ugarchroll

ugarchspec(): Specifikujte, který model GARCH chcete použít

garchspec <- ugarchspec(mean.model = list(armaOrder = c(1, 0)),
                        variance.model = list(model = "gjrGARCH"),
                        distribution.model = "sstd")

ugarchroll(): Odhadněte model GARCH na rolujících vzorcích

garchroll <- ugarchroll(garchspec, data = sp500ret, n.start = 2500, 
                        refit.window = "moving", refit.every = 100)

quantile(): Vypočítejte predikovaný kvantil

garchVaR <- quantile(garchroll, probs = 0.05)

Můžete zvolit jinou pravděpodobnost ztráty: oblíbené jsou také 1 % a 2,5 %

GARCH modely v R

Graf VaR pro pravděpodobnost ztráty 5 %

actual <- xts(as.data.frame(garchroll)$Realized, time(garchVaR))
VaRplot(alpha = 0.05, actual = actual, VaR = garchVaR)

Rozdělení denních výnosů za rok

GARCH modely v R

Překročení a pokrytí VaR

Překročení VaR nastane, když skutečný výnos je nižší než predikovaná hodnota VaR: $ R_t \ < {VaR}_t$.

Frekvence překročení VaR se nazývá pokrytí VaR.

# Calculation of coverage for S&P 500 returns and 5% probability level
mean(actual < garchVaR)
0.05159143
GARCH modely v R

Pokrytí VaR a validace modelu

  • Interpretace pokrytí VaR při pravděpodobnosti ztráty $\alpha$ (např. 5 %):
    • Platný model má pokrytí blízké zvolené úrovni pravděpodobnosti $\alpha$.
    • Pokud pokrytí $\gg$ $\alpha$: příliš mnoho překročení – predikovaný kvantil by měl být více záporný. Riziko ztráty bylo podceněno.
    • Pokud pokrytí $\ll$ $\alpha$: příliš málo překročení – predikovaný kvantil byl příliš záporný. Riziko ztráty bylo přeceněno.
GARCH modely v R

Faktory snižující výkon modelu

distribution.model = "std" místo distribution.model = "sstd":

garchspec <- ugarchspec(mean.model = list(armaOrder = c(1, 0)),
                        variance.model = list(model = "gjrGARCH"),
                        distribution.model = "std")

Rolující odhad a predikce VaR na 5 %:

garchroll <- ugarchroll(garchspec, data = sp500ret, n.start = 2500, 
                        refit.window = "moving", refit.every = 100)
garchVaR <- quantile(garchroll, probs = 0.05)
mean(actual < garchVaR) # returns 0.05783233
GARCH modely v R

Další zhoršení

variance.model = list(model = "sGARCH")

místo

variance.model = list(model = "gjrGARCH"):

garchspec <- ugarchspec(mean.model = list(armaOrder = c(1, 0)),
                        variance.model = list(model = "sGARCH"),
                        distribution.model = "std")

Rolující odhad a predikce VaR na 5 %:

garchroll <- ugarchroll(garchspec, data = sp500ret, n.start = 2500, 
                        refit.window = "moving", refit.every = 100)
garchVaR <- quantile(garchroll, probs = 0.05)
mean(actual < garchVaR) # returns 0.06074475
GARCH modely v R

Ještě větší zhoršení

refit.every = 1000

místo

refit.every = 100:

garchspec <- ugarchspec(mean.model = list(armaOrder = c(1, 0)),
                        variance.model = list(model = "sGARCH"),
                        distribution.model = "std")
garchroll <- ugarchroll(garchspec, data = sp500ret, n.start = 2500, 
                        refit.window = "moving", refit.every = 1000)
garchVaR <- quantile(garchroll, probs = 0.05)
mean(actual < garchVaR) # returns 0.06199293
GARCH modely v R

Riziko poklesu znamená přemýšlet o predikovaných kvantilech.

GARCH modely v R

Preparing Video For Download...