Why do I get p value equal or very close to 1 with the dummy variable incorporated into the variance model using the rugarch package?

  Kiến thức lập trình

I have datasets for the daily change in stock price for 11 industries in U.S. I want to test whether the volatility is significantly different in the election period, so I also create a dummy variable that equal 1 during the election week. I incorporate the election dummy in the variance model in the tgarch model. However, I keep randomly get p value equals or very close to 1 for the election dummy, but for some industry the output is normal. I have tried both garch(1,1) and tgarch(1,1) for the year of 2004, 2008, 2012, and 2016. The industry that get p value of 1 is completely random and I don’t know what could go wrong with my code.

Hello, I have datasets containing daily changes in stock prices for 11 industries in the U.S. I aim to examine whether the volatility significantly differs during election periods. To this end, I’ve created a dummy variable that equals 1 during election weeks. I’ve incorporated this election dummy into the variance model within the GARCH framework. However, I keep getting p-values equal to or very close to 1 for the election dummy variable. Interestingly, for some industries they yield normal output while others do not.

I’ve experimented with both GARCH(1,1) and TGARCH(1,1) models across the years 2004, 2008, 2012, and 2016. The occurrence of p-values equal to 1 seems random across industries, and I’m unsure what might be causing this issue in my code.

My code is as following:

tgarch_2004 <- data.frame(matrix(ncol = 11, nrow = 6))
colnames(tgarch_2004) <- c("Communications", "Consumer.Discretionary", "Consumer.Staples", "Energy", "Financials", "Health.Care",
                         "Industrials", "Materials", "Real.Estate","Technology", "Utilities")
rownames(tgarch_2004) <- c("mu", "omega", "alpha1", "beta1","eta", "Election")

#fit GARCH(1,1)
model_garch_exo <- ugarchspec(variance.model = list(model = "fGARCH",submodel = "TGARCH", garchOrder = c(1, 1), 
                                                    external.regressors = matrix(cbind(df$Election), ncol = 1)), 
                              mean.model = list(armaOrder = c(0, 0), include.mean = TRUE), 
                              distribution.model = "norm")
#output
for (col in industry_list) {
  mod_fitting <- ugarchfit(spec = model_garch_exo, data = df[[col]])
  tgarch_2004[[col]] <- mod_fitting@fit$robust.matcoef[,4]
}

Thank you for your time and help!

New contributor

user25084268 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.

LEAVE A COMMENT