FLUX Procedure |
@FLUX is a general procedure for implementing the fluctuations test proposed by Nyblom(1989). The inputs are either the set of scores from instructions like MAXIMIZE or GARCH or the derivatives of u from instructions like NLLS, which you can obtain with the DERIVES option on those instructions. It computes both individual and joint test statistics and gives an approximate significance level for each.
The use of the @FLUX procedure and related analysis is covered in the Structural Breaks and Switching Models course.
@FLUX( options ) start end
# list of score series
Parameters
start end |
range to analyze. By default, the common range of list of score series |
Options
[PRINT]/NOPRINT
SMPL=SMPL Series
TITLE=title for report ["Fluctuation Tests"]
GRAPH/[NOGRAPH]
If GRAPH, generates a graph of the joint fluctuations.
LABELS=VECT[STRING] of labels for the individual coefficients
Ordinarily, those are labeled just with the sequence number in the regression. If you provide labels, they are used with the sequence number added to the end. %REGLABELS() is the VECT[STRING] of coefficient labels from the most recent regression, and so would be the most common choice for this.
U=residual series (not used)
Used if the input "scores" need to be multiplied by another series to get the true scores. For a linear regression, this would mean the input scores are the regressors (%REGLIST()) and u is the series of residuals; for a probit or similar model, the input scores are the regressors and U is the series of generalized residuals.
Variables Defined
%HJOINT |
overall test statistic (REAL) |
%HSTATS |
VECTOR with the tests on the individual components |
%CDSTAT |
overall test statistic (REAL) |
%SIGNIF |
significance level of overall test statistic (REAL) |
Example
This estimates a GARCH model on the log of the Deutsche mark/US$ exchange rate and does a fluctuations test.
garch(p=1,q=1,derives=dd) / dlogdm
@flux(labels=%reglabels())
# dd
Sample Output
This is the output from the example above. This shows a joint stability test that is just at the margin of being significant at conventional levels. Of the four parameters, the one that is most significant is the series mean which suggests that there might be a break in the mean of the series around entry 1296. Note that the 1296 is only a rough guess as to the date of the break (if any). Also, sometimes a break in a model suggests not some patch to the model (which here could be done fairly easily with a dummy in the mean model), but the need for a different model entirely.
Test Statistic P-Value MaxBreak
Joint 1.25368599 0.05 1296
1. Mean(DLOGDM) 0.71222462 0.01 1296
2. C 0.35758891 0.09 1009
3. A 0.13840253 0.41 1296
4. B 0.18261598 0.29 1009
Copyright © 2024 Thomas A. Doan