
Hi,alexios. I try the methods you mentioned. In this case, the sGARCH and eGARCH model can't solve the problem.  However, when I exclude r_{t-1} from the conditional mean function and conditional variance function(still keep r_t), problem is solved.
 
Thanks!
 
 
 


> CC: r-sig-finance@r-project.org
> From: alexios@4dscape.com
> Subject: Re: [R-SIG-Finance] ARMAX, t-GARCH estimation(RUGARCH package)
> Date: Sat, 11 Feb 2012 11:13:16 +0000
> To: ecsniffer@hotmail.com
> 
> It means that the standard errors could not be calculated as a result of not being able to invert the hessian during the post-estimation phase. As explained in the manual and vignette, general failures in the final optimization/post-estimation can generally be approached by changing the solver and/or tweaking the solver.
> Other suggestions:
> - DO use model 'sGARCH' rather than the 'GARCH' model of 'fGARCH' for estimation.
> - Because you include regressors in the variance equation, try to provide a starting parameter for those and also try eGARCH where positivity is guaranteed (possibly the source of the problem).
> 
> Regards,
> Alexios
> 
> 
> On Feb 11, 2012, at 10:44, ecsniffer주얘 <ecsniffer@hotmail.com> wrote:
> 
> > 
> > I use ARMA(4,0), t-GARCH(1,1) model to estimate the volatility series(y_t). In the model, I add rate ( r_t ) and lagged rate( r_{t -1} ) to the conditional mean function and conditional variance function as the exogenous variables.
> > 
> > Here is my code:
> > 
> > data<-read.csv("...")
> > volatility<-data$volatility;
> > volatility.lag<-embed(volatility,2);
> > volatility<-as.matrix(volatility.lag[,1]);
> > rate<-data$diff_rate;
> > rate.lag<-embed(rate,2);
> > spec=ugarchspec(variance.model=list(model="fGARCH",garchOrder=c(1,1),submodel="GARCH", 
> > external.regressors=as.matrix(rate.lag), variance.targeting = FALSE),
> > mean.model = list(armaOrder = c(4,0), include.mean = TRUE, garchInMean = FALSE,
> > inMeanType = 1, arfima = FALSE, external.regressors =as.matrix(rate.lag)), distribution.model = "std",
> > start.pars = list(), fixed.pars = list())
> > fit=ugarchfit(spec,data=volatility)
> > fit
> > 
> > I got some errors and can't figure out the reason. Thanks!
> > 
> > Iter: 1 fn: 2986.4841 Pars: -0.211418971918 0.097905377888 -0.084512900004 -0.053448303895 -0.071041833756 -22.798457638632 16.379426108878 1.626051893520 0.206719227655 0.747514215831 0.000000009905 0.000000009905 4.008451660273
> > Iter: 2 fn: 2986.4841 Pars: -0.211418971919 0.097906631452 -0.084513745760 -0.053447443169 -0.071041878730 -22.797651046488 16.377961083304 1.626059793075 0.206723362776 0.747509647714 0.000000009905 0.000000009905 4.008479595008
> > solnp--> Completed in 2 iterations
> > Warning:
> > In .makefitmodel(garchmodel = "fGARCH", f = .fgarchLLH, data = data, : 
> > rugarch-->warning: failed to invert hessian
> > 
> > Errors in t.default(grad) : Parameters are not the matrix. 
> > [[alternative HTML version deleted]]
> > 
> > _______________________________________________
> > R-SIG-Finance@r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-sig-finance
> > -- Subscriber-posting only. If you want to post, subscribe first.
> > -- Also note that this is not the r-help list where general R questions should go.
 		 	   		  
	[[alternative HTML version deleted]]

