Modelos GARCH em R
Kris Boudt
Professor of finance and econometrics
$$ \mu_{t} = \mu + \lambda \sigma^2_{t} $$
$\lambda > 0$ é o parâmetro risco/retorno que indica o aumento do retorno esperado por unidade de risco de variância.
Altere o argumento mean.model em ugarchspec() de list(armaOrder = c(0, 0)) para list(armaOrder = c(0, 0), archm = TRUE, archpow = 2):
garchspec <- ugarchspec(
mean.model = list(armaOrder = c(0, 0)),
variance.model = list(model = "gjrGARCH"),
distribution.model = "sstd")
garchspec <- ugarchspec(
mean.model = list(armaOrder = c(0, 0), archm = TRUE, archpow = 2),
variance.model = list(model = "gjrGARCH"),
distribution.model = "sstd")
Estimação
garchfit <- ugarchfit(data = sp500ret, spec = garchspec)
Inspeção dos coeficientes estimados para a média
round(coef(garchfit)[1:2], 4)
mu archm
0.0002 1.9950
Retornos médios previstos
$$ \hat{\mu}_{t} = 0.0002 + 1.9950 \hat{\sigma}^2_{t} $$
plot(fitted(garchfit))

$$ \mu_{t} = \mu + \rho(R_{t-1} - \mu) $$
$$ \mu_{t} = \mu + \rho(R_{t-1} - \mu) $$
$$ \mu_{t} = \mu + \rho(R_{t-1} - \mu) $$
Especificação e estimação de AR(1)-GJR GARCH com distribuição sst
garchspec <- ugarchspec(
mean.model = list(armaOrder = c(1, 0)),
variance.model = list(model = "gjrGARCH"),
distribution.model = "sstd")
garchfit <- ugarchfit(data = sp500ret, spec = garchspec)
Estimativas do modelo AR(1)
round(coef(garchfit)[1:2], 4)
mu ar1
0.0003 -0.0292
O modelo de Média Móvel de ordem 1 usa o desvio do retorno em relação à média condicional:
$$ \mu_{t} = \mu + \theta(R_{t-1} - \mu_{t-1}) $$
ARMA(1,1) combina AR(1) e MA(1):
$$ \mu_{t} = \mu + \rho(R_{t-1} - \mu) + \theta(R_{t-1} - \mu_{t-1}) $$
MA(1)
garchspec <- ugarchspec(
mean.model = list(armaOrder = c(0, 1)),
variance.model = list(model = "gjrGARCH"),
distribution.model = "sstd")
ARMA(1, 1)
garchspec <- ugarchspec(
mean.model = list(armaOrder = c(1, 1)),
variance.model = list(model = "gjrGARCH"),
distribution.model = "sstd")
Modelos GARCH em R