Создайте векторную модель (VAR) авторегрессии
varm функция возвращает varm объект, задающий функциональную форму и хранящий значения параметров p - порядок, стационарная, многомерная векторная модель (VAR(p)) модели авторегрессии.
Ключевые компоненты varm объект включает количество временных рядов (response-variable dimensionality) и порядок многомерного авторегрессивного полинома (p), потому что они полностью задают структуру модели. Другие компоненты модели включают компонент регрессии, чтобы сопоставить те же внешние переменные предикторы к каждому ряду ответа, и постоянный и условия тренда времени. Учитывая размерность переменной отклика и p, все содействующие матрицы и инновационные параметры распределения являются неизвестными и допускающими оценку, если вы не задаете их значения.
Чтобы оценить модели, содержащие неизвестные значения параметров, передайте модель и данные к estimate. Работать с предполагаемым или полностью заданным varm объект модели, передайте его объектной функции.
создает модель VAR (0), состоявшую из одного ряда ответа.Mdl = varm
создает VAR (Mdl = varm(numseries,numlags)numlags) модель состоит из numseries ряд ответа. Максимальной ненулевой задержкой является numlags. Все задержки имеют numseries- numseries содействующие матрицы состоят из NaN значения.
Этот краткий синтаксис допускает легкое создание шаблона модели. Шаблон модели подходит для неограниченной оценки параметра, то есть, оценки без ограничений равенства параметра. После того, как вы создадите модель, можно изменить значения свойств с помощью записи через точку.
свойства наборов или аргументы пары "имя-значение" использования дополнительных опций. Заключите каждое имя в кавычки. Например, Mdl = varm(Name,Value)'Lags',[1 4],'AR',AR задает две авторегрессивных содействующих матрицы в AR в задержках 1 и 4.
Этот рукописный синтаксис допускает создание более гибких моделей. varm выводит количество ряда (NumSeries) и авторегрессивная полиномиальная степень (P) из свойств, которые вы устанавливаете. Поэтому значения свойств, которые соответствуют количеству ряда или авторегрессивной полиномиальной степени, должны быть сопоставимы друг с другом.
Краткий синтаксис обеспечивает простой способ к вам создать шаблоны модели, которые подходят для неограниченной оценки параметра. Например, чтобы создать модель VAR (2), состоявшую из трех рядов ответа, введите:
Mdl = varm(3,2);
numseries — Количество временных рядовКоличество временных рядов, заданных как положительное целое число. numseries задает размерность многомерной переменной отклика и инноваций, yt и εt, соответственно.
Типы данных: double
numlags — Количество изолированных ответовКоличество изолированных ответов, чтобы включать в модель, заданную как неотрицательное целое число. Получившаяся модель является VAR (numlags) модель. Все задержки имеют numseries- numseries содействующие матрицы состоят из NaN значения.
Типы данных: double
Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
Рукописный синтаксис позволяет вам создать модели, в которых некоторые или все коэффициенты известны. Во время оценки, estimate налагает ограничения равенства на любые известные параметры.
'Lags',[4 8] задает модель VAR (8) с ненулевыми авторегрессивными содействующими матрицами в задержках 4 и 8.Чтобы установить значения для перезаписываемых свойств, используйте Name,Value парный синтаксис аргумента. Например, 'Constant',[1; 2],'AR',{[0.1 -0.2; -0.3 0.5]} наборы Constant к [1; 2] и AR к {[0.1 -0.2; -0.3 0.5]}.
'Lags' — Авторегрессивные полиномиальные задержки1:P (значение по умолчанию) | числовой вектор уникальных положительных целых чиселАвторегрессивные полиномиальные задержки, заданные как разделенная запятой пара, состоящая из 'Lags' и числовой вектор, содержащий в большей части P элементы уникальных положительных целых чисел.
Длины Lags и AR должно быть равным. Задержки ( задержка, соответствующая j)AR матрицы коэффициентов {.j}
Пример: 'Lags',[1 4]
Типы данных: double
Можно установить перезаписываемые значения свойств, когда вы создаете объект модели при помощи синтаксиса аргумента пары "имя-значение", или после того, как вы создаете объект модели при помощи записи через точку. Например, чтобы создать модель VAR (1), состоявшую из двух рядов ответа, и затем задать неизвестный тренд времени, называют, введите:
Mdl = varm('AR',{NaN(2)});
Mdl.Trend = NaN;NumSeries — Количество временных рядовЭто свойство доступно только для чтения.
Количество временных рядов, заданных как положительное целое число. NumSeries задает размерность многомерной переменной отклика и инноваций, yt и εt, соответственно.
Типы данных: double
P — Многомерный авторегрессивный полиномиальный порядокЭто свойство доступно только для чтения.
Многомерный авторегрессивный полиномиальный порядок, заданный как неотрицательное целое число. P максимальная задержка, которая имеет ненулевую матрицу коэффициентов. Задержки, которые меньше P могли составить содействующие матрицы полностью нулей.
P задает количество преддемонстрационных наблюдений, требуемых инициализировать модель.
Типы данных: double
Constant — Прерывания моделиNaN(NumSeries,1) (значение по умолчанию) | числовой векторПрерывания модели (или константы), заданный как NumSeries- 1 числовой вектор.
Пример: 'Constant',[1; 2]
Типы данных: double
AR — Авторегрессивные содействующие матрицыАвторегрессивные содействующие матрицы сопоставлены с изолированными ответами, заданными как вектор ячейки NumSeries- NumSeries числовые матрицы.
Задайте содействующие знаки, соответствующие тем коэффициентам в модели VAR, выраженной в обозначении разностного уравнения.
Если вы устанавливаете Lags аргумент пары "имя-значение" Lags, затем следующие условия применяются.
Длины AR и Lags равны.
AR { матрица коэффициентов j}Задержек задержки (.j)
По умолчанию, AR numel(Lags)- 1 вектор ячейки матриц, состоявших из NaN значения.
В противном случае следующие условия применяются.
Длина AR P.
AR { матрица коэффициентов задержки j}j.
По умолчанию, AR P- 1 вектор ячейки матриц, состоявших из NaN значения.
Пример: 'AR',{[0.5 -0.1; 0.1 0.2]}
Типы данных: cell
Trend — Линейный тренд времениzeros(NumSeries,1) (значение по умолчанию) | числовой векторЛинейный термин тренда времени, заданный как NumSeries- 1 числовой вектор. Значение по умолчанию не задает линейного тренда времени в модели.
Пример: 'Trend',[0.1; 0.2]
Типы данных: double
Beta — Матрица коэффициента регрессииNumSeries- 0 пустых матриц (значение по умолчанию) | числовая матрицаМатрица коэффициента регрессии сопоставлена с переменными предикторами, заданными как NumSeries- NumPreds числовая матрица. NumPreds количество переменных предикторов, то есть, количество столбцов в данных о предикторе.
Бета ( содержит коэффициенты регрессии для каждого предиктора в уравнении ответа yj,:)jT. \beta: содержит коэффициент регрессии в каждом уравнении ответа для предиктора xk. По умолчанию все переменные предикторы находятся в компоненте регрессии всех уравнений ответа. Можно исключить определенные предикторы из определенных уравнений путем определения ограничений равенства к 0.K)
Пример: В модели, которая включает 3 ответа и 4 переменных предиктора, чтобы исключить второй предиктор из третьего уравнения и оставить другие неограниченными, задают [NaN NaN NaN NaN; NaN NaN NaN NaN; NaN 0 NaN NaN].
Значение по умолчанию не задает коэффициента регрессии в модели. Однако, если вы задаете данные о предикторе, когда вы оцениваете модель с помощью estimate, затем MATLAB® устанавливает Beta к соответственно размерной матрице NaN значения.
Пример: 'Beta',[2 3 -1 2; 0.5 -1 -6 0.1]
Типы данных: double
Covariance — Инновационная ковариационная матрицаNaN(NumSeries) (значение по умолчанию) | числовая, положительная определенная матрицаИнновационная ковариационная матрица NumSeries инновации в каждый раз t = 1..., T, заданный как NumSeries- NumSeries числовая, положительная определенная матрица.
Пример: 'Covariance',eye(2)
Типы данных: double
Description Описание моделиОписание модели, заданное как скаляр строки или вектор символов. varm хранит значение как скаляр строки. Значение по умолчанию описывает параметрическую форму модели, например
, "2-Dimensional VAR(3) Model".
Пример: 'Description','Model 1'
Типы данных: string | char
SeriesNames — Серийные имена ответаСерийные имена ответа, заданные как NumSeries вектор строки длины. Значением по умолчанию является ['Y1' 'Y2'... 'Y.NumSeries']
Пример: 'SeriesNames',{'CPI' 'Unemployment'}
Типы данных: string
NaN- ценные элементы в свойствах указывают на неизвестные, допускающие оценку параметры. Указанные элементы указывают на ограничения равенства на параметры по оценке модели. Инновационная ковариационная матрица Covariance не может содержать соединение NaN значения и вещественные числа; необходимо полностью задать ковариацию, или это должно быть абсолютно неизвестно (NaN(NumSeries)).
estimate | Подбирайте векторную модель (VAR) авторегрессии к данным |
fevd | Сгенерируйте векторное разложение отклонения ошибки прогноза (FEVD) модели (VAR) авторегрессии |
filter | Пропустите воздействия через векторную модель (VAR) авторегрессии |
forecast | Предскажите векторные ответы модели (VAR) авторегрессии |
gctest | Причинная связь Грейнджера и блок exogeneity тестируют на векторные модели (VAR) авторегрессии |
infer | Выведите векторную модель авторегрессии (VAR) инновации |
irf | Сгенерируйте векторные импульсные характеристики модели (VAR) авторегрессии |
simulate | Симуляция Монте-Карло векторной модели (VAR) авторегрессии |
summarize | Отобразите результаты оценки векторной модели (VAR) авторегрессии |
vecm | Преобразуйте векторную модель (VAR) авторегрессии в модель векторного исправления ошибок (VEC) |
Создайте модель VAR нулевой степени, состоявшую из одного ряда ответа.
Mdl = varm
Mdl =
varm with properties:
Description: "1-Dimensional VAR(0) Model"
SeriesNames: "Y"
NumSeries: 1
P: 0
Constant: NaN
AR: {}
Trend: 0
Beta: [1×0 matrix]
Covariance: NaN
Mdl varm объект модели. Это содержит один ряд ответа, неизвестную константу, и неизвестное инновационное отклонение. Свойства модели появляются в командной строке.
Предположим, что ваша проблема имеет авторегрессивный коэффициент в задержке 1. Чтобы создать такую модель, установите авторегрессивное содействующее свойство (AR) к ячейке, содержащей NaN значение с помощью записи через точку.
Mdl.AR = {NaN}Mdl =
varm with properties:
Description: "1-Dimensional VAR(1) Model"
SeriesNames: "Y"
NumSeries: 1
P: 1
Constant: NaN
AR: {NaN} at lag [1]
Trend: 0
Beta: [1×0 matrix]
Covariance: NaN
Если ваша проблема содержит ряд множественного ответа, то используйте различный varm синтаксис для создания модели.
Создайте модель VAR (4) для индекса потребительских цен (CPI) и уровня безработицы.
Загрузите Data_USEconModel набор данных. Объявите переменные для CPI (CPI) и уровень безработицы (UNRATE) ряд.
load Data_USEconModel
cpi = DataTable.CPIAUCSL;
unrate = DataTable.UNRATE;Создайте модель 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 объект модели. Это служит шаблоном для оценки модели. MATLAB® рассматривает любой NaN значения как неизвестные значения параметров, которые будут оценены. Например, Constant свойство 2 1 вектор NaN значения. Поэтому константы модели являются активными параметрами модели, которые будут оценены.
Включайте неизвестный линейный термин тренда времени путем установки Trend свойство к NaN использование записи через точку.
Mdl.Trend = NaN
Mdl =
varm with properties:
Description: "2-Dimensional VAR(4) Model with Linear Time Trend"
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 NaNs]
Beta: [2×0 matrix]
Covariance: [2×2 matrix of NaNs]
MATLAB расширяет NaN к соответствующей длине, то есть, 2 1 вектор NaN значения.
Создайте модель VAR для трех произвольных рядов ответа. Задайте значения параметров в этой системе уравнений.
Примите, что инновации многомерны Гауссов со средним значением 0 и ковариационная матрица
Создайте переменные для значений параметров.
c = [1; 1; 0];
Phi1 = {[0.2 -0.1 0.5; -0.4 0.2 0; -0.1 0.2 0.3]};
delta = [1.5; 2; 0];
Sigma = [0.1 0.01 0.3; 0.01 0.5 0; 0.3 0 1];Создайте VAR (1) объект модели, представляющий систему динамических уравнений с помощью соответствующих аргументов пары "имя-значение".
Mdl = varm('Constant',c,'AR',Phi1,'Trend',delta,'Covariance',Sigma)
Mdl =
varm with properties:
Description: "AR-Stationary 3-Dimensional VAR(1) Model with Linear Time Trend"
SeriesNames: "Y1" "Y2" "Y3"
NumSeries: 3
P: 1
Constant: [1 1 0]'
AR: {3×3 matrix} at lag [1]
Trend: [1.5 2 0]'
Beta: [3×0 matrix]
Covariance: [3×3 matrix]
Mdl полностью заданный varm объект модели. По умолчанию, varm приписывает авторегрессивный коэффициент первой задержке.
Можно настроить свойства модели с помощью записи через точку. Например, рассмотрите другую модель VAR, которая приписывает авторегрессивную матрицу коэффициентов Phi1 к второму термину задержки, задает матрицу нулей для первого коэффициента задержки и обрабатывает все остальное как являющееся равным Mdl. Создайте эту модель VAR (2).
Mdl2 = Mdl; Phi = [zeros(3,3) Phi1]; Mdl2.AR = Phi
Mdl2 =
varm with properties:
Description: "AR-Stationary 3-Dimensional VAR(2) Model with Linear Time Trend"
SeriesNames: "Y1" "Y2" "Y3"
NumSeries: 3
P: 2
Constant: [1 1 0]'
AR: {3×3 matrix} at lag [2]
Trend: [1.5 2 0]'
Beta: [3×0 matrix]
Covariance: [3×3 matrix]
В качестве альтернативы можно создать другой объект модели с помощью varm и тот же синтаксис что касается Mdl, но дополнительно задайте 'Lags',2.
Подбирайте модель VAR (4) к данным об уровне безработицы и индексу потребительских цен (CPI).
Загрузите Data_USEconModel набор данных.
load Data_USEconModelПостройте два ряда на отдельных графиках.
figure; plot(DataTable.Time,DataTable.CPIAUCSL); title('Consumer Price Index'); ylabel('Index'); xlabel('Date');

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

Стабилизируйте CPI путем преобразования его в серию темпов роста. Синхронизируйте два ряда путем удаления первого наблюдения из ряда уровня безработицы.
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) Модель.
Создайте и оцените модель VAR (4) для темпа роста CPI и показателей безработицы. Обработайте последние десять периодов как горизонт прогноза.
load Data_USEconModel
cpi = DataTable.CPIAUCSL;
unrate = DataTable.UNRATE;
rcpi = price2ret(cpi);
unrate = unrate(2:end);
Y = [rcpi unrate];
Mdl = varm(2,4);
EstMdl = estimate(Mdl,Y(1:(end-10),:));Предскажите 10 ответов с помощью предполагаемой модели и в выборочных данных как преддемонстрационных наблюдений.
YF = forecast(EstMdl,10,Y(1:(end-10),:));
Постройте часть ряда с их предсказанными значениями на отдельных графиках.
figure; plot(DataTable.Time(end - 50:end),rcpi(end - 50:end)); hold on plot(DataTable.Time((end - 9):end),YF(:,1)) h = gca; fill(DataTable.Time([end - 9 end end end - 9]),h.YLim([1,1,2,2]),'k',... 'FaceAlpha',0.1,'EdgeColor','none'); legend('True CPI growth rate','Forecasted CPI growth rate',... 'Location','NW') title('Quarterly CPI Growth Rate: 1947 - 2009'); ylabel('CPI growth rate'); xlabel('Year'); hold off

figure; plot(DataTable.Time(end - 50:end),unrate(end - 50:end)); hold on plot(DataTable.Time((end - 9):end),YF(:,2)) h = gca; fill(DataTable.Time([end - 9 end end end - 9]),h.YLim([1,1,2,2]),'k',... 'FaceAlpha',0.1,'EdgeColor','none'); legend('True unemployment rate','Forecasted unemployment rate',... 'Location','NW') title('Quarterly Unemployment Rate: 1947 - 2009'); ylabel('Unemployment rate'); xlabel('Year'); hold off

vector autoregression (VAR) model является стационарной многомерной моделью временных рядов, состоящей из системы уравнений m m отличные переменные отклика как линейные функции изолированных ответов и других условий.
Модель VAR (p) в difference-equation notation и в reduced form
yt является numseries- 1 вектор значений, соответствующих numseries переменные отклика во время t, где t = 1..., T. Структурный коэффициент является единичной матрицей.
c является numseries- 1 вектор констант.
Φj является numseries- numseries матрица авторегрессивных коэффициентов, где j = 1..., p и Φp не является матрицей, содержащей только нули.
xt является numpreds- 1 вектор значений, соответствующих numpreds внешние переменные предикторы.
β является numseries- numpreds матрица коэффициентов регрессии.
δ является numseries- 1 вектор линейных значений тренда времени.
εt является numseries- 1 вектор случайных Гауссовых инноваций, каждого со средним значением 0 и коллективно numseries- numseries ковариационная матрица Σ. Для t ≠ s, εt и εs независимы.
Сжатый и в обозначении оператора задержки, система
где , Φ (L), yt является многомерным авторегрессивным полиномом и I, является numseries- numseries единичная матрица.
Например, модель VAR (1), содержащая два ряда ответа и три внешних переменных предиктора, имеет эту форму
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.