Automated General-to-Specific (GETS) modelling of the mean and variance of a regression, and indicator saturation methods for detecting and testing for structural breaks in the mean.
CITATION added
Minor changes to documentation
new package dependency: 'parallel'
isat:
new function: getsFun. Computationally efficient GETS-modelling with - optionally - user-defined estimation, and - optionally - user-defined diagnostics. In the future, getsm() and isat() will be re-written so that they call and rely on getsFun()
new function: infocrit. Essentially equal to info.crit, but the main argument is a list (typically an estimation object, e.g. produced by ols())
new S3 method: gets
getsv:
the R version dependency changed to >= 3.3.0
fix of minor issue in print.gets, which occurred when no search was undertaken
ES, VaR: new extraction functions for arx, gets and isat objects. The former extracts the conditional Expected Shortfall (ES) for the chosen risk level(s), whereas the latter extracts the conditional Value-at-Risk (VaR).
arx:
fitted.isat: new argument, spec, which works in the same way as for arx and gets objects
predict.isat: when applied to isat-objects with retained indicators (impulse, step, trend), it is not necessary anymore to include indicator-values in the newmxreg argument (the out-of-sample indicator-values are automatically generated)
eviews, stata: their messages can now also be suppressed with the suppressMessages() command, in addition to print=FALSE
diagnostics: several new arguments in order to accommodate user-defined diagnostics
arx, getsm, getsv and isat: now accepts user-defined diagnostics via a new argument, user.diagnostics, see help(diagnostics)
ols, arx, getsm, getsv, isat, recursive: the way ols-estimation is implemented via the qr-decomposition has been modified for greater numerical stability
recursive, getsm, getsv, isat: messages and search-info during search can now be suppressed with the suppressMessages() function
plot.arx: now returns a warning if applied to an arx-object with no estimation results
new S3-method: sigma, i.e. the standard error of regression, which can be applied to arx, gets and isat objects
new extraction function: rsquared. The function returns the R-squared of the regression, and the function can be applied to arx, gets and isat objects
print.arx: now also returns the standard error of regression
print.gets, print.isat:
getsv: the argument 'verbose' was deleted
stata: a fix in the variable-naming
Deleted function: jb.test
predict.gets, predict.isat
isvarcor, isvareffcor
now possible to use consistency correction (for the variance estimate) as well as the efficiency correction (for fixed regressors) when using IIS (see Johansen and Nielsen 2016)
isatvar can now compute the (approximate variance and) coefficient path of user-specified variables
biascorr: improved/new feature
arx:
predict.arx: new arguments (return and plot.options), improved plotting and improved handling of regular zoo-indices
arguments ar, mxreg, arch, asym and vxreg, whose defaults are NULL, now also accepts FALSE as argument value (does the same as NULL)
print.arx: new argument, signif.stars, with default value FALSE
getsm, getsv, isat: minor changes to the printing during search (in particular, search-paths now printed sideways)
iim, sim, tim: prettier index-handling of the column/regressor-names whenever the argument is a strictly regular time series with frequency equal to 1, e.g. a yearly time-series
Fixes:
several issues related to the use of the uis argument (most of the issues occurred in situations where uis contained few regressors)
minor change to the algorithm determining the number of blocks (in order to avoid very small blocks)
print.arx, print.gets, print.isat: minor stylistic changes
info.criterion: improved help-manual
arx: the log.ewma argument can now either be a vector containing the lengths, or a list with an entry named length (that contains the vector of lengths). The lag entry lag, which was previously available when log.ewma is a list, has been deprecated (lag is always equal to 1).
predict.arx:
can now be applied on arx-objects where log.ewam is not NULL
n.ahead: new default value, 12
new argument: newindex
print.arx: improved handling of regular time-indices
isat: t.pval can now be extracted using aux$t.pval on an isat object
Fixes:
predict.arx: now works when a log-arch specification has been fitted with arch=NULL
a zoo-object x is considered to be regular if is.regular(x, strict=TRUE) is TRUE. Previously, x was considered regular if is.regular(x, strict=FALSE) was TRUE.
isattest: bias-correction (biascorr=TRUE) now works when t.pval is specified as a variable in the initial isat model.
Minor change in the object returned by isat: The entry aux$mX now has column-names equal to aux$mXnames (in version 0.5 colnames(aux$mX) was NULL)
Fixes:
paths, terminals: documentation and help-files for these functions are now included (the help-files were inadvertedly excluded in version 0.5 due to an error in the paths.Rd file)
DESCRIPTION file: The BugReports field was changed to http://stackoverflow.com/questions/tagged/r
isat: isat-objects are now formally established as a separate class (formerly they were of class 'gets'). The S3-methods available for gets-objects are also available for isat-objects (i.e. coef, fitted, logLik, plot, print, residuals, summary and vcov). The gets-extraction functions paths and terminals, and the arx-extraction function recursive, can also be applied on isat-objects.
predict: new extraction function (S3-method) for arx-objects
logLik: new extraction function (S3-method) for gets and isat objects
periodicdummies: new auxiliary function that creates a matrix with periodicity dummies (e.g. seasonals) for regular time series. The function is similar to - but more general than - the seasonaldummy function in the forecast package.
sim, iim, tim, recursive: improved handling of the time index when a time-series is regular
getsm, getsv, isat: the default value of the wald.pval argument was changed to t.pval
eviews, stata: minor stylistic changes in the printing whenever file is not NULL
Fixes:
arx: regressors in mxreg can now contain fewer non-NA observations than the regressand (this is automatically adjusted for) at the beginning and at the end of the series
recursive: the value of vconst (the intercept in a log-arch model) is now correctly computed. Earlier, the adjustment value E(ln z^2) was added rather than subtracted
getsm: now correctly computes the number of non-NA observations for the log-likelihood when a log-arch is fitted. The error did not affect the comparison between terminal models nor the logLik.gets function
plot.gets: now returns a plot when no mean-specification is fitted (it did not do so in versions 0.3 and 0.4)
logLik.arx: now correctly specifies the conditional variance to compute the log-likelihood. The error did not affect the getsv, getsm nor isat functions, only the log-likelihood value reported when printing the results via print.arx.
recursive: new exctraction function for arx-objects. The function returns the recursive coefficient estimates together with their standard errors, and plots the recursive estimates. The function can also be applied to gets and isat objects, as long as a final model is estimated
eviews, stata: new utility functions that can be applied on arx, gets and isat objects. Provides utilities and generates code that facilitates exporting the estimation results to EViews and Stata, respectively.
ols: four new estimation methods have been added. Three of them correspond to different variance-covariance matrices, whereas the fourth can be user-specified.
isat: step-indicator saturation is now the default. That is, the default value of iis was changed to FALSE, and the default value of sis was changed to TRUE.
Fixes:
logLik.arx: new extraction function (S3 method) for arx objects
vcov.type accepts a new option, "newey-west", i.e. the covariance matrix of Newey and West (1987)
plot.arx: the order of the arguments have been changed (spec is now the second argument)
The default block-determining rule, i.e. when blocks=NULL, has been changed in order to avoid large blocks in large samples (the change speeds up selection notably)
The argument tis, with default FALSE, has been added. If TRUE, then search over trend-indicators is undertaken.
The argument uis, with default FALSE, has been added. It permits the user to provide a user-specified matrix, or list of matrices, to search over.
The argument blocks, whose default value is NULL, now also accepts a user-specified list of the blocks to search over
iim, sim, tim: new utility functions. The first creates a matrix of impulse indicators, the second a matrix of step indicators and the third a matrix of trend indicators.
isatvar:
Now reports the coefficient path (against the full sample coefficient and the intercept path itself)
Reports the long-run mean with its variance and standard deviation if specified and the input includes AR terms
biascorr, isattest: new auxiliary functions; called when the output from an isat object is plotted
deleted function: skewness.test. This function was required by AutoSEARCH (i.e. the predecessor of gets), but is not used by gets. As of April 2015, AutoSEARCH does not depend on gets anymore, so the function is redundant.
The main change to version 0.2 is the addition of the isat function, which is a result of an initiative from Felix Pretis and James Reade. The isat function provides indicator saturation methods (impulses, steps) and is a major new feature of the gets package. To accommodate the new feature numerous minor and major changes have been made throughout. Some of these are:
plot.arx, plot.gets: new S3 functions
isatvar: new auxiliary function called by plot.gets when applied to a gets object resulting from isat
dropvar: new function. The function removes the regressors in a regressor matrix that cause exact multicolinearity. The code is based on the drop.coef function from the ordinal package by Rune Haubo Bojesen Christensen.
diagnostics: new function
deleted functions: glog.ep, regs.mean, regs.var
broken dependency: the gets package does not depend on lgarch anymore (regs.mean and regs.var called functions in the lgarch package)
getsm: major speed improvements when the log-variance specification is empty
getsm/getsv/arx: new arguments, including plot for all three, and print.searchinfo and include.gum for the first two
Fixes:
arx: bugfix of mxreg and vxreg arguments. The bug consisted in erroneous regressor labelling whenever mxreg and/or vxreg were 1-column matrices (or vectors). The bug also affected the getsm and getsv functions.
getsm:
bugfix in vcov.type argument which occurred for shortened versions of "ordinary" and "white", e.g. "o" or "w"
bugfix in do.pet argument, which occurred when it was set to FALSE
All versions until 1.0 should be considered Beta-versions.
The package is based on code from AutoSEARCH (also available on the CRAN), but entails a shift in the underlying development principles. The main motivation behind gets is improved user-friendliness, faster and simpler code, and a package that is easier to extend. The most important differences are:
creator of objects of class 'arx'
extraction functions (S3 methods) have been added
several arguments have been changed and/or removed
numerous minor (and some major) changes throughout the code
both return objects of class 'gets'
the main argument is an object of class arx (this improves user-friendliness considerably compared with AutoSEARCH)
extraction functions (some of them S3 methods) have been added
several arguments have been changed and/or removed
numerous minor (and some major) changes throughout the code
gedlogl and gedestp functions deleted
all model comparisons are now in terms of the normal log-likelihood made up of the residuals and the fitted variance
gLag has been deleted; instead, glag from the lgarch package is used
ols.fit1 and ols.fit2 have been deleted and replaced with the function ols
regs.mean.sm and regs.vol.sm have changed names to regs.mean and regs.var, respectively
bug fix in eqwma and leqwma (ocurred when p=1)
numerous minor, and some major, changes have been made throughout the code