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

где инновационный ряд
является iid со средним значением 0 и дисперсией 1,5. Моделирование данных из этой модели. Эта модель является корневым процессом единицы измерения, поскольку многочлен задержки правой стороны имеет характерный корень 1.
Mdl = arima('AR',0.2,'MA',-0.5,'D',1,'Constant',0,... 'Variance',1.5); T = 30; rng(5); Y = simulate(Mdl,T);
Econometrics Toolbox™ имеет четыре формальных теста на выбор, чтобы проверить, является ли временной ряд нестационарным: adftest, kpsstest, pptest, и vratiotest. Использовать adftest для выполнения теста Дики-Фуллера для данных, смоделированных на предыдущих шагах.
adftest(Y)
ans = logical 0
Результат теста показывает, что не следует отвергать нулевую гипотезу о том, что серия является корневым процессом единицы измерения.
Предположим, что у вас нет модели временных рядов, но у вас есть данные. Проверьте график данных. Также проверьте графики функции автокорреляции образца (ACF) и функции частичной автокорреляции образца (PACF).
plot(Y); title('Simulated Time Series') xlabel('t') ylabel('Y') subplot(2,1,1) autocorr(Y) subplot(2,1,2) parcorr(Y)

Наклон графика вниз указывает на процесс корня единицы измерения. Длины отрезков линии на графике ACF постепенно распадаются и продолжают этот рисунок для увеличения лагов. Это поведение указывает на нестационарный ряд.
Предположим, что модель имеет стандартную форму:

Запишите уравнение в нотацию оператора запаздывания и решите для
получения

Использовать LagOp для преобразования рационального многочлена в многочлен. Кроме того, используйте isStable для проверки характерных корней знаменателя.
num = LagOp([1 -0.5]); denom = LagOp([1 -1.2 0.2]); quot = mrdivide(num,denom); [r1,r2] = isStable(denom)
Warning: Termination window not currently open and coefficients
are not below tolerance.
r1 =
logical
0
r2 =
1.0000
0.2000
Это предупреждение указывает, что результирующее частное имеет степень больше 1001, например, может не быть степени окончания. Это указывает на нестабильность. r1 = 0 указывает, что знаменатель является нестабильным. r2 - вектор характеристик корней, один из корней равен 1. Следовательно, это корневой процесс единицы.
isStable - это числовая подпрограмма, которая вычисляет характеристические значения полинома. Если вы используете quot в качестве аргумента для isStable, то выходные данные могут указывать на то, что полином стабилен (т.е. все характеристические значения немного меньше 1). Возможно, потребуется настроить параметры допуска isStable для получения более точных результатов.