impulse

Сгенерируйте одномерную авторегрессионную интегрированное среднее значение (ARIMA) модели функцию импульсной характеристики (IRF)

Описание

impulse генерирует, или строит графики, функцию импульсной характеристики (IRF) одномерного авторегрессивного интегрированного процесса скользящего среднего значения (ARIMA), заданного arima объект модели.

Также можно использовать armairf для генерации или построения графика IRF процесса ARMA, заданного коэффициентами полинома оператора AR и MA.

пример

impulse(Mdl) строит графики дискретной диаграммы лист-ствол IRF одномерной модели ARIMA Mdl в текущую фигуру окно. impulse строит графики динамических откликов, начиная с периода 0, в течение которого impulse применяет модуль шок к инновациям.

пример

impulse(Mdl,numObs) строит графики numObs динамические отклики от периодов с 0 по numObs – 1.

пример

y = impulse(___) возвращает IRF- y модели ARIMA, с использованием любой комбинации входных аргументов в предыдущих синтаксисах.

Примеры

свернуть все

Создайте модель AR (2)

yt=0.5yt-1-0.7yt-2+εt,

где εt является стандартным Гауссовым процессом.

Mdl = arima('AR',{0.5,-0.7},'Constant',0)
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,0) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 0
        Constant: 0
              AR: {0.5 -0.7} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

Постройте график IRF yt.

impulse(Mdl)

Figure contains an axes. The axes with title Impulse Response contains an object of type stem.

IRF имеет длину 26; он начинается в период 0, в течение которого impulse применяет модуль шок к инновациям и заканчивается в период 25. impulse вычисляет IRF путем инвертирования базового полинома оператора AR lag. Длина IRF составляет 26, потому что динамические умножители после периода 25 ниже допусков алгоритма деления.

Модель является стационарной; функция импульсной характеристики затухает с синусоидальным шаблоном.

Можно изменить характеристики графика, скорректировав свойства базовых диаграмм лист-ствол. Объект указателя на оси сохраняет указатель на диаграмму лист-ствол в Children свойство.

Увеличьте толщину линии (значение по умолчанию 0,5). Также измените цвет диаграммы лист-ствол на красный при помощи значения цвета RGB.

h = gca; % Current axes handle
stemh = h.Children;
stemh.LineWidth = 5;
stemh.Color = [1 0 0];

Figure contains an axes. The axes with title Impulse Response contains an object of type stem.

Загрузите ежеквартальный набор данных по ВВП США.

load Data_GDP

Для получения дополнительной информации о данных введите Description в командной строке.

Рассчитать темпы роста ВВП.

y = price2ret(Data);

Рассмотрим модель ARMA (2,2) для ряда ставок ВВП. Создайте arima шаблон модели для оценки.

Mdl = arima(2,0,2)
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,2) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 2
        Constant: NaN
              AR: {NaN NaN} at lags [1 2]
             SAR: {}
              MA: {NaN NaN} at lags [1 2]
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: NaN

NaN значения в свойствах являются заполнителями для параметров оценочной модели.

Подбор модели ко всей серии.

EstMdl = estimate(Mdl,y)
 
    ARIMA(2,0,2) Model (Gaussian Distribution):
 
                  Value       StandardError    TStatistic      PValue  
                __________    _____________    __________    __________

    Constant     0.0036702     0.00058179        6.3084      2.8185e-10
    AR{1}            1.372       0.089005        15.415      1.3049e-53
    AR{2}          -0.8069       0.069497       -11.611      3.6412e-31
    MA{1}          -1.1432        0.10159       -11.253       2.247e-29
    MA{2}          0.67355        0.08512        7.9129       2.515e-15
    Variance    8.3071e-05     5.9331e-06        14.001      1.5322e-44
EstMdl = 
  arima with properties:

     Description: "ARIMA(2,0,2) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 2
               D: 0
               Q: 2
        Constant: 0.00367019
              AR: {1.37199 -0.806899} at lags [1 2]
             SAR: {}
              MA: {-1.14315 0.673547} at lags [1 2]
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: 8.30707e-05

Предполагаемая модель AR (2) ряда ставок ВВП:

yt=0.004+1.372yt-1-0.807yt-2+εt-1.143εt-1+0.674εt-2,

где εt - гауссов ряд со средним 0 и отклонением 0.00008.

Вычислите IRF предполагаемой модели для 50 периодов.

impulse(EstMdl,50)

Figure contains an axes. The axes with title Impulse Response contains an object of type stem.

Динамическая реакция на первоначальный инновационный шок рассеивается примерно через 35 четвертей.

Создайте модель ARMA (1,1)

yt=0.7yt-1+εt+0.2εt-1.

Mdl = arima('AR',0.7,'MA',0.2,'Constant',0);

Возвращает IRF на 15 периодов.

numObs = 15;
periods = 0:(numObs-1);
y = impulse(Mdl,numObs);
irf = table(periods',y,'VariableNames',["Period" "y"])
irf=15×2 table
    Period       y    
    ______    ________

       0             1
       1           0.9
       2          0.63
       3         0.441
       4        0.3087
       5       0.21609
       6       0.15126
       7       0.10588
       8      0.074119
       9      0.051883
      10      0.036318
      11      0.025423
      12      0.017796
      13      0.012457
      14       0.00872

y(0), которая является динамической характеристикой системы в то время impulse шокирует нововведение, не 1.

Входные параметры

свернуть все

Полностью заданная модель ARIMA, заданная как arima объект модели, созданный arima или estimate.

Свойства Mdl не может содержать NaN значения.

Количество периодов для включения в IRF (количество периодов, для которых impulse вычисляет IRF), заданный как положительное целое число.

Если вы задаете numObs, impulse вычисляет IRF путем фильтрации модуля импульса с последующего нулевого вектора длины numObs - 1, через модель Mdl. В этом случае алгоритм фильтрации эффективен.

По умолчанию, impulse определяет длину IRF путем реализации следующего алгоритма:

  1. Представьте процесс ARIMA как чистый процесс MA путем применения полиномиального деления оператора задержки.

  2. Обрезать полученный полином MA путем применения допусков по умолчанию.

Для получения дополнительной информации смотрите mldivide.

Совет

  • Если Mdl содержит AR или дифференцирующий полином (сезонный или несезонный), представление MA модели имеет бесконечный порядок задержки. Рассмотрите определение numObs в этом случае.

  • Если Mdl содержит только MA полиномы, IRF имеет длину Mdl.Q + 1.

Пример: 10

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

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

свернуть все

IRF, возвращается в виде числа вектора-столбца. Если вы задаете numObs, Y имеет длину numObs. Если вы не задаете numObs, допуски базового алгоритма полиномиального деления оператора задержки определяют длину y.

y (j) - импульсная характеристика yt в периоде j – 1. y(0) представляет импульсную характеристику в течение периода, в котором impulse применяет модуль шок к нововведению (ε 0 = 1).

Подробнее о

свернуть все

Функция импульсной характеристики

impulse response function (IRF) одномерного процесса ARIMAX является динамической реакцией системы на один импульс (инновационный шок).

Рассмотрим модель ARIMAX, выраженную как процесс MA

yt=mt+ψ(L)εt,

где:

  • ψ (L) является полиномом оператора задержки MA бесконечной степениψ0+ψ1L+ψ2L2+ со скалярными коэффициентами ψj, j = 0,1,2,... и ψ 0 = 1.

  • mt является детерминированным, без инноваций условным средним для процесса в t времени.

IRF измеряет изменение периодов j отклика в будущем из-за изменения инновации в то время t для j = 0,1,2,.... Символически IRF в период j является

yt+jεt=ψj.

Последовательность dynamic multipliers [3], ψ 0, ψ 1, ψ 2,..., измеряет чувствительность процесса к чисто временному изменению инновационного процесса, с прошлыми откликами и будущими инновациями, установленными на 0. Поскольку частная производная взята относительно инновации, наличие в модели детерминированных членов, таких как константа и экзогенный регрессионный компонент, не влияет на импульсные характеристики.

Свойства IRF определяют характеристики процесса:

  • Если последовательность {ψj} абсолютно суммируется, yt является ковариационно-стационарным стохастическим процессом [5]. Для стационарного стохастического процесса влияние на процесс из-за изменения εt не является постоянным, и эффект импульса распадается до нуля.

  • В противном случае yt процесса является нестационарным, и изменение εt влияет на процесс постоянно.

Поскольку инновации могут быть интерпретированы как одноэтапные ошибки прогноза, импульсная характеристика также известна как forecast error impulse response.

Совет

  • Чтобы улучшить эффективность алгоритма фильтрации, задайте количество периодов, которые будут включены в IRF numObs. Когда вы не задаете numObs, impulse вычисляет IRF с помощью алгоритма lag полинома деления, который относительно медлен, чтобы представлять модель входа Mdl как усеченная модель бесконечной степени скользящего среднего значения. Длина полученного IRF обычно неизвестна.

Ссылки

[1] Box, George E. P., Gwilym M. Jenkins, and Gregory C. Reinsel. Анализ временных рядов: прогнозирование и управление. 3-й эд. Englewood Cliffs, Нью-Джерси: Prentice Hall, 1994.

[2] Эндерс, Уолтер. Прикладные эконометрические временные ряды. Hoboken, NJ: John Wiley & Sons, Inc., 1995.

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

[4] Люткепол, Гельмут. Новое введение в анализ нескольких временных рядов. Нью-Йорк, Нью-Йорк: Springer-Verlag, 2007.

[5] Wold, H. A Study in the Analysis of Stationary Time Series. Уппсала, Швеция: Almqvist & Wiksell, 1938.

Введенный в R2012a