[R-SIG-Finance] Update of rugarch package yields different results / questions on stationarity conditions

Alexios Ghalanos alexios at 4dscape.com
Wed Sep 24 21:13:53 CEST 2014


I'll need to check what you sent me then against the changes made. As for being irritated (and saying so publicly)...well, I've strived over the years to produce an open source alternative for GARCH modelling with very few contributions, but many requests for help both publicly and privately. Perhaps you'll be less irritated buying an off the shelf program with paid support.

Alexios

> On 24 Sep 2014, at 22:02, <Stefan.Jaeschke at rwe.com> wrote:
> 
> Alexios, you provided me with this estimates back in a mail on Tues. 29.10.2013 13:46. And I could reproduce those values, now I am a bit irritated. Unfortunately, I am not able to rebuilt the "old" rugarch version.
> 
> -----Ursprüngliche Nachricht-----
> Von: alexios ghalalanos [mailto:alexios at 4dscape.com] 
> Gesendet: Mittwoch, 24. September 2014 19:47
> An: Jäschke, Stefan; r-sig-finance at r-project.org
> Cc: alexios at 4dscape.com
> Betreff: Re: [R-SIG-Finance] Update of rugarch package yields different results / questions on stationarity conditions
> 
> If I were to actually use your previous estimates and filter the data you provided:
> 
> 
>> cf=list(mxreg1=-0.3644,
> omega=-0.3081,
> alpha1=-0.1288,
> alpha2=-0.1308,
> gamma1=0.2575,
> gamma2=0.2340,
> beta1=-0.6917,
> beta2=0.9764,
> beta3=0.6738,
> skew=0.9659,
> shape=1.9107)
> 
>> setfixed(spec)<-cf
>> likelihood(ugarchfilter(spec, nrenditen))
> [1] 1051.357
> 
> This seems much lower and considerably far from what the estimated model gives. Are you sure you provided us with the correct parameter values and the same dataset you used before?
> 
> -Alexios
> 
> 
>> On 24/09/2014 20:29, alexios ghalalanos wrote:
>> Unless you tell us what the previous version you had installed was, I 
>> really can't say for sure.
>> 
>> 1. Is for the stationarity of the eGARCH model.
>> 2. Are the parameter bounds.
>> 
>> You are free to change both:
>> 1. can be switched off by setting fit.control$stationarity=0 2. can be 
>> changes to whatever you want by using the setbounds<- method on the 
>> specification.
>> 
>> As far as I know, you can take the ARMA and GARCH stationarity 
>> conditions separately, as you can also estimate them in 2 steps 
>> without too much loss in efficiency. If you want to see the degree of 
>> interaction between the 2, then use the ugarchdistribution method 
>> which includes a number of interesting parameter interaction plots 
>> (and you can also investigate others by working with the returned 
>> parameter distribution data).
>> 
>> If you feel there is some bug somewhere in the code or you have some 
>> suggestion how to make the estimation of a certain model 'better', 
>> then by all means feel free to contribute a detailed patch.
>> 
>> -Alexios
>> 
>> 
>>> On 24/09/2014 20:01, Stefan.Jaeschke at rwe.com wrote:
>>> Hi there,
>>> 
>>> 
>>> 
>>> 1)     I have recently updated the rugarch package to version 1.3-3 (I
>>> do not remember the previous number) and I am surprised to see 
>>> different results when fitting a dataset, the loglikelihood is lower 
>>> than before and the beta parameters have changed significantly. Below 
>>> I put the code from the fit
>>> 
>>> 
>>> 
>>> Data <- read.csv("WTI_logreturnsUS.csv", header = TRUE, sep = ";", 
>>> dec=".")
>>> 
>>> renditen <- Data$LogReturnsWTI
>>> 
>>> Data_WTI <- renditen
>>> 
>>> nrenditen = renditen - mean(renditen)
>>> 
>>> external <- Data$LogReturnsStocks
>>> 
>>> dim(external) <- c(length(external),1)
>>> 
>>> mean_WTI <- mean(renditen)
>>> 
>>> 
>>> 
>>> spec = ugarchspec(variance.model = list(model = "eGARCH", garchOrder 
>>> = c(2,3), submodel = NULL, external.regressors = NULL, 
>>> variance.targeting = FALSE), mean.model =list(armaOrder = c(0, 0), 
>>> include.mean = FALSE, external.regressors = external), 
>>> distribution.model = "sged")
>>> 
>>> fit <- ugarchfit(spec,nrenditen)
>>> 
>>> 
>>> 
>>> 
>>> 
>>> likelihood         2326.425          2319.141
>>> 
>>> 
>>> 
>>> mxreg1             -0.3644             -0.3124
>>> 
>>> omega              -0.3081                -0.0474
>>> 
>>> alpha1              -0.1288                -0.1090
>>> 
>>> alpha2              -0.1308                0.0644
>>> 
>>> gamma1           0.2575                  0.2189
>>> 
>>> gamma2           0.2340                  -0.1441
>>> 
>>> beta1                -0.6917             0.9999
>>> 
>>> beta2                0.9764              0.4135
>>> 
>>> beta3                0.6738              -0.4199
>>> 
>>> skew                0.9659             0.9708
>>> 
>>> shape               1.9107              1.9373
>>> 
>>> 
>>> 
>>> Why do I see these differences?
>>> 
>>> 
>>> 
>>> 2)     Why do we need the following two conditions for strict
>>> stationarity of an EGARCH(q,p) model? I do refer to the ARMA 
>>> representation in Nelson (1991), Equation (2.3)
>>> 
>>> 
>>> 
>>> a)     min(Mod(polyroot(c(1, -betas)))) > 1
>>> 
>>> 
>>> 
>>> b)    |beta_i| < 1, i = 1,.,p
>>> 
>>> 
>>> 
>>> Whereas condition a) is clear to me (stationarity of AR processes), I 
>>> don't see we should restrict the parameter |beta_i| < 1. Could 
>>> somewhen help on that? Why are the parameters regarding q not 
>>> involved in the conditions at all?
>>> 
>>> 
>>> 
>>> 3)     In general, I am aware of conditions for stationarity for
>>> conditional mean processes (e.g. ARMA-models) or conditional variance 
>>> processes (e.g. GARCH-models). I am struggling a bit to find 
>>> sufficient conditions for (strikt) stationarity in case of 
>>> combinations. For instance, an ARMA(1,0)-GARCH(1,1) or 
>>> ARMA(0,1)-EGARCH(2,3) model. Can I take the conditions for 
>>> mean/variance separately and join them in the end? They should 
>>> interact somehow, shouldn't they? If anybody could help me on that, I would be very pleased.
>>> 
>>> 
>>> 
>>> Many thanks in advance!
>>> 
>>> 
>>> 
>>> Mit freundlichen Grüßen / Kind regards
>>> 
>>> 
>>> 
>>> *Stefan Jäschke*
>>> 
>>> RWE Supply & Trading GmbH
>>> 
>>> Performance Controlling CAO Gas & VAC (MFC-GV)
>>> 
>>> Altenessener Str. 27
>>> 
>>> 45141 Essen
>>> 
>>> Germany
>>> 
>>> Phone                      +49 201 5179-1674
>>> 
>>> Email                      stefan.jaeschke at rwe.com
>>> <mailto:stefan.jaeschke at rwe.com>
>>> 
>>> ____________________________________________________
>>> 
>>> 
>>> 
>>> Supervisory Board: Peter Terium (Chairman)
>>> 
>>> Management Board:
>>> Stefan Judisch (CEO),
>>> Dr Markus Krebber, Alan Robinson
>>> Headquarters: Essen
>>> Registered at Local District Court, Essen Commercial Registry No.: 
>>> HRB 14327 Sales Tax ID No.: DE 8130 22 070
>>> 
>>> 
>>> 
>>> Please consider the environment before printing this e-mail
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> 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.
> 
> _______________________________________________
> 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.
> 



More information about the R-SIG-Finance mailing list