[R-SIG-Finance] Loop For - ARMA+GARCH Model estimation and selection

Andrea Bosio andrea_bosio at rocketmail.com
Sun Oct 16 22:22:59 CEST 2016


Sorry there is a repo.

In my description I wanted to say that the test for the correctness of 
the stz residual distribution is the Pearson Adjusted Chi-Square, not 
the JB.

Apologies.


Il 16/10/2016 21:53, Andrea Bosio via R-SIG-Finance ha scritto:
> Hello,
>
> I would like to put you the other question that I have about how to use
> loops for in R. The first is entitled “Loop For – ARMA model estimation
> and selection”. If you take a look and try to give me an answer to the
> first, I would be extremely thankful. I am an R beginner and I need R
> technical experts’ judgement to conduct my empirical analysis as
> efficiently as I can.
>
> My second question is on how to loop over six variables (a,b,c,d,e) for
> an ARMA+GARCH model estimation.
>
> Here is the function to loop.
>
> USDlogreturns=diff(log(prices))
>
> model<-ugarchspec(variance.model=list(model="fGARCH",submodel="c",garchOrder=c(d,e)),mean.model=list(armaOrder=c(a,b),include.mean=TRUE),distribution.model="f")
>
> modelfit<-ugarchfit(spec=model, data=USDlogreturns, solver="hybrid")
>
> Here is a description of the variables from a to f to be looped.
>
> ·ARMA orders (a,b). Both orders should be allowed to vary between 0 and 10.
>
> ·GARCH version (c). The versions should be allowed to switch from GARCH
> to AVGARCH, GJRGARCH, TGARCH, NGARCH, NAGARCH, APARCH and EGARCH. Note
> that the EGARCH version must be passed directly as “model” to the
> ugarchfit function.
>
> ·GARCH orders (d,e). The d order should be allowed to vary between 1 and
> 2. The e order should be allowed to vary between 0 and 2.
>
> ·Error distribution (f). The error distribution should be allowed to
> switch from Normal Gaussian to Student-T and GED.
>
> The objects to be returned from the loop are the model Akaike
> Information Criterion indicators, the p-values of the ADF test for
> standardized (stz) residual stationarity, the p-values of the Box-Ljung
> tests for stz residual serial uncorrelation and independence and the
> p-values of the Jarque-Bera test for stz residual normality. Here is the
> full list of the objects.
>
> armagarchaic=infocriteria(modelfit)[1]
>
> armagarchadftest=adf.test(modelfit at fit$z,k=trunc((length(modelfit at fit$z)-1)^(1/3)))$p.value
>
> armagarchboxtest=Box.test(modelfit at fit$z,lag=30,fitdf=d+e,type=c("Ljung-Box"))$p.value
>
> armagarchboxtest2=Box.test(modelfit at fit$z^2,lag=30,fitdf=d+e,type=c("Ljung-Box"))$p.value
>
> armagarchgoftest=gof(modelfit,c(20,30,40,50))
>
> P.S. How do you tell R to set (d+e) (i.e. the sum of ARCH and GARCH
> orders) as fitdf in the Box-Ljung test command? Is it right as I typed?
>
> If you also believe that I should run the same model estimation in a
> simpler and efficient way, let me know on how to do that.
>
> Thank you in advance.
>
>
>
> ---
> Questa e-mail è stata controllata per individuare virus con Avast antivirus.
> https://www.avast.com/antivirus
>
> 	[[alternative HTML version deleted]]
>
> _______________________________________________
> R-SIG-Finance at 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.


---
Questa e-mail è stata controllata per individuare virus con Avast antivirus.
https://www.avast.com/antivirus



More information about the R-SIG-Finance mailing list