Этот пример показывает, как оценить чувствительность валового внутреннего продукта (ВВП) США к изменениям в индексе потребительских цен (ИПЦ) с помощью estimate
.
Загрузите набор макроэкономических данных США, Data_USEconModel
. Постройте график ВВП и ИПЦ.
load Data_USEconModel gdp = DataTable.GDP; cpi = DataTable.CPIAUCSL; figure plot(dates,gdp) title('{\bf US Gross Domestic Product, Q1 in 1947 to Q1 in 2009}') datetick axis tight
figure plot(dates,cpi) title('{\bf US Consumer Price Index, Q1 in 1947 to Q1 in 2009}') datetick axis tight
gdp
и cpi
кажется, увеличивается в геометрической прогрессии.
Функции регресса gdp
на cpi
. Постройте график невязок.
XDes = [ones(length(cpi),1) cpi]; % Design matrix beta = XDes\gdp; u = gdp - XDes*beta; % Residuals figure plot(u) h1 = gca; hold on plot(h1.XLim,[0 0],'r:') title('{\bf Residual Plot}') hold off
Шаблон невязок предполагает, что стандартное допущение линейной модели некоррелированных ошибок нарушено. Невязки появляются автокоррелированными.
Постройте коррелограммы для невязок.
figure subplot(2,1,1) autocorr(u) subplot(2,1,2) parcorr(u)
Функция автокорреляции предполагает, что невязки являются нестационарным процессом.
Примените первое различие к логгированному ряду, чтобы стабилизировать невязки.
dlGDP = diff(log(gdp)); dlCPI = diff(log(cpi)); dlXDes = [ones(length(dlCPI),1) dlCPI]; beta = dlXDes\dlGDP; u = dlGDP - dlXDes*beta; figure plot(u); h2 = gca; hold on plot(h2.XLim,[0 0],'r:') title('{\bf Residual Plot, Transformed Series}') hold off
figure subplot(2,1,1) autocorr(u) subplot(2,1,2) parcorr(u)
Остаточный график от преобразованных данных предполагает стабилизированную, хотя и гетероскедастические безусловные нарушения порядка. Коррелограммы предполагают, что безусловные нарушения порядка следуют процессу AR (1 ).
Задайте регрессионую модель с ошибками AR (1 ):
Mdl = regARIMA('ARLags',1);
estimate
оценивает любой параметр, имеющий значение NaN
.
Подгонка Mdl
к данным.
EstMdl = estimate(Mdl,dlGDP,'X',dlCPI,'Display','params');
Regression with ARMA(1,0) Error Model (Gaussian Distribution): Value StandardError TStatistic PValue __________ _____________ __________ __________ Intercept 0.012762 0.0013472 9.4734 2.7098e-21 AR{1} 0.38245 0.052494 7.2856 3.2031e-13 Beta(1) 0.3989 0.077286 5.1614 2.4516e-07 Variance 9.0101e-05 5.947e-06 15.151 7.5075e-52
В качестве альтернативы оцените коэффициенты регрессии и стандартные ошибки Ньюи-Уэста, используя hac
.
hac(dlCPI,dlGDP,'intercept',true,'display','full');
Estimator type: HAC Estimation method: BT Bandwidth: 4.1963 Whitening order: 0 Effective sample size: 248 Small sample correction: on Coefficient Estimates: | Coeff SE ------------------------ Const | 0.0115 0.0012 x1 | 0.5421 0.1005 Coefficient Covariances: | Const x1 -------------------------- Const | 0.0000 -0.0001 x1 | -0.0001 0.0101
Оценки точки пересечения близки, но оценки коэффициента регрессии, соответствующие dlCPI
нет. Это потому, что regARIMA
явно моделирует автокорреляцию нарушений порядка. hac
оценивает коэффициенты, используя обыкновенные методом наименьших квадратов, и возвращает стандартные ошибки, которые являются устойчивыми к остаточной автокорреляции и гетероскедастичности.
Принимая, что модель верна, результаты предполагают, что увеличение на одну точку ставки ИПЦ увеличивает темп роста ВВП на 0,399 точки. Этот эффект значителен в соответствии со статистикой t.
Отсюда можно использовать forecast
или simulate
получать прогнозы и прогнозные интервалы по курсу ВВП. Можно также сравнить несколько моделей, вычислив их статистику AIC с помощью aicbic
.
aicbic
| estimate
| forecast
| simulate