This example shows how to use the Box-Jenkins methodology to select and estimate an ARIMA model by using the Econometric Modeler app. Then, it shows how to export the estimated model to generate forecasts. The data set, which is stored in Data_JAustralian.mat
, contains the log quarterly Australian Consumer Price Index (CPI) measured from 1972 and 1991, among other time series.
At the command line, load the Data_JAustralian.mat
data set.
load Data_JAustralian
Convert the table DataTable
to a timetable:
Clear the row names of DataTable
.
Convert the sampling times to a datetime
vector.
Convert the table to a timetable by associating the rows with the sampling
times in dates
.
DataTable.Properties.RowNames = {}; dates = datetime(dates,'ConvertFrom','datenum',... 'Format','ddMMMyyyy','Locale','en_US'); DataTable = table2timetable(DataTable,'RowTimes',dates);
At the command line, open the Econometric Modeler app.
econometricModeler
Alternatively, open the app from the apps gallery (see Econometric Modeler).
Import DataTable
into the app:
On the Econometric Modeler tab, in the
Import section, click .
In the Import Data dialog box, in the
Import? column, select the check box for the
DataTable
variable.
Click Import.
The variables, including PAU
, appear in the Data Browser, and a time series plot of all the series appears in the Time Series Plot(EXCH) figure window.
Create a time series plot of PAU
by double-clicking PAU
in the Data Browser.
The series appears nonstationary because it has a clear upward trend.
Plot the sample autocorrelation function (ACF) and partial autocorrelation function (PACF).
In the Data Browser, select the PAU
time series.
Click the Plots tab, then click ACF.
Click the Plots tab, then click PACF.
Close all figure windows except for the correlograms. Then, drag the ACF(PAU) figure window above the PACF(PAU) figure window.
The significant, linearly decaying sample ACF indicates a nonstationary process.
Close the ACF(PAU) and PACF(PAU) figure windows.
Take a first difference of the data. With PAU
selected in the Data Browser, on the Econometric Modeler tab, in the Transforms section, click Difference.
The transformed variable PAUDiff
appears in the Data Browser, and its time series plot appears in the Time Series Plot(PAUDiff) figure window.
Differencing removes the linear trend. The differenced series appears more stationary.
Plot the sample ACF and PACF of PAUDiff
. With PAUDiff
selected in the Data Browser:
Click the Plots tab, then click ACF.
Click the Plots tab, then click PACF.
Close the Time Series Plot(PAUDiff) figure window. Then, drag the ACF(PAUDiff) figure window above the PACF(PAUDiff) figure window.
The sample ACF of the differenced series decays more quickly. The sample PACF cuts off after lag 2. This behavior is consistent with a second-degree autoregressive (AR(2)) model for the differenced series.
Close the ACF(PAUDiff) and PACF(PAUDiff) figure windows.
Estimate an ARIMA(2,1,0) model for the log quarterly Australian CPI. This model has one degree of nonseasonal differencing and two AR lags.
In the Data Browser, select the PAU
time series.
On the Econometric Modeler tab, in the Models section, click ARIMA.
In the ARIMA Model Parameters dialog box, on the Lag Order tab:
Set Degree of Integration to 1
.
Set Autoregressive Order to 2
.
Click Estimate.
The model variable ARIMA_PAU
appears in the Models section of the Data Browser, and its estimation summary appears in the Model Summary(ARIMA_PAU) document.
Both AR coefficients are significant at a 5% significance level.
Check that the residuals are normally distributed and uncorrelated by plotting a histogram, quantile-quantile plot, and ACF of the residuals.
Close the Model Summary(ARIMA_PAU) document.
With ARIMA_PAU
selected in the Data
Browser, on the Econometric Modeler tab, in the
Diagnostics section, click Residual
Diagnostics > Residual
Histogram.
Click Residual Diagnostics > Residual Q-Q Plot.
Click Residual Diagnostics > Autocorrelation Function.
In the right pane, drag the Histogram(ARIMA_PAU) and QQPlot(ARIMA_PAU) figure windows so that they occupy the upper two quadrants, and drag the ACF so that it occupies the lower two quadrants.
The residual plots suggest that the residuals are approximately normally distributed and uncorrelated. However, there is some indication of an excess of large residuals. This behavior suggests that a t innovation distribution might be appropriate.
Export the model to the MATLAB® Workspace.
In the Data Browser, select the PAU
time series.
On the Econometric Modeler tab, in the Export section, click Export > Export Variables.
In the Export Variables dialog box, select the Select check box for the ARIMA_PAU model.
Click Export. The check box for the PAU time series is already selected.
The variables PAU
and ARIMA_PAU
appear in the workspace.
Generate forecasts and approximate 95% forecast intervals from the estimated ARIMA(2,1,0) model for the next four years (16 quarters). Use the entire series as a presample for the forecasts.
[PAUF,PAUMSE] = forecast(ARIMA_PAU,16,'Y0',PAU); UB = PAUF + 1.96*sqrt(PAUMSE); LB = PAUF - 1.96*sqrt(PAUMSE); datesF = dates(end) + calquarters(1:16); figure h4 = plot(dates,PAU,'Color',[.75,.75,.75]); hold on h5 = plot(datesF,PAUF,'r','LineWidth',2); h6 = plot(datesF,UB,'k--','LineWidth',1.5); plot(datesF,LB,'k--','LineWidth',1.5); legend([h4,h5,h6],'Log CPI','Forecast',... 'Forecast Interval','Location','Northwest') title('Log Australian CPI Forecast') hold off
[1] Box, George E. P., Gwilym M. Jenkins, and Gregory C. Reinsel. Time Series Analysis: Forecasting and Control. 3rd ed. Englewood Cliffs, NJ: Prentice Hall, 1994.