I don't have a solution but I receive the same error when trying to fit a GARCH model using the garchFit in the fGarch package.
Kevin ---- Desislava Kavrakova <[EMAIL PROTECTED]> wrote: > Hello everyone, > I'm trying to estimate the parameters of the returns series attached using > the GARCH code below, but I get the following error message: > > > Error in solve.default(Hessian) : > system is computationally singular: reciprocal condition number = 0 > Error in diag(solve(Hessian)) : > error in evaluating the argument 'x' in selecting a method for function > 'diag' > > Can anyone help me with this? I don't understand what the problem is. > > Many thanks, > Desislava Kavrakova > > > Code: > > garchfitS<-function(x){ > x<<-ts(x) > r<<-0.05/365 > n<<-length(x) > > Mean = mean(x); Var = var(x); S = 1e-6 > param = c(alpha0 = Var, alpha = 0.1, beta = 0.8) > lowerB = c(alpha0 = S^2, alpha = S, beta = S) > upperB = c(alpha0 = 100*Var, alpha = 1-S, beta = 1-S) > > llh<-function(p){ > alpha0<-p[1] > alpha<-p[2] > beta<-p[3] > hh<-Var > for (i in 2:n){ > hh[i]<-alpha0+alpha*(x[i-1]-r+0.5*hh[i-1])^2+beta*hh[i-1] > } > hh<-ts(hh) > h<-sqrt(abs(hh)) > z<-(x-r+0.5*hh)/h > -(-(sum(0.5*(log(hh[2:n])+(z[2:n])^2)))) > } > > fit<-nlminb(param, llh, lower=lowerB, upper=upperB) > Hessian<-hessian(llh,fit$par) > se.coef = sqrt(diag(solve(Hessian))) > tval = fit$par/se.coef > matcoef = cbind(fit$par,se.coef, tval, 2*(1-pnorm(abs(tval)))) > dimnames(matcoef) = list(names(tval), c(" Estimate", > " Std. Error", " t value", "Pr(>|t|)")) > printCoefmat(matcoef, digits = 6, signif.stars = TRUE) > } > > > ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.