Forecasting using SAS Forecast Server, SAS/ETS, and more

Extract shift from ARMA process

Accepted Solution Solved
Reply
Super Contributor
Posts: 336
Accepted Solution

Extract shift from ARMA process

[ Edited ]

Hello,

 

I simulated an ARMA 1,1 process and added a level shift. How can I get closer to the actual parameter estimates of the model if a shift is included?

 

Data A (Keep=x_int x t);
  Retain e1 0 x1 0 x_int_1 500;  
  Do t=-100 To 10000;
    e=Rannor(1);
	x=(0.02+0.8*x1-0.4*e1+e); * create ARMA 1,1;
	x_int=x_int_1+x; * integrate;
	e1=e;
	x1=x;
	x_int_1=x_int;
	If t>0 Then Output;
  End;
Run;

Data A;
  Set A;
  dummy=IfN(t>=6000 & t<=7500,1,0);
  x_int_d=x_int-dummy*200; * create shift;
Run;

ODS Graphics On;
Proc Timeseries Data=A Plot=Series;
  Var x_int_d x_int;
Run;
ODS Graphics Off;

Proc Arima Data=A;
  Title "Model 1: With shift";
  Identify Var=x_int_d (1) CrossCorr=dummy;
  Estimate p=1 q=1 Noint Input=dummy Method=ML;
Run;
Proc Arima Data=A;
  Title "Model 2: No shift";
  Identify Var=x_int (1);
  Estimate p=1 q=1 Method=ML;
Run;

 

 

Thanks&kind regards


Accepted Solutions
Solution
‎02-16-2016 10:37 AM
SAS Super FREQ
Posts: 79

Re: Extract shift from ARMA process

you have to diff the dummy too.

 

Proc Arima Data=A;
Title "Model 1: With shift";
Identify Var=x_int_d (1) CrossCorr=dummy(1);
Estimate p=1 q=1 Noint Input=dummy Method=ML;
Run;

View solution in original post


All Replies
Solution
‎02-16-2016 10:37 AM
SAS Super FREQ
Posts: 79

Re: Extract shift from ARMA process

you have to diff the dummy too.

 

Proc Arima Data=A;
Title "Model 1: With shift";
Identify Var=x_int_d (1) CrossCorr=dummy(1);
Estimate p=1 q=1 Noint Input=dummy Method=ML;
Run;

☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

Discussion stats
  • 1 reply
  • 263 views
  • 0 likes
  • 2 in conversation