Skip to content

Win Genhol

Component ID: #ti1031271240

The Win Genhol program creates holiday regressors using the same procedure as X-13ARIMA-SEATS uses to create regressors for the U. S. holidays of Easter, Labor Day, and Thanksgiving. Separate regressors can be generated for the effect in intervals before and after-holidays, as well as an intermediate effect around the holiday. More than one holiday can be specified, and the user can center these regressors using either their overall means or their calendar-month means (calendar-quarter means in the case of regressors for modeling quarterly data or calendar-bimonthly means in the case of regressors for modeling bimonthly data).

The program serves as an interface to the Genhol utility that has been distributed for some time. The stand alone version of this utility is also available from this website, but must be run from a command window.

X-13ARIMA-SEATS commands can be generated to allow the user to easily use these regressors in a regARIMA model for an X-13ARIMA-SEATS run. For more details on specific options for user-defined regressors, go to the section on the regression spec in U. S. Census (2015).

Holiday effects for flow and stock time series can be generated with this software.

Files for some holidays are available from this website in the download section below. For holidays whose dates are not available, the user must supply an ASCII (text) file of dates.

System requirements for the Win Genhol program, as well as installation instructions, can be found in the Win Genhol documentation, available on this website.

Expand All

Collapse All
Component ID: #ti667800290

The Genhol utility that is at the heart of the Win Genhol software takes its input from an input file. The general syntax of this file is similar to that of X-13ARIMA-SEATS's input specification file, see below:

    spec1{
            argument = value
    }
    spec2{
            argument = value
    }

There are two types of "specs": a global spec (to specify global options) and holiday specs (to specify options for each of the holidays for which user-defined regressors are to be generated). The global spec should appear first in the input file.

Documentation for the arguments that can be specified in the global spec is given below.

Possible arguments for the global spec

Argument Description
numhol = n Denotes the number of separate holidays to be specified by the user later in this file. The default is 1.
outfile = name Filename (with extension) where the holiday regression variables will be stored. This argument must be specified; there is no default.
outspec = name Filename (with extension) where a regression spec will be stored that uses the user-defined regression variables generated by this program. If not specified, this file will not be generated.
first = nnnn Denotes the first year that will be saved in the output file. The default is the first year common to all the data files specified by the infile argument of subsequent holiday specs.
last = nnnn Denotes the last year that will be saved in the output file. The default is the final year common to all the data files specified by the infile argument of subsequent holiday specs.
firstmean = nnnn Denotes the first year used in the calculation of the means of the holiday regressors. The default is the first year common to all the data files specified by the infile argument of subsequent holiday specs.
lastmean = nnnn Denotes the last year used in the calculation of the means of the holiday regressors. The default is the final year common to all the data files specified by the infile argument of subsequent holiday specs.
period = n Denotes the seasonal period assumed for the holiday regression variables being generated and stored. Only three values are allowed for this argument : period=12 (to generate regressors for monthly time series), period=6 (to generate regressors for bimonthly series), and period=4 (to generate regressors for quarterly series). The default is 12.
type = string Denotes the type of variable that will be produced. If type = count, the count of the number of days found in the holiday window for a given observation is output. If type = ratio, the ratio of the number of days in the holiday window for a given observation is output. The default is type = ratio.
stockday = n Denotes the stock day for an inventory series, that is, the day when inventory is taken for a given month. This can only be specified for monthly series, and can only take the values of 1 to 31 (ie, 1 ≤ stockday ≤ 31). An end-of-month inventory regressor is generated when stockday = 31. The default is to assume that the holiday generated will be for a flow series rathen than an inventory series.

Note that the file specified in outfile is where the regression variables will be stored; the file specified in outspec is where arguments for the X-13ARIMA-SEATS regression spec will be stored that can read and process the regression variables stored in outfile.

After the global spec, there should be as many holiday specs as specified in the numhol argument of the global spec. These specs should be numbered (ie, holiday1, holiday2, etc.).

The arguments for the holiday specs are given below.

Possible arguments for the holiday spec(s)

Argument Description
name = string Name of the holiday. This name should not have any spaces (this name will be used in the regression spec generated by the program to distinguish between different holiday regressors), and should be less than 16 characters long. Default is the spec name (holiday1, holiday2, etc.).
infile = name Specifies the filename (with extension) where the holiday dates used to generate the holiday regressors are stored. Each date consists of a month, day, and four digit year separated by white space or tabs (example: 1 1 1990 for January 1, 1990), and each date should appear on its own line. This is a required entry.
begbefore = n Denotes the position relative to the holiday of the beginning of the window used to generate the before-holiday regressor. This value should be negative, and less than or equal to the value for the endbefore argument. The minimum value that can be specified is -42.
endbefore = n Denotes the position relative to the holiday of the end of the window used to generate the before-holiday regressor. This value should be negative.
begafter = n Denotes the position relative to the holiday of the beginning of the window used to generate the after-holiday regressor. Since this effect occurs after the holiday, the value should be non-negative.
endafter = n Denotes the position relative to the holiday of the end of the window used to generate the after-holiday regressor. This value should be positive, and greater than or equal to the value for the begafter argument. The maximum value that can be specified is 49.
center = string Specifies the removal of the (sample) mean or the seasonal means from the user-defined regression variables. If center = mean, the mean of the user-defined holiday regressor is subtracted from the regressor. If center = calendar, means for each calendar month (or quarter or bimonth) are subtracted from each of the user-defined holiday regressors. If this argument is not specified, the user-defined regressors are not modified.
zerobefore = nnnn Defines the year before which all values in the regressor are set to be zero. If this argument is set, first < zerobefore ≤ last, and if zeroafter is set, then zerobefore < zeroafter.
zeroafter = nnnn Defines the year on or after which all values in the regressor are set to be zero. If this argument is set, first < zeroafter ≤ last, and if zeroafter is set, then zerobefore < zeroafter.

In general, here are some guidelines for choosing which options to specify, depending on the type of effect you wish to estimate.

  • To specify a regressor to estimate an effect before a holiday, the user must specify both the begbefore and endbefore arguments of the holiday spec.
  • In general, -42 ≤ begbefore ≤ endbefore < 0.
  • To specify a regressor to estimate an effect after a holiday, the user must specify both the begafter and endafter arguments.
  • In general, 0 < begafter ≤ endafter ≤ 49.
  • An interim regressor, using a window around a given holiday, will also be generated when the user specifies values for both the endbefore and begafter arguments. This effect will use a window that starts one position after the position given by endbefore and ends one position before the position given by begafter. There must be at least two observations in this window for the interim effect regressor to be generated.
  • If only the interim regressor is desired, the user should specify just the begafter and endbefore arguments.

Component ID: #ti708815964

Running the stand alone Genhol program

To run Genhol, enter the following command in a (DOS) command prompt:

genhol infile

where infile is a file that contains the options for Genhol specified above.

Component ID: #ti33264288

Note that this program is distributed using ZIP compressed files. A separate utility that can extract ZIP files is required if your operating system (versions of Windows® before Windows 2000) does not provide one, such as the ZIP Reader from PKWARE®.

Licensing information for this and other software distributed from this site can be found here:

Component ID: #ti1653897988

Below are links related to Version 1.0, Build 2 of Win Genhol and Version 1.0, Build 8 of Genhol.

The following files are available for downloading at this time:

Contains all files for Version 1.0 Build 2 of Win Genhol, all within a wingenhol subdirectory.
Last update: September 29, 2015

Documentation for Win Genhol.
Last update: September 29, 2015

pdf   wingenholdoc.pdf   [<1.0 MB]

Examples for Win Genhol.
Last update: September 29, 2015

Contains genhol.exe, a DOS program that generates user-defined holiday regressors for use with the X-13ARIMA-SEATS program; easter500.txt, an ASCII text file with the dates of Easter for the 500 year period from 1600 to 2099, and input files containing the first three examples from this page in a subdirectory named genhol.
Last update: September 29, 2015

zip   genhol_V1.0_B8.zip   [<1.0 MB]

An ASCII text file with the dates of Easter for the 500 year period from 1600 to 2099.
Last update: December 18, 2009

txt   easter500.txt   [<1.0 MB]
Component ID: #ti91020738

Note that this site also contains pages with a listing of Easter dates from 1600 to 2099 and the frequency of each Easter date, as well as other files related to the Easter holiday. This information can be found under the Documentation section of this page.

Component ID: #ti1057509929

NOTE: The Genhol program was written with the Icon programming language, with special routines provided by the Icon program library. For more information on Icon, see Griswold and Griswold (1996).

The source code for this program is available upon request to the person listed under Support for Genhol. This can be useful if a version of the software is required for other operating systems, such as Linux.

Component ID: #ti1763687071

The frequencies given were used to generate mean values for the Easter regressor in the most recent release of X-13ARIMA-SEATS.

Papers cited on this site include:

Other papers of interest:

Component ID: #ti734328866

For support with the Win Genhol program, contact Demetra Lytras at any one of the following:
email: demetra.p.lytras@census.gov
Phone: (301) 763-7426

For general support of the Genhol program, contact Brian C. Monsell at any one of the following:
email: brian.c.monsell@census.gov or x12@census.gov
Phone: 301-763-1721 (or 301-763-1643)
FAX: 301-763-8399

X
  Is this page helpful?
Thumbs Up Image Yes    Thumbs Down Image No
X
No, thanks
255 characters remaining
X
Thank you for your feedback.
Comments or suggestions?