Этот пример симулирует данные из произвольной 3-D модели VAR (2) и подбирает модель VAR (2) к симулированным данным.
Создайте следующую модель VAR.
3-D стандартная Гауссова случайная переменная и 3х3 единичная матрица.
Constant = [1; 0.5; -0.5]; AR1 = [0.3 -0.1 0.05; 0.1 0.2 0.1; -0.1 0.2 0.4]; AR2 = [0.1 0.05 0.001; 0.001 0.1 0.01; -0.01 -0.01 0.2]; Trend = [0.5; -0.2; 0]; L = eye(3); TrueMdl = varm('Constant',Constant,'AR',{AR1 AR2},'Trend',Trend,... 'Covariance',L);
TrueMdl
полностью заданный varm
объект модели, что означает все параметры его соответствующей модели VAR (2), известен.
Сгенерируйте путь к временным рядам длины 100 использований simulate
.
rng(1); % For reproducibility
numobs = 100;
Y = simulate(TrueMdl,numobs);
Создайте 3-D шаблон модели VAR (2) для оценки. Задайте присутствие линейного компонента тренда.
Mdl = varm(3,2); Mdl.Trend = nan(Mdl.NumSeries,1);
Mdl
varm
объект модели, служащий шаблоном для оценки.
Подбирайте модель VAR к симулированным данным путем вызова estimate
.
EstMdl = estimate(Mdl,Y);
EstMdl
полностью заданный, предполагаемый varm
объект модели. Объем выборки оценки равняется 98 потому что estimate
требует 2 преддемонстрационных наблюдений для инициализации.
Сравните предполагаемую модель с истинной моделью.
results = summarize(EstMdl)
results = struct with fields:
Description: "AR-Stationary 3-Dimensional VAR(2) Model with Linear Time Trend"
SampleSize: 98
NumEstimatedParameters: 24
LogLikelihood: -396.0032
AIC: 840.0063
BIC: 902.0456
Table: [24x4 table]
Covariance: [3x3 double]
Correlation: [3x3 double]
Lhat = chol(EstMdl.Covariance,'lower')
Lhat = 3×3
0.9632 0 0
-0.0926 0.9555 0
0.0337 -0.0190 0.8755
trueValues = [Constant; AR1(:); AR2(:); Trend]; compCoeff = abs(results.Table.Value - trueValues); twoSE = compCoeff > 2*results.Table.StandardError
twoSE = 24x1 logical array
1
0
0
0
0
0
0
0
0
0
⋮
Оценка L
, инновационная матрица шкалы, довольно близко в величине к единичной матрице. Только предполагаемая константа в первом ряду ответа является двумя стандартными погрешностями далее от его истинного значения.