Kom igångKom igång gratis

Variansanpassning

Volatiliteten i finansiella avkastningar tenderar att uppträda i kluster över tid: perioder av hög volatilitet följs av perioder av lägre volatilitet. Den långsiktiga prognosen är att:

  • när volatiliteten är hög kommer den att minska och återgå till sitt långsiktiga genomsnitt.
  • när volatiliteten är låg kommer den att öka och återgå till sitt långsiktiga genomsnitt.

Vid skattning av GARCH-modeller kan vi utnyttja denna mean reversion-egenskap hos volatilitet med hjälp av variansanpassning (variance targeting). Vi skattar då GARCH-parametrarna så att den långsiktiga volatilitet som GARCH-modellen implicerar är lika med urvalets standardavvikelse.

Låt oss göra detta för EUR/USD-avkastningarna.

Den här övningen är en del av kursen

GARCH-modeller i R

Visa kurs

Övningsinstruktioner

  • Ändra GARCH-specifikationen så att variansanpassning används.
  • Skatta GARCH-modellen.
  • Använd uncvariance() för att beräkna den långsiktiga standardavvikelse som GARCH-modellen implicerar.
  • Kontrollera att detta värde, efter avrundning, är lika med urvalets standardavvikelse.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Complete the specification to do variance targeting
garchspec <- ugarchspec(mean.model = list(armaOrder = c(0,0)),
                        variance.model = list(model = "sGARCH",
                                             ___ = ___),
                        distribution.model = "std")

# Estimate the model
garchfit <- ___(data = EURUSDret, spec = garchspec)

# Print the GARCH model implied long run volatility
sqrt(___(___))

# Verify that it equals the standard deviation (after rounding)
all.equal(sqrt(uncvariance(garchfit)), ___(EURUSDret), tol = 1e-4)
Redigera och kör kod