Attached is a revision of the GregoryHansen procedure which now includes the additional choice of a model with a breaking trend in the cointegrating vector from Gregory and Hansen(1996), "Tests for Cointegration in Models with Regime and Trend Shifts," Oxford Bulletin of Economics and Statistics, vol. 58, no 3, pp 555-560. (The original three choices are from Gregory and Hansen(1996), "Residual-based Tests for Cointegration in Models with Regime Shifts", Journal of Econometrics, vol 70, 99-126.)
The cointegrating regression is allowed to have a trend or not, and can have either a break in the intercept only or a break in all coefficients. The break point t0 is unknown and determined by finding the minimum value for the ADF statistic on the residuals from the broken cointegration regression. The number of lags of the change in the residual used in computing the ADF statistic can either be input, or can be selected automatically using AIC, BIC or general-to-specific pruning by t-tests.
@GregoryHansen( options ) start end
# list of endogenous variables (with dependent variable first)
Options
DET=[CONSTANT]/TREND
BREAK=[INTERCEPT]/ALL
DET chooses the deterministic components in the cointegrating regression. BREAK chooses what components are allowed to a break at the unknown change point. BREAK=ALL has the intercept and slope coefficients and the trend if present.
METHOD=[INPUT]/AIC/BIC/HQ/TTEST/GTOS
Selects the method for deciding the number of additional lags. If INPUT, the number of lags given by the LAGS option is used. If AIC, the AIC-minimizing value between 0 and LAGS is used; if BIC, it's the BIC-minimizing value, if HQ, it's the Hannan-Quinn minimizer, and if TTEST or GTOS (those are synonyms) the number of lags for which the last included lag has a marginal significance level less than the cutoff given by the SIGNIF option.
LAGS=number of additional lags (METHOD=INPUT) or the maximum number of lags to consider (other METHOD's) [number of observations**.25]
SIGNIF=cutoff significance level for METHOD=TTEST [.10]
GRAPH/[NOGRAPH]
GRAPH requests a graph of the unit-root statistics with the different break points
PI=fraction of data range to skip at either end when examining possible break points [.15]
[PRINT]/NOPRINT
TITLE=title for report ["Gregory-Hansen Cointegration Test"]
Variables Defined
| %CDSTAT | unit root test statistic |
| %%BREAKPOINT | entry at which %cdstat is achieved |
| %%AUTOP | number of augmenting lags used |
Example
- Code: Select all
*
* Replication file for Gregory, Allan W. & Hansen, Bruce E., 1996.
* "Residual-based tests for cointegration in models with regime shifts,"
* Journal of Econometrics, vol. 70, no 1, 99-126.
*
* Example from Bruce Hansen's web site.
*
open data gregoryhansen.rat
calendar(q) 1959:1
*
* M1 and TBILLS are monthly data. M1 is compacted by quarterly averages,
* while TBILLS select the 3rd month of the quarter.
*
data(format=rats,compact=average) 1959:01 1990:04 nomnnp realnnp m1
data(format=rats,select=3) 1959:01 1990:04 tbills
*
set deflator = nomnnp/realnnp
set realm1 = m1/deflator
*
set logm1 = log(realm1)
set loginc = log(realnnp)
*
@GregoryHansen(lag=6,method=ttest,det=constant,break=all,graph)
# logm1 loginc tbills
Output
- Code: Select all
Gregory-Hansen Cointegration Test
Variables
LOGM1
LOGINC
TBILLS
Full Structural Break. No Trend
With 6 lags chosen from 6 by GTOS/t-tests(0.100)
Minimum T-Statistic -4.592
Achieved At 1976:02
1% Critical Value -5.970
5% Critical Value -5.500
