exponenta event banner

оценка

Подгонка векторной модели авторегрессии (VAR) к данным

Описание

пример

EstMdl = estimate(Mdl,Y) возвращает полностью указанную модель VAR (p). В этой модели хранятся оценочные значения параметров, полученные в результате подгонки модели VAR (p).Mdl к наблюдаемому ряду многомерных ответов Y использование максимального правдоподобия.

пример

EstMdl = estimate(Mdl,Y,Name,Value) использует дополнительные параметры, заданные одним или несколькими аргументами пары имя-значение. Например, можно указать предварительные ответы или данные экзогенного предиктора.

пример

[EstMdl,EstSE] = estimate(___) возвращает оценочные асимптотические стандартные ошибки оценочных параметров, используя любой из входных аргументов в предыдущих синтаксисах.

пример

[EstMdl,EstSE,logL,E] = estimate(___) возвращает значение целевой функции оптимизированного логарифма (logL) и многомерные остатки (E).

Примеры

свернуть все

Соответствие модели VAR (4) индексу потребительских цен (ИПЦ) и данным по уровню безработицы.

Загрузить Data_USEconModel набор данных.

load Data_USEconModel

Постройте две серии на отдельных графиках.

figure;
plot(DataTable.Time,DataTable.CPIAUCSL);
title('Consumer Price Index');
ylabel('Index');
xlabel('Date');

Figure contains an axes. The axes with title Consumer Price Index contains an object of type line.

figure;
plot(DataTable.Time,DataTable.UNRATE);
title('Unemployment Rate');
ylabel('Percent');
xlabel('Date');

Figure contains an axes. The axes with title Unemployment Rate contains an object of type line.

Стабилизировать ИПЦ путем преобразования его в ряд темпов роста. Синхронизировать два ряда, удалив первое наблюдение из ряда уровня безработицы.

rcpi = price2ret(DataTable.CPIAUCSL);
unrate = DataTable.UNRATE(2:end);

Создайте модель VAR (4) по умолчанию с использованием краткого синтаксиса.

Mdl = varm(2,4)
Mdl = 
  varm with properties:

     Description: "2-Dimensional VAR(4) Model"
     SeriesNames: "Y1"  "Y2" 
       NumSeries: 2
               P: 4
        Constant: [2×1 vector of NaNs]
              AR: {2×2 matrices of NaNs} at lags [1 2 3 ... and 1 more]
           Trend: [2×1 vector of zeros]
            Beta: [2×0 matrix]
      Covariance: [2×2 matrix of NaNs]

Mdl является varm объект модели. Все свойства, содержащие NaN значения соответствуют параметрам, которые должны быть оценены с учетом данных.

Оцените модель, используя весь набор данных.

EstMdl = estimate(Mdl,[rcpi unrate])
EstMdl = 
  varm with properties:

     Description: "AR-Stationary 2-Dimensional VAR(4) Model"
     SeriesNames: "Y1"  "Y2" 
       NumSeries: 2
               P: 4
        Constant: [0.00171639 0.316255]'
              AR: {2×2 matrices} at lags [1 2 3 ... and 1 more]
           Trend: [2×1 vector of zeros]
            Beta: [2×0 matrix]
      Covariance: [2×2 matrix]

EstMdl является оценочным varm объект модели. Он полностью указан, поскольку все параметры имеют известные значения. Описание указывает, что авторегрессионный полином является неподвижным.

Отображение сводной статистики из оценки.

summarize(EstMdl)
 
   AR-Stationary 2-Dimensional VAR(4) Model
 
    Effective Sample Size: 241
    Number of Estimated Parameters: 18
    LogLikelihood: 811.361
    AIC: -1586.72
    BIC: -1524
 
                      Value       StandardError    TStatistic      PValue  
                   ___________    _____________    __________    __________

    Constant(1)      0.0017164      0.0015988         1.0735        0.28303
    Constant(2)        0.31626       0.091961          3.439      0.0005838
    AR{1}(1,1)         0.30899       0.063356          4.877     1.0772e-06
    AR{1}(2,1)         -4.4834         3.6441        -1.2303        0.21857
    AR{1}(1,2)      -0.0031796      0.0011306        -2.8122       0.004921
    AR{1}(2,2)          1.3433       0.065032         20.656      8.546e-95
    AR{2}(1,1)         0.22433       0.069631         3.2217      0.0012741
    AR{2}(2,1)          7.1896          4.005         1.7951       0.072631
    AR{2}(1,2)       0.0012375      0.0018631         0.6642        0.50656
    AR{2}(2,2)        -0.26817        0.10716        -2.5025       0.012331
    AR{3}(1,1)         0.35333       0.068287         5.1742     2.2887e-07
    AR{3}(2,1)           1.487         3.9277        0.37858          0.705
    AR{3}(1,2)       0.0028594      0.0018621         1.5355        0.12465
    AR{3}(2,2)        -0.22709         0.1071        -2.1202       0.033986
    AR{4}(1,1)       -0.047563       0.069026       -0.68906        0.49079
    AR{4}(2,1)          8.6379         3.9702         2.1757       0.029579
    AR{4}(1,2)     -0.00096323      0.0011142       -0.86448        0.38733
    AR{4}(2,2)        0.076725       0.064088         1.1972        0.23123

 
   Innovations Covariance Matrix:
    0.0000   -0.0002
   -0.0002    0.1167

 
   Innovations Correlation Matrix:
    1.0000   -0.0925
   -0.0925    1.0000

Соответствие модели VAR (4) индексу потребительских цен (ИПЦ) и данным по уровню безработицы. Выборка оценки начинается в Q1 1980 года.

Загрузить Data_USEconModel набор данных.

load Data_USEconModel

Стабилизировать ИПЦ путем преобразования его в ряд темпов роста. Синхронизировать два ряда, удалив первое наблюдение из ряда уровня безработицы.

rcpi = price2ret(DataTable.CPIAUCSL);
unrate = DataTable.UNRATE(2:end);

Определите индекс, соответствующий началу выборки оценки.

estIdx = DataTable.Time(2:end) > '1979-12-31';

Создайте модель VAR (4) по умолчанию с использованием краткого синтаксиса.

Mdl = varm(2,4);

Оценка модели с использованием выборки оценки. Укажите все наблюдения перед выборкой оценки в качестве данных предварительной выборки. Отображение полной оценки.

Y0 = [rcpi(~estIdx) unrate(~estIdx)];
EstMdl = estimate(Mdl,[rcpi(estIdx) unrate(estIdx)],'Y0',Y0,'Display',"full");
 
   AR-Stationary 2-Dimensional VAR(4) Model
 
    Effective Sample Size: 117
    Number of Estimated Parameters: 18
    LogLikelihood: 419.837
    AIC: -803.674
    BIC: -753.955
 
                     Value       StandardError    TStatistic      PValue  
                   __________    _____________    __________    __________

    Constant(1)      0.003564      0.0024697         1.4431        0.14898
    Constant(2)       0.29922        0.11882         2.5182       0.011795
    AR{1}(1,1)       0.022379       0.092458        0.24204        0.80875
    AR{1}(2,1)        -2.6318         4.4484       -0.59163         0.5541
    AR{1}(1,2)     -0.0082357      0.0020373        -4.0425     5.2884e-05
    AR{1}(2,2)         1.2567        0.09802          12.82     1.2601e-37
    AR{2}(1,1)        0.20954        0.10182         2.0581       0.039584
    AR{2}(2,1)         10.106         4.8987          2.063       0.039117
    AR{2}(1,2)      0.0058667       0.003194         1.8368       0.066236
    AR{2}(2,2)       -0.14226        0.15367       -0.92571        0.35459
    AR{3}(1,1)        0.56095       0.098691         5.6839     1.3167e-08
    AR{3}(2,1)        0.44406         4.7483       0.093518        0.92549
    AR{3}(1,2)      0.0049062       0.003227         1.5204        0.12841
    AR{3}(2,2)      -0.040037        0.15526       -0.25787         0.7965
    AR{4}(1,1)       0.046125        0.11163        0.41321        0.67945
    AR{4}(2,1)          6.758         5.3707         1.2583        0.20827
    AR{4}(1,2)     -0.0030032       0.002018        -1.4882         0.1367
    AR{4}(2,2)       -0.14412       0.097094        -1.4843        0.13773

 
   Innovations Covariance Matrix:
    0.0000   -0.0003
   -0.0003    0.0790

 
   Innovations Correlation Matrix:
    1.0000   -0.1686
   -0.1686    1.0000

Поскольку степень p модели VAR равна 4, estimate использует только последние четыре наблюдения в Y0 в качестве примера.

Оценка модели VAR (4) индекса потребительских цен (ИПЦ), уровня безработицы и реального валового внутреннего продукта (ВВП). Включить компонент линейной регрессии, содержащий текущий квартал и последние четыре квартала государственных потребительских расходов и инвестиций (GCE).

Загрузить Data_USEconModel набор данных. Вычислите реальный ВВП.

load Data_USEconModel
DataTable.RGDP = DataTable.GDP./DataTable.GDPDEF*100;

Постройте график всех переменных на отдельных графиках.

figure;
subplot(2,2,1)
plot(DataTable.Time,DataTable.CPIAUCSL);
ylabel('Index');
title('Consumer Price Index');
subplot(2,2,2)
plot(DataTable.Time,DataTable.UNRATE);
ylabel('Percent');
title('Unemployment Rate');
subplot(2,2,3)
plot(DataTable.Time,DataTable.RGDP);
ylabel('Output');
title('Real Gross Domestic Product')
subplot(2,2,4)
plot(DataTable.Time,DataTable.GCE);
ylabel('Billions of $');
title('Government Expenditures')

Figure contains 4 axes. Axes 1 with title Consumer Price Index contains an object of type line. Axes 2 with title Unemployment Rate contains an object of type line. Axes 3 with title Real Gross Domestic Product contains an object of type line. Axes 4 with title Government Expenditures contains an object of type line.

Стабилизировать ряды ИПЦ, ВВП и ГЦЭ путем преобразования каждого из них в ряд темпов роста. Синхронизировать ряды показателей безработицы с другими, удалив свое первое наблюдение.

inputVariables = {'CPIAUCSL' 'RGDP' 'GCE'};
Data = varfun(@price2ret,DataTable,'InputVariables',inputVariables);
Data.Properties.VariableNames = inputVariables;
Data.UNRATE = DataTable.UNRATE(2:end);

Разверните ряд скоростей GCE до матрицы, которая включает текущее значение и до четырех запаздывающих значений. Удалить GCE переменная из Data.

rgcelag4 = lagmatrix(Data.GCE,0:4);
Data.GCE = [];

Создайте модель VAR (4) по умолчанию с использованием краткого синтаксиса. При создании модели не требуется указывать компонент регрессии.

Mdl = varm(3,4);

Оцените модель, используя весь образец. Укажите матрицу скорости GCE в качестве данных для компонента регрессии. Извлеките стандартные ошибки и значение средства к существованию.

[EstMdl,EstSE,logL] = estimate(Mdl,Data.Variables,'X',rgcelag4);

Отображение матрицы коэффициентов регрессии.

EstMdl.Beta
ans = 3×5

    0.0777   -0.0892   -0.0685   -0.0181    0.0330
    0.1450   -0.0304    0.0579   -0.0559    0.0185
   -2.8138   -0.1636    0.3905    1.1799   -2.3328

EstMdl.Beta является матрицей 3 на 5. Строки соответствуют ряду ответов, а столбцы - предикторам.

Отображение матрицы стандартных ошибок, соответствующих оценкам коэффициентов.

EstSE.Beta
ans = 3×5

    0.0250    0.0272    0.0275    0.0274    0.0243
    0.0368    0.0401    0.0405    0.0403    0.0358
    1.4552    1.5841    1.6028    1.5918    1.4145

EstSE.Beta соизмерим с EstMdl.Beta.

Просмотрите значение средства к существованию.

logL
logL = 1.7056e+03

Входные аргументы

свернуть все

Модель VAR, содержащая неизвестные значения параметров, указанные как varm объект модели, возвращенный varm.

NaN-значимые элементы в свойствах указывают неизвестные, оцениваемые параметры. Указанные элементы указывают на ограничения равенства параметров при оценке модели. Инновационная ковариационная матрица Mdl.Covariance не может содержать сочетание NaN значения и реальные числа; необходимо полностью указать ковариацию или она должна быть полностью неизвестной (NaN(Mdl.NumSeries)).

Наблюдаемые многомерные серии ответов, на которые estimate подходит для модели, указанной как numobsоколо-numseries числовая матрица.

numobs - размер выборки. numseries - количество переменных ответа (Mdl.NumSeries).

Строки соответствуют наблюдениям, а последняя строка содержит последнее наблюдение.

Столбцы соответствуют отдельным переменным ответа.

Y представляет продолжение последовательности ответов предварительной выборки в Y0.

Типы данных: double

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'Y0',Y0,'X',X использует матрицу Y0 в качестве предварительных ответов, необходимых для оценки, и включает компонент линейной регрессии, состоящий из данных предиктора в X.

Предварительный отбор ответов для инициирования оценки модели, указанной как пара, разделенная запятыми, состоящая из 'Y0' и numpreobsоколо-numseries числовая матрица.

numpreobs - количество предварительных наблюдений.

Строки соответствуют предварительным наблюдениям, а последняя строка содержит последнее наблюдение. Y0 должен иметь по крайней мере Mdl.P строк. Если указано больше строк, чем необходимо, estimate использует последние Mdl.P только наблюдения.

Столбцы должны соответствовать ряду ответов в Y.

По умолчанию estimate использование Y(1:Mdl.P,:) в качестве предварительного примера наблюдений, а затем подгоняет модель к Y((Mdl.P + 1):end,:). Это действие уменьшает эффективный размер выборки.

Типы данных: double

Данные предиктора для регрессионного компонента в модели, указанной как пара, разделенная запятыми, состоящая из 'X' и числовую матрицу, содержащую numpreds столбцы.

numpreds - количество переменных предиктора.

Строки соответствуют наблюдениям, а последняя строка содержит последнее наблюдение. estimate не использует компонент регрессии в предварительном периоде. X должно иметь по крайней мере столько наблюдений, сколько используется после периода предварительного отбора.

  • При указании Y0, то X должен иметь по крайней мере numobs строки (см. Y).

  • В противном случае X должен иметь по крайней мере numobsMdl.P для учета удаления предварительного образца.

В любом случае, если указано больше строк, чем необходимо, estimate использует только последние наблюдения.

Столбцы соответствуют отдельным переменным предиктора. Все переменные предиктора присутствуют в регрессионной составляющей каждого уравнения ответа.

По умолчанию estimate исключает компонент регрессии, независимо от его присутствия в Mdl.

Типы данных: double

Тип отображения оценочной информации, указанный как разделенная запятыми пара, состоящая из 'Display' и значение в этой таблице.

СтоимостьОписание
"off"estimate не отображает оценочную информацию в командной строке.
"table"estimate отображает таблицу оценочной информации. Строки соответствуют параметрам, а столбцы соответствуют оценкам, стандартным ошибкам, статистике t и значениям p.
"full"В дополнение к таблице сводной статистики, estimate отображает оценочные новшества ковариантные и корреляционные матрицы, логарифмическое значение, информационный критерий Акайке (AIC), байесовский информационный критерий (BIC) и другую оценочную информацию.

Пример: 'Display',"full"

Типы данных: string | char

Максимальное допустимое количество итераций решателя, указанное как пара, разделенная запятыми, состоящая из 'MaxIterations' и положительный числовой скаляр.

estimate отправки MaxIterations кому mvregress.

Типы данных: double

Примечание

NaN значения в Y, Y0, и X укажите отсутствующие значения. estimate удаляет отсутствующие значения из данных путем удаления по списку.

  • Для примера, estimate удаляет любую строку, содержащую по крайней мере одну NaN.

  • Для выборки оценки, estimate удаляет любую строку конкатенированной матрицы данных [Y X] содержащий, по крайней мере, один NaN.

Этот тип сокращения данных уменьшает эффективный размер выборки.

Выходные аргументы

свернуть все

Оценочная модель VAR (p), возвращенная как varm объект модели. EstMdl является полностью указанным varm модель.

estimate использование mvregress для реализации многомерной нормальной, максимальной оценки правдоподобия. Дополнительные сведения см. в разделе Оценка многомерных регрессионных моделей.

Оценочные асимптотические стандартные ошибки оценочных параметров, возвращенные в виде структурного массива, содержащего поля в этой таблице.

ОбластьОписание
ConstantСтандартные ошибки констант модели, соответствующие оценкам в EstMdl.Constant, a numseries-by-1 числовой вектор
ARСтандартные ошибки авторегрессионных коэффициентов, соответствующих оценкам в EstMdl.AR, вектор ячейки с элементами, соответствующими EstMdl.AR
BetaСтандартные ошибки коэффициентов регрессии, соответствующие оценкам в EstMdl.Beta, a numseriesоколо-numpreds числовая матрица
TrendСтандартные ошибки линейных временных трендов, соответствующие оценкам в EstMdl.Trend, a numseries-by-1 числовой вектор

Если estimate применяет ограничения равенства во время оценки путем фиксации любых параметров к значению, то соответствующие стандартные ошибки этих параметров 0.

estimate извлекает все стандартные ошибки из инверсии ожидаемой информационной матрицы Фишера, возвращенной mvregress (см. Стандартные ошибки).

Значение оптимизированной логической целевой функции, возвращаемое в виде числового скаляра.

Многомерные остатки из подогнанной модели, возвращаемые как числовая матрица, содержащая numseries столбцы.

  • При указании Y0, то E имеет numobs строки (см. Y).

  • В противном случае E имеет numobsMdl.P для учета удаления предварительной пробы.

Ссылки

[1] Гамильтон, Джеймс Д. Анализ временных рядов. Принстон, Нью-Джерси: Princeton University Press, 1994.

[2] Йохансен, С. Вывод на основе правдоподобия в коинтегрированных векторных авторегрессионных моделях. Oxford: Oxford University Press, 1995.

[3] Джуселиус, К. Коинтегрированная модель VAR. Oxford: Oxford University Press, 2006.

[4] Lütkepohl, H. Новое введение в анализ множественных временных рядов. Берлин: Спрингер, 2005.

Представлен в R2017a