1

这是我在这里的第一篇文章,所以我不太确定如何在这里提出问题,但我会尽力预测每日汇率的密度,我选择欧元/美元作为我想要的货币对预测。我正在使用 GARCH 模型进行预测。我已经使用“rugarch”包完成了我的编码。代码看起来像这样

> ex1 <- as.xts(DEXUSEU) #DEXUSEU is the daily data of exchange rates
> ex2 <- ex1[!is.na(ex1)] 
> lex2 <- 100*log((ex2[2:Nd,])/(ex2[1:(Nd-1),])) #taking log differences, it 
  has 4496 observations



> model1=ugarchspec (variance.model = list(model = "sGARCH", garchOrder = c(1, 
  1), submodel = NULL, external.regressors = NULL, variance.targeting = 
  FALSE),mean.model = list(armaOrder = c(0, 0), include.mean = TRUE, 
  archm = FALSE, archpow = 1, arfima = FALSE, external.regressors = NULL, 
  archex = FALSE),distribution.model = "std") #specifying garch model with 
  student t distribution


> modelfit1=ugarchfit(model,data=lex2,out.sample = 2000) #fitting model


> modelroll1=ugarchroll (
  model1, data=lex2, n.ahead = 1, forecast.length = 2000,
  n.start = NULL, refit.every = 50, refit.window = c("rolling"),
  window.size = NULL, solver = "hybrid", fit.control = list(),
  solver.control = list(), calculate.VaR = TRUE, VaR.alpha = 0.01,
  cluster = NULL, keep.coef = TRUE) #doing rolling window forecast

> plot(modelroll1,which=1)

这就是密度预测的样子,我很确定这里有问题,它不应该是这样的:

在此处输入图像描述

任何人都可以帮助并告诉我我做错了什么。如果需要,我可以提供额外的数据/信息。我只是不确定还能提供什么,因为这是我在这里的第一篇文章。任何形式的帮助将不胜感激。

4

0 回答 0