In BOXJENK Output there is a CONSTANT which is the mean (mu) of the model or E(y(t)). Shouldn't BOXJENK CONSTANT be relabeled MEAN instead?
Using RATS ExampleThree.xls data, estimating an AR(1) model, comparing LINREG with BOXJENK the CONSTANT's are different and the mean's are the same.
Code: Select all
linreg rate 1959:02 1996:02
# constant rate{1}
comp mu = %beta(1)/(1-%beta(2))
disp mu
boxjenk(constant,ar=||1||,NOMAXL) rate 1959:02 1996:02
How is Linear Regression - Estimation by Least Squares, different to Box-Jenkins - Estimation by LS Gauss-Newton?
Further, if I simulate in-levels an ARMA model as e.g. y = 3.0 + 0.7*y(t-1) + 0.6*y(t-2) + e(t), the mu = (c1/(1.0 - phi1)) which is shown as a CONSTANT in BOXJENK, yet I cannot use BOXJENK output results for a forecast by-hand. To convert BOXJENK CONSTANT to be used for forecasting I would c1 = mu*(1.0 - phi1). Why does BOXJENK not display the constant (maybe as-well) which is used for forecasting, the mean is not?
If I integrate-up y(t) using the levels simulation series and estimate using BOXJENK with diff=1 I get the same results.
But how do I write the model? Is it
ARIMA(1,1,1)\\y(t) = 3.0 + 0.7*y(t-1) + e(t) + 0.6*e(t-1)
Or
ARIMA(1,0,1)\\d(y(t)) = 3.0 + 0.7*d(y(t-1)) + e(t) + 0.6*e(t-1)
Code: Select all
*===============================
* y = c1 + phi1*y(t-1) + e(t) + theta1*e(t-1)
seed 123
compute sigma=1.0
compute nburn=100
compute nobs=200
set e 1 nburn+nobs = %ran(sigma)
compute c1 = +3.0
compute phi1 = +0.7
compute theta1 = +0.6
compute mean1 = (c1/(1.0 - phi1))
disp 'mean' mean1
set(first=0.0) y 1 nburn+nobs = c1 + phi1*y{1} + e + theta1*e{1}
spgraph(vfields=1,hfields=2,footer="")
graph(head="ARMA(1,1)\\y(t) = 3.0 + 0.7*y(t-1) + e(t) + 0.6*e(t-1)") 1
# y nburn+1 nburn+nobs
@bjident(method=yule,diffs=0,report,number=15) y nburn+1 nburn+nobs
spgraph(done)
boxjenk(constant,ar=||1||,diff=0,ma=||1||,MAXL) y nburn+1 nburn+nobs
* integrate-up
acc Y / arima111
spgraph(vfields=2,hfields=2,footer="")
graph(head="ARIMA(1,1,1)\\y(t) = 3.0 + 0.7*y(t-1) + e(t) + 0.6*e(t-1)") 1
# arima111 nburn+1 nburn+nobs
@bjident(method=yule,diffs=1,report,number=15) arima111 nburn+1 nburn+nobs
spgraph(done)
boxjenk(const,diff=1,ar=||1||,ma=||1||,MAXL) arima111 nburn+1 nburn+nobs