vec2var

Преобразуйте модель VEC в модель VAR

Синтаксис

Описание

Модель Econometrics Toolbox™ VAR функционирует такой как simulate, forecast, и armairf подходят для векторных моделей (VAR) авторегрессии. Чтобы симулировать, предскажите или сгенерируйте импульсные характеристики от использования модели векторного исправления ошибок (VEC) simulate, forecast, или armairf, соответственно, преобразуйте модель VEC в ее эквивалентное представление модели VAR.

пример

VAR = vec2var(VEC,C) возвращает содействующие матрицы (VAR) из векторного авторегрессивного эквивалента модели векторной модели исправления ошибок с содействующими матрицами (VEC). Если количеством задержек в модели исправления ошибок входного вектора является q, то количеством задержек в модели исправления ошибок выходного вектора является p = q + 1.

Примеры

свернуть все

Рассмотрите преобразование следующей модели VEC(2) к модели VAR (3).

Δyt=[0.51-2]+[-0.140.12-0.05-0.14-0.07-0.10-0.07-0.16-0.07]Δyt-1+[-0.140.12-0.05-0.14-0.07-0.10-0.07-0.16-0.07]Δyt-2+[-0.320.74-0.381.97-0.610.44-2.19-1.152.65]yt-1+εt.

Задайте содействующие матрицы (B1 и B2) из Δyt-1 и Δyt-2, и коэффициент исправления ошибок C.

B1 = [-0.14   0.12 -0.05;
      -0.14 -0.07 -0.10;
      -0.07  -0.16 -0.07];
B2 = [-0.14   0.12 -0.05;
      -0.14 -0.07 -0.10;
      -0.07  -0.16 -0.07]; 
C  = [-0.32  0.74 -0.38;
       1.97 -0.61  0.44;
     - 2.19 -1.15  2.65];

Упакуйте матрицы в отдельные ячейки 2-мерного вектора ячейки. Поместите B1 в первую ячейку и B2 во вторую ячейку.

VEC = {B1 B2};

Вычислите содействующие матрицы эквивалентной модели VAR (3).

VAR = vec2var(VEC,C);
size(VAR)
ans = 1×2

     1     3

Спецификация массива ячеек матриц для входного параметра указывает, что модель VEC(2) находится в уменьшаемой форме и VEC{1} коэффициент Δyt-1. Последующие элементы соответствуют последующим задержкам.

VAR 1 3 вектор ячейки из 3х3 содействующих матриц для VAR (3) эквивалентны из модели VEC(2). Поскольку модель VEC(2) находится в уменьшаемой форме, эквивалентная модель VAR (3) также. Таким образом, VAR{1} коэффициент yt-1, и последующие элементы соответствуют последующим задержкам. Ориентация VAR соответствует ориентации VEC.

Отобразите VAR (3) коэффициенты модели.

A1 = VAR{1}
A1 = 3×3

    0.5400    0.8600   -0.4300
    1.8300    0.3200    0.3400
   -2.2600   -1.3100    3.5800

A2 = VAR{2}
A2 = 3×3

     0     0     0
     0     0     0
     0     0     0

A3 = VAR{3}
A3 = 3×3

    0.1400   -0.1200    0.0500
    0.1400    0.0700    0.1000
    0.0700    0.1600    0.0700

Поскольку постоянные перемещения между моделями эквивалентны, получившаяся модель VAR (3)

yt=[0.51-2]+[0.540.86-0.431.830.320.34-2.26-1.313.58]yt-1+[0.14-0.120.050.140.070.100.070.160.07]yt-3+εt.

Рассмотрите преобразование следующей структурной модели VEC(1) к структурной модели VAR (2).

[0.54-2.261.830.86]Δyt=[-0.07-0.070.010.02]Δyt-1+[-0.151.9-3.15-0.54]yt-1+εt.

Задайте содействующие матрицы B0 и B1, и коэффициент исправления ошибок C.

B0 = [0.54 -2.26;
      1.83  0.86];
B1 = [-0.07  -0.07
     0.01 0.02];
C = [-0.15  1.9;
     -3.15  -0.54];

Упакуйте матрицы в отдельные ячейки 3-мерного вектора ячейки. Поместите B0 в первую ячейку и B1 во вторую ячейку. Инвертируйте коэффициенты, соответствующие всем ненулевым терминам задержки differenced.

VECCoeff = {B0; -B1};

Создайте полином оператора задержки, который охватывает авторегрессивные термины в модели VEC(2).

VEC = LagOp(VECCoeff)
VEC = 
    2-D Lag Operator Polynomial:
    -----------------------------
        Coefficients: [Lag-Indexed Cell Array with 2 Non-Zero Coefficients]
                Lags: [0 1]
              Degree: 1
           Dimension: 2

VEC LagOp изолируйте полином оператора, и задает авторегрессивный полином оператора задержки в этом уравнении

(B0-B1L)Δyt=Cyt-1+εt.

L оператор задержки. Если вы расширяете количество и решаете для Δyt, затем результатом является модель VAR (2) в обозначении разностного уравнения.

Вычислите содействующие матрицы эквивалентной модели VAR (2).

VAR = vec2var(VEC,C)
VAR = 
    2-D Lag Operator Polynomial:
    -----------------------------
        Coefficients: [Lag-Indexed Cell Array with 3 Non-Zero Coefficients]
                Lags: [0 1 2]
              Degree: 2
           Dimension: 2

VEC.Coefficients{0} A0, матрица коэффициентов yt. Последующие элементы в VAR.Coefficients соответствуйте последующим задержкам в VEC.Lags.

VAR VAR (2) эквивалентный из модели VEC(1). Поскольку модель VEC(1) структурна, эквивалентный VAR (2) также. Таким образом, VAR.Coefficients{0} коэффициент yt, и последующие элементы соответствуют последующим задержкам в VAR.Lags.

Отобразите VAR (2) коэффициенты модели в обозначении разностного уравнения.

A0 = VAR.Coefficients{0}
A0 = 2×2

    0.5400   -2.2600
    1.8300    0.8600

A1 = -VAR.Coefficients{1}
A1 = 2×2

    0.3200   -0.4300
   -1.3100    0.3400

A2 = -VAR.Coefficients{2}
A2 = 2×2

    0.0700    0.0700
   -0.0100   -0.0200

Получившаяся модель VAR (3)

[0.54-2.261.830.86]yt=[0.32-0.43-1.310.34]yt-1+[0.070.07-0.01-0.02]yt-2+εt.

В качестве альтернативы отразите полином оператора задержки VAR вокруг задержки 0, чтобы получить коэффициенты обозначения разностного уравнения.

DiffEqnCoeffs = reflect(VAR);
A = toCellArray(DiffEqnCoeffs);
A{1} == A0
ans = 2x2 logical array

   1   1
   1   1

A{2} == A1
ans = 2x2 logical array

   1   1
   1   1

A{3} == A2
ans = 2x2 logical array

   1   1
   1   1

Оба метода производят те же коэффициенты.

Аппроксимируйте коэффициенты структурной модели VMA, которая представляет структурную модель VEC(8)

{[10.2-0.10.031-0.150.9-0.251]+[0.5-0.2-0.1-0.3-0.10.10.4-0.2-0.05]L4+[0.05-0.02-0.01-0.1-0.01-0.0010.04-0.02-0.005]L8}Δyt=[-0.020.030.30.050.10.010.30.010.01]yt-1+εt

где Δyt=[Δyt,1Δyt,2Δyt,3], εt=[ε1tε2tε3t], и, для j = 1,2, и 3, Δyt,j=yt,j-yt-1,j.

Создайте вектор ячейки, содержащий VEC (8) матрицы коэффициента модели. Начните с коэффициента Δyt, и затем введите остальных в порядок задержкой. Создайте вектор, который указывает на степень термина задержки для соответствующих коэффициентов.

VEC0 = {[1 0.2 -0.1; 0.03 1 -0.15; 0.9 -0.25 1],...
    [0.5 -0.2 -0.1; -0.3 -0.1 0.1; 0.4 -0.2 -0.05],...
    [0.05 -0.02 -0.01; -0.1 -0.01 -0.001; 0.04 -0.02 -0.005]};
vec0Lags = [0 4 8];
C = [-0.02 0.03 0.3; 0.05 0.1 0.01; 0.3 0.01 0.01];

vec2var требует LagOp изолируйте полином оператора для входного параметра, который включает структурную модель VEC(8). Создайте LagOp изолируйте полином оператора, который описывает модель VEC(8) авторегрессивный компонент матрицы коэффициентов (i.e., коэффициенты Δyt и его задержки).

VECLag = LagOp(VEC0,'Lags',vec0Lags);

VECLag LagOp изолируйте полином оператора, который описывает авторегрессивный компонент модели VEC(8).

Вычислите коэффициенты модели VAR (9), эквивалентной модели VEC(8).

VAR = vec2var(VECLag,C)
VAR = 
    3-D Lag Operator Polynomial:
    -----------------------------
        Coefficients: [Lag-Indexed Cell Array with 6 Non-Zero Coefficients]
                Lags: [0 1 4 5 8 9]
              Degree: 9
           Dimension: 3

VAR LagOp изолируйте полином оператора. Все коэффициенты кроме тех, которые соответствуют задержкам 0, 1, 4, 5, 8, и 9, имеют размер 3х3 матрицы нулей. Коэффициенты в VAR включите устойчивую, структурную модель VAR (9), эквивалентную исходной модели VEC(8). Модель устойчива, потому что коэффициент исправления ошибок имеет полный ранг.

Вычислите коэффициенты приближения модели VMA к получившейся модели VAR (9). Установите numLags возвратить самое большее 12 задержек.

numLags = 12;
VMA = arma2ma(VAR,[],numLags);

VMA LagOp изолируйте полином оператора, содержащий содействующие матрицы получившейся модели VMA(12) в VMA.Coefficients. VMA{0} коэффициент εt, VMA{1} коэффициент εt-1, и так далее.

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

свернуть все

VEC (q) коэффициенты модели differenced ответов в виде числового вектора, вектора ячейки из n-by-n числовые матрицы или LagOp изолируйте объект полинома оператора.

  • Для числовой векторной спецификации:

    • VEC (q) является одномерными временными рядами.

    • VEC должна быть длина q числовой вектор.

    • VEC(j) содержит скалярный Bj, коэффициент изолированного различия Δy tj.

    • Коэффициентом Δyt (B 0) является 1.

  • Для спецификации вектора ячейки:

    • VEC должен иметь длину q, и каждая ячейка содержит n-by-n числовая матрица (n> 1).

    • VEC{j} должен содержать Bj, матрица коэффициентов задержки называют Δy tj.

    • vec2var принимает, что коэффициентом Δyt (B 0) является n-by-n идентичность.

  • Для LagOp спецификация полинома оператора задержки:

    • VEC.Degree должен быть q.

    • VEC.Coefficients{0} B 0, коэффициент Δyt. Все другие элементы соответствуют коэффициентам изолированного последующего, differenced термины. Например, VEC.Coefficients{j} матрица коэффициентов Δy tj. VEC.Lags хранилища все ненулевые задержки.

    • Чтобы создать модель в уменьшаемой форме, установите VEC.Coefficients{0} к eye(VEC.Dimension).

Например, рассмотрите преобразование

[1001]Δyt=[0.10.210.1]Δyt1+[0.10.010.20.3]Δyt2+[0.500.11]yt1+εt

к модели VAR (3). Модель находится в обозначении разностного уравнения. Можно преобразовать модель путем ввода

VAR = vec2var({[0.1 0.2; 1 0.1],...
     -[-0.1 0.01; 0.2 -0.3]},[0.5 0; -0.1 1]);
Модель VEC(2) в обозначении оператора задержки

([1001][0.10.210.1]L[0.10.010.20.3]L2)Δyt=[0.500.11]yt1+εt

Содействующие матрицы AR изолированных ответов кажутся отрицаемыми по сравнению с соответствующими коэффициентами в обозначении разностного уравнения. Получить тот же результат с помощью LagOP изолируйте полиномы оператора, войдите

VEC = LagOp({eye(2), -[0.1 0.2; 1 0.1], -[-0.1 0.01; 0.2 -0.3]});
C = [0.5 0; -0.1 1];
VAR = vec2var(VEC,C);

Коэффициент исправления ошибок в виде n-by-n числовая матрица. n является количеством временных рядов в модели VEC. Размерности C и матрицы, составляющие VEC должно быть эквивалентным.

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

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

свернуть все

VAR (p) коэффициенты модели, возвращенные как числовой вектор, вектор ячейки из n-by-n числовые матрицы или LagOp изолируйте объект полинома оператора. n является количеством временных рядов в модели VEC.

VEC и VAR совместно используйте совпадающий тип данных и ориентацию.

vec2var преобразует модели VEC(q) в модели VAR (q + 1). Это:

  • Если VEC ячейка или числовой вектор, затем numel(VAR) numel(VEC) + 1.

  • Если VEC LagOp изолируйте полином оператора, затем VAR.Degree VEC.Degree + 1.

Больше о

свернуть все

Обозначение разностного уравнения

Модель VAR (p) или VEC (q), написанная в difference-equation notation, изолирует приведенную стоимость вектора отклика и его структурной матрицы коэффициентов на левой стороне уравнения. Правая сторона уравнения содержит сумму изолированных ответов, их содействующих матриц, существующего инновационного вектора, и, для моделей VEC, термина исправления ошибок.

Таким образом, модель VAR (p), написанная в обозначении разностного уравнения,

A0yt=a+A1yt1+A2yt2+...+Apytp+εt.

Модель VEC(q), написанная в обозначении разностного уравнения,

B0Δyt=b+B1Δyt1+B2Δyt2+...+BqΔytq+Cyt1+εt.

Для переменной и определений параметра, смотрите VAR (p) Модель и VEC (q) Модель.

Изолируйте обозначение оператора

Модель VAR (p) или VEC (q), написанная в положениях lag-operator notation весь ответ, называет к левой стороне уравнения. Правая сторона уравнения содержит постоянный вектор смещения модели, существующие инновации, и, для моделей VEC, термина исправления ошибок.

Таким образом, модель VAR (p), написанная в обозначении оператора задержки,

A(L)yt=a+εt

где A(L)=A0A1LA2L2...ApLp и Ljyt=ytj.

Модель VEC(q), написанная в обозначении разностного уравнения,

B(L)Δyt=b+Cyt1+εt

где B(L)=B0B1LB2L2...BqLq.

Для переменной и определений параметра, смотрите VAR (p) Модель и VEC (q) Модель.

При сравнении обозначения оператора задержки с обозначением разностного уравнения знаки терминов задержки являются противоположностями. Для получения дополнительной информации смотрите Обозначение Оператора Задержки.

VAR (p) модель

VAR(p) model является многомерной, авторегрессивной моделью временных рядов, которая имеет эту общую форму:

A0yt=a+A1yt1+A2yt2+...+Apytp+εt.

  • yt является n - размерные временные ряды.

  • A 0 является n-by-n обратимая структурная матрица коэффициентов. Для моделей в reduced form, A 0 = In, который является n - размерная единичная матрица.

  • a является n - размерный вектор из постоянных смещений.

  • Aj является n-by-n матрица коэффициентов yt–j, j = 1..., p.

  • εt является n - размерный инновационный ряд. Инновации являются последовательно некоррелироваными, и имеют многомерное нормальное распределение со средним значением 0 и n-by-n ковариационная матрица Σ.

VEC (q) модель

VEC(q) model является многомерной, авторегрессивной моделью временных рядов, которая имеет эту общую форму:

B0Δyt=b+B1Δyt1+B2Δyt2+...+BqΔytq+Cyt1+εt.

  • yt является n - размерные временные ряды.

  • Δ является первым оператором различия, то есть, Δyt = yty t –1.

  • B 0 является n-by-n обратимая структурная матрица коэффициентов. Для моделей в reduced form, B 0 = In, который является n - размерная единичная матрица.

  • b является n - размерный вектор из постоянных смещений.

  • Bj является n-by-n матрица коэффициентов Δyt–j, j = 1..., q.

  • εt является n - размерный инновационный ряд. Инновации являются последовательно некоррелироваными, и имеют многомерное нормальное распределение со средним значением 0 и n-by-n ковариационная матрица Σ.

  • C является n-by-n матрица коэффициентов удара или исправление ошибок.

Советы

  • Чтобы вместить структурные модели VEC, задайте входной параметр VEC как LagOp изолируйте полином оператора.

  • Получить доступ к вектору ячейки из коэффициентов полинома оператора задержки выходного аргумента VAR, введите toCellArray(VAR).

  • Чтобы преобразовать коэффициенты модели выходного аргумента от обозначения оператора задержки до коэффициентов модели в обозначении разностного уравнения, войти

    VARDEN = toCellArray(reflect(VAR));
    VARDEN вектор ячейки, содержащий q + 1 коэффициент, соответствующий терминам ответа в VAR.Lags в обозначении разностного уравнения. Первым элементом является коэффициент yt, вторым элементом является коэффициент y t –1 и так далее.

  • Постоянное смещение конвертированной модели VAR совпадает с постоянным смещением модели VEC.

Алгоритмы

  • vec2var не налагает требования устойчивости к коэффициентам. Чтобы проверять на устойчивость, используйте isStable.

    isStable требует LagOp изолируйте полином оператора, как введено. Например, чтобы проверять, ли VAR, массив ячеек n- byn числовые матрицы, составляет устойчивые временные ряды, войти

    varLagOp = LagOp([eye(n) var]);
    isStable(varLagOp)

    0 указывает, что полином не устойчив. Если VAR LagOp изолируйте полином оператора, затем передайте его isStable.

Ссылки

[1] Гамильтон, J. D. Анализ Временных Рядов. Принстон, NJ: Издательство Принстонского университета, 1994.

[2] Lutkepohl, H. "Новое введение в несколько анализ временных рядов". Springer-Verlag, 2007.

Введенный в R2015b