Realized GARCH estimation problem
Realized GARCH estimation problem
Loading saved threads...
Crib · External communityPost link
External question — Cross Validated Stack Exchange
Author: Crib
Original post: https://stats.stackexchange.com/questions/544280
License: CC BY-SA 4.0 — https://creativecommons.org/licenses/by-sa/4.0/
Adaptation: HTML converted to plain text; contact email addresses removed.
I'm trying to produce one-day ahead volatility forecasts for Bitcoin with Realized GARCH(1,1) using the
rugarch
package in R. The realized variance(
data$rv5
) is aggregated based on a 5 minute frequency, and the returns(
data.xts$ret
) are close-to-close. Here's the specs and result:
rgarch.spec<- ugarchspec(mean.model = list(armaOrder= c(0,0),
include.mean = FALSE),
variance.model = list(model= 'realGARCH',
garchOrder= c(1,1)),
distribution.model = 'norm')
rgarchroll<- ugarchroll(spec = rgarch.spec,
data= data.xts$ret,
n.ahead = 1,
forecast.length = forecast_len,
refit.every = 5,
solver= 'hybrid',
realizedVol= data.xts$rv5,
VaR.alpha = c(0.01, 0.05, 0.10))
where
realized_vol= sqrt(tail(data.xts$rv5, forecast_len)),
rgarch.prediction_vol= rgarchroll@forecast$density$Sigma)
As you can see, the predicted volatility is consistently higher than the realized volatility. Needless to say, the VaR predictions are not accurate at all. However, the standard GARCH(1,1) model works fine using the same return data. So what could possibly be the issue?
Also, I found a another tread discussing a similar problem(
GARCH(1,1) volatility forecast looks biased, it is consistently higher than Parkinson's HL vol
). However, I don't really see how the answer applies to this case as there are no non-trading hours for Bitcoin.
Quote
Report
Stefan · External communityPost link
External answer — Cross Validated Stack Exchange
Author: Stefan
Original post: https://stats.stackexchange.com/a/572915
License: CC BY-SA 4.0 — https://creativecommons.org/licenses/by-sa/4.0/
Adaptation: HTML converted to plain text; contact email addresses removed.
I had the same issue. The program rgarch uses variable types as percentages, see
https://www.r-bloggers.com/2014/01/the-realized-garch-model/
Try to multiply the returns data.xts$ret and realized volatility with 100 then it should work.
Quote
Report
Post Reply
Quoted from Forex.com.bd-Editorial External answer — Cross Validated Stack Exchange Author: Stefan Source score (net votes, not local likes): -1 Original post: https://stats.stackexchange.com/a/572915 License: CC BY-SA 4.0 — https://creativecommons.org/licenses/by-sa/4.0/ Adaptation: HTML converted to plain text; contact email addresses removed. I had the same issue. The program rgarch uses variable types as percentages, see https://www.r-bloggers.com/2014/01/the-realized-garch-model/ Try to multiply the returns data.xts$ret and realized volatility with 100 then it should work.
Checking account access…