estimate

Оцените ARIMA или параметры модели ARIMAX

Синтаксис

EstMdl = estimate(Mdl,y)
[EstMdl,EstParamCov,logL,info] = estimate(Mdl,y)
[EstMdl,EstParamCov,logL,info] = estimate(Mdl,y,Name,Value)

Описание

EstMdl = estimate(Mdl,y) наибольшее правдоподобие использования, чтобы оценить параметры ARIMA (p, D, q) модель Mdl учитывая наблюдаемые одномерные временные ряды y. EstMdl arima модель, которая хранит результаты.

[EstMdl,EstParamCov,logL,info] = estimate(Mdl,y) дополнительно возвращает EstParamCov, ковариационная матрица отклонения сопоставлена предполагаемыми параметрами, logL, оптимизированная целевая функция логарифмической правдоподобности и info, структура данных итоговой информации.

[EstMdl,EstParamCov,logL,info] = estimate(Mdl,y,Name,Value) оценивает модель с дополнительными опциями, заданными одним или несколькими Name,Value парные аргументы.

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

развернуть все

Модель ARIMA или ARIMAX, заданная как arima модель возвращена arima или estimate.

estimate обработки non-NaN элементы в Mdl как ограничения равенства и не оценивает соответствующие параметры.

Один путь данных об ответе, к которым модель является подходящей, задана как числовой вектор-столбец. Последнее наблюдение за y является последним.

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

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Первоначальные оценки несезонных авторегрессивных коэффициентов для модели ARIMA, заданной как разделенная запятой пара, состоящая из 'AR0' и числовой вектор.

Количество коэффициентов в AR0 должен равняться количеству задержек, сопоставленных с ненулевыми коэффициентами в несезонном авторегрессивном полиноме, ARLags.

По умолчанию, estimate выводит первоначальные оценки с помощью стандартных методов временных рядов.

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

Первоначальные оценки коэффициентов регрессии для компонента регрессии, заданного как разделенная запятой пара, состоящая из 'Beta0' и числовой вектор.

Количество коэффициентов в Beta0 должен равняться количеству столбцов X.

По умолчанию, estimate выводит первоначальные оценки с помощью стандартных методов временных рядов.

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

Первоначальная модель ARIMA постоянная оценка, заданная как разделенная запятой пара, состоящая из 'Constant0' и скаляр.

По умолчанию, estimate выводит первоначальные оценки с помощью стандартных методов временных рядов.

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

Параметр отображения Командного окна, заданный как разделенная запятой пара, состоящая из 'Display' и значение или любая комбинация значений в этой таблице.

Значениеоцените Отображения
'diagnostics'Диагностика оптимизации
'full'Оценки параметра наибольшего правдоподобия, стандартные погрешности, статистика t, итеративная информация об оптимизации и диагностика оптимизации
'iter'Итеративная информация об оптимизации
'off'Никакое отображение в Командном окне
'params'Оценки параметра наибольшего правдоподобия, стандартные погрешности и статистика t

Например:

  • Запускать симуляцию, где вы подбираете много моделей, и поэтому хотите подавить весь выход, 'Display','off' использования.

  • Чтобы отобразить все результаты оценки и диагностику оптимизации, используйте 'Display',{'params','diagnostics'}.

Типы данных: char | cell | string

Начальный t - оценка параметра степеней свободы распределения, заданная как разделенная запятой пара, состоящая из 'DoF0' и положительная скалярная величина. DoF0 должен превысить 2.

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

Преддемонстрационные инновации, которые имеют среднее значение 0 и вводят начальные значения для ARIMA (p, D, q) модель, заданная как разделенная запятой пара, состоящая из 'E0' и числовой вектор-столбец.

E0 должен содержать, по крайней мере, Mdl.Q 'Строки' . Если вы используете условную модель отклонения, такую как garch модель, затем программное обеспечение может потребовать больше, чем Mdl.Q преддемонстрационные инновации.

Если E0 содержит дополнительные строки, затем estimate использует последний Mdl.Q преддемонстрационные инновации. Последняя строка содержит последние преддемонстрационные инновации.

По умолчанию, estimate устанавливает необходимые преддемонстрационные инновации на 0.

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

Первоначальные оценки несезонных коэффициентов скользящего среднего значения для ARIMA (p, D, q) модель, заданная как разделенная запятой пара, состоящая из 'MA0' и числовой вектор.

Количество коэффициентов в MA0 должен равняться количеству задержек, сопоставленных с ненулевыми коэффициентами в несезонном полиноме скользящего среднего значения, MALags.

По умолчанию, estimate выводит первоначальные оценки с помощью стандартных методов временных рядов.

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

Опции оптимизации, заданные как разделенная запятой пара, состоящая из 'Options' и optimoptions контроллер оптимизации. Для получения дополнительной информации при изменении значений по умолчанию оптимизатора, смотрите optimoptions или fmincon в Optimization Toolbox™.

Например, чтобы изменить допуск ограничения в 1e-6, установите Options = optimoptions(@fmincon,'ConstraintTolerance',1e-6,'Algorithm','sqp'). Затем передача Options в estimate использование 'Options',Options.

По умолчанию, estimate использует те же опции по умолчанию в качестве fmincon, кроме Algorithm 'sqp' и ConstraintTolerance 1e-7.

Первоначальные оценки сезонных авторегрессивных коэффициентов для ARIMA (p, D, q) модель, заданная как разделенная запятой пара, состоящая из 'SAR0' и числовой вектор.

Количество коэффициентов в SAR0 должен равняться количеству задержек, сопоставленных с ненулевыми коэффициентами в сезонном авторегрессивном полиноме, SARLags.

По умолчанию, estimate выводит первоначальные оценки с помощью стандартных методов временных рядов.

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

Первоначальные оценки сезонных коэффициентов скользящего среднего значения для ARIMA (p, D, q) модель, заданная как разделенная запятой пара, состоящая из 'SMA0' и вектор.

Количество коэффициентов в SMA0 должен равняться количеству задержек с ненулевыми коэффициентами в сезонном полиноме скользящего среднего значения, SMALags.

По умолчанию, estimate выводит первоначальные оценки с помощью стандартных методов временных рядов.

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

Преддемонстрационные условные отклонения, которые вводят начальные значения для любой условной модели отклонения, заданной как разделенная запятой пара, состоящая из 'V0' и числовой вектор-столбец с положительными записями.

Программное обеспечение требует V0 иметь, по крайней мере, количество наблюдений, требуемых инициализировать модель отклонения. Если количество строк в V0 превышает необходимый номер, затем estimate только использует последние наблюдения. Последняя строка содержит последнее наблюдение.

Если отклонение модели является постоянным, то V0 является ненужным.

По умолчанию, estimate устанавливает необходимые преддемонстрационные условные отклонения на среднее значение выведенных остаточных значений в квадрате.

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

Первоначальные оценки отклонений инноваций для ARIMA (p, D, q) модель, заданная как разделенная запятой пара, состоящая из 'Variance0' и положительная скалярная величина или вектор ячейки положительных скалярных величин. Если Variance0 вектор ячейки, затем условная модель отклонения должна распознать названия параметра допустимыми коэффициентами.

По умолчанию, estimate выводит первоначальные оценки с помощью стандартных методов временных рядов.

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

Внешние предикторы в модели регрессии, заданной как разделенная запятой пара, состоящая из 'X' и матрица.

Столбцы X отдельные, синхронизируемые временные ряды, с последней строкой, содержащей последние наблюдения.

Если вы не задаете Y0, затем количество строк X должен быть, по крайней мере, numel(y,2) + Mdl.P. В противном случае, количество строк X должна быть, по крайней мере, длина y.

Если количество строк X превышает необходимый номер, затем estimate использует последние наблюдения и синхронизирует X с серией y ответа.

По умолчанию, estimate не оценивает коэффициенты регрессии независимо от их присутствия в Mdl.

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

Преддемонстрационные данные об ответе, которые вводят начальные значения для ARIMA (p, D, q) модель, заданная как разделенная запятой пара, состоящая из 'Y0' и числовой вектор-столбец.

Y0 вектор-столбец, по крайней мере, с Mdl.P 'Строки' . Если количество строк в Y0 превышает Mdl.P, estimate только использует последний Mdl.P наблюдения. Последняя строка содержит последнее наблюдение.

По умолчанию, estimate обратные прогнозы для необходимого объема преддемонстрационных наблюдений.

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

Примечания

  • NaNs указывают на отсутствующие значения и estimate удаляет их. Программное обеспечение объединяет преддемонстрационные данные (E0, V0, и Y0) отдельно от эффективных выборочных данных (X и y), затем использует мудрое списком удаление, чтобы удалить любой NaNs. Удаление NaNs в данных уменьшает объем выборки и может также создать неправильные временные ряды.

  • Удаление NaNs в данных уменьшает объем выборки и может также создать неправильные временные ряды.

  • estimate принимает, что вы синхронизируете ответ и внешние предикторы, таким образом, что последнее (последнее) наблюдение за каждым происходит одновременно. Программное обеспечение также принимает, что вы синхронизируете преддемонстрационный ряд так же.

  • Если вы задаете значение для Display, затем это более приоритетно по сравнению со спецификациями опций оптимизации Diagnostics и Display. В противном случае, estimate почести все выборы, связанные с отображением информации об оптимизации в опциях оптимизации.

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

развернуть все

Модель, содержащая оценки параметра, возвращенные как arima модель. estimate наибольшее правдоподобие использования, чтобы вычислить все оценки параметра, не ограниченные Mdl (то есть, все параметры в Mdl то, что вы устанавливаете на NaN).

Ковариационная матрица отклонения оценок наибольшего правдоподобия параметров модели, известных оптимизатору, возвращенному как матрица.

Строки и столбцы содержат ковариации оценок параметра. Стандартные погрешности оценок параметра являются квадратным корнем из записей по основной диагонали.

Строки и столбцы, сопоставленные любыми параметрами, сохраненными зафиксированными как ограничения равенства, содержат 0s.

estimate использует векторное произведение градиентов (OPG) метод, чтобы выполнить оценку ковариационной матрицы.

estimate заказывает параметры в EstParamCov можно следующим образом:

  • Постоянный

  • Ненулевой AR коэффициенты в положительных задержках

  • Ненулевой SAR коэффициенты в положительных задержках

  • Ненулевой MA коэффициенты в положительных задержках

  • Ненулевой SMA коэффициенты в положительных задержках

  • Коэффициенты регрессии (когда вы задаете X в estimate)

  • Параметры отклонения (скаляр для моделей постоянного отклонения, вектора дополнительных параметров в противном случае)

  • Степени свободы (только инновационное распределение t)

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

Оптимизированное значение целевой функции логарифмической правдоподобности, возвращенное как скаляр.

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

Итоговая информация, возвращенная как структура.

Поле Описание
exitflagВыходной флаг оптимизации (см. fmincon в Optimization Toolbox)
optionsКонтроллер опций оптимизации (см. optimoptions и fmincon в Optimization Toolbox)
XВектор итоговых оценок параметра
X0Вектор начальных оценок параметра

Например, можно отобразить вектор итоговых оценок путем ввода info.X в Командном окне.

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

Примеры

развернуть все

Подбирайте модель ARMA(2,1) к симулированным данным.

Симулируйте 500 точек данных из модели ARMA(2,1)

yt=0.5yt-1-0.3yt-2+εt+0.2εt-1,

где εt следует за Распределением Гаусса со средним значением 0 и отклонением 0.1.

Mdl = arima('AR',{0.5,-0.3},'MA',0.2,...
	'Constant',0,'Variance',0.1);

rng(5); % For reproducibility
y = simulate(Mdl,500);

Симулированные данные хранятся в вектор-столбце Y.

Задайте модель ARMA(2,1) без постоянных и неизвестных коэффициентов и отклонения.

ToEstMdl = arima(2,0,1);
ToEstMdl.Constant = 0
ToEstMdl = 
  arima with properties:

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

Подбирайте модель ARMA(2,1) к y.

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

    Constant           0              0           NaN             NaN
    AR{1}        0.49404        0.10321        4.7866      1.6961e-06
    AR{2}       -0.25348        0.06993       -3.6248      0.00028921
    MA{1}        0.27958        0.10721        2.6078       0.0091132
    Variance     0.10009      0.0066403        15.073      2.4228e-51

Результатом является новый arima модель под названием EstMdl. Оценки в EstMdl напомните значения параметров, которые сгенерировали симулированные данные.

Подбирайте интегрированную модель ARIMA (1,1,1) к дневному закрытию Сводного индекса NASDAQ.

Загрузите данные NASDAQ, включенные с тулбоксом. Извлеките первые 1 500 наблюдений за Сводным индексом (январь 1990 до декабря 1995).

load Data_EquityIdx
nasdaq = DataTable.NASDAQ(1:1500);

Задайте модель ARIMA (1,1,1) для подбора кривой.

Mdl = arima(1,1,1);

Модель является несезонной, таким образом, можно использовать краткий синтаксис.

Подбирайте модель к первой половине данных.

EstMdl = estimate(Mdl,nasdaq(1:750));
 
    ARIMA(1,1,1) Model (Gaussian Distribution):
 
                 Value     StandardError    TStatistic      PValue   
                _______    _____________    __________    ___________

    Constant     0.2234       0.18418          1.213          0.22513
    AR{1}       0.11434       0.11944        0.95733           0.3384
    MA{1}       0.12764       0.11925         1.0703          0.28448
    Variance     18.983       0.68999         27.512      1.2547e-166

Результатом является новый arima модель (EstMdl). Предполагаемые параметры, их стандартные погрешности, и t статистические данные отображаются в Командном окне.

Используйте предполагаемые параметры в качестве начальных значений для подбора кривой второй половине данных.

con0 = EstMdl.Constant;
ar0 = EstMdl.AR{1};
ma0 = EstMdl.MA{1};
var0 = EstMdl.Variance;

[EstMdl2,EstParamCov2,logL2,info2] = estimate(Mdl,....
   nasdaq(751:end),'Constant0',con0,'AR0',ar0,...
   'MA0',ma0,'Variance0',var0);
 
    ARIMA(1,1,1) Model (Gaussian Distribution):
 
                 Value      StandardError    TStatistic      PValue   
                ________    _____________    __________    ___________

    Constant     0.61143       0.32675         1.8712         0.061311
    AR{1}       -0.15071       0.11782        -1.2792          0.20083
    MA{1}        0.38569       0.10905         3.5366       0.00040526
    Variance      36.493         1.227         29.742      2.1907e-194

Оценки параметра хранятся в info структура данных. Отобразите итоговые оценки параметра.

info2.X
ans = 4×1

    0.6114
   -0.1507
    0.3857
   36.4933

Подбирайте модель ARIMAX к симулированным временным рядам, не задавая начальные значения для ответа или параметров.

Задайте модель ARIMAX(2,1,1)

(1-0.5L+0.3L2)(1-L)1yt=1.5x1,t+2.6x2,t-0.3x3,t+εt+0.2εt-1

в конечном счете симулировать временные ряды длины 500, где εt следует за Распределением Гаусса со средним значением 0 и отклонением 0.1.

Mdl = arima('AR',{0.5,-0.3},'MA',0.2,'D',1,...
    'Constant',0,'Variance',0.1,'Beta',[1.5 2.6 -0.3]);
T = 500;

Симулируйте три стационарных серии AR (1) и преддемонстрационные значения:

x1,t=0.1x1,t-1+η1,tx2,t=0.2x2,t-1+η2,tx3,t=0.3x3,t-1+η3,t,

где ηi,t следует за Распределением Гаусса со средним значением 0 и отклонением 0.01 поскольку i = {1,2,3}.

numObs = Mdl.P + T;
MdlX1 = arima('AR',0.1,'Constant',0,'Variance',0.01);
MdlX2 = arima('AR',0.2,'Constant',0,'Variance',0.01);
MdlX3 = arima('AR',0.3,'Constant',0,'Variance',0.01);
X1 = simulate(MdlX1,numObs);
X2 = simulate(MdlX2,numObs);
X3 = simulate(MdlX3,numObs);
Xmat = [X1 X2 X3];

Симулированные внешние предикторы хранятся в numObs- 3 матричных Xmat.

Симулируйте 500 точек данных из модели ARIMA (2,1,1).

y = simulate(Mdl,T,'X',Xmat);

Симулированный ответ хранится в вектор-столбце y.

Создайте модель ARIMA (2,1,1) с известным 0- ценные постоянные и неизвестные коэффициенты и отклонение.

ToEstMdl = arima(2,1,1);
ToEstMdl.Constant = 0
ToEstMdl = 
  arima with properties:

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

ToEstMdl модель ARIMA (2,1,1). estimate изменения это обозначение к ARIMAX (2,1,1), когда вы передаете внешние предикторы в X аргумент. estimate оценки все параметры со значением NaN в ToEstMdl.

Подбирайте модель ARIMAX(2,1,1) к y включая матрицу регрессии Xmat.

EstMdl = estimate(ToEstMdl,y,'X',Xmat);
 
    ARIMAX(2,1,1) Model (Gaussian Distribution):
 
                 Value      StandardError    TStatistic      PValue  
                ________    _____________    __________    __________

    Constant           0             0            NaN             NaN
    AR{1}        0.41634      0.046067         9.0376       1.601e-19
    AR{2}       -0.27405      0.040645        -6.7427      1.5552e-11
    MA{1}         0.3346      0.057208         5.8488        4.95e-09
    Beta(1)       1.4194       0.14242         9.9662      2.1429e-23
    Beta(2)        2.542        0.1331         19.098      2.6194e-81
    Beta(3)     -0.28767       0.14035        -2.0496        0.040399
    Variance    0.096777      0.005791         16.712        1.08e-62

ToEstMdl новый arima модель, определяемая как ARIMAX (2,1,1) начиная с внешних предикторов, вводит модель. Оценки в ToEstMdl напомните значения параметров, которые сгенерировали симулированные данные.

Советы

  • К значениям доступа результатов оценки, включая количество свободных параметров в модели, EstMdl передачи к summarize.

Ссылки

[1] Поле, G. E. P. Г. М. Дженкинс и Г. К. Рейнсель. Анализ Временных Рядов: Предсказывая и Управление 3-й редактор Englewood Cliffs, NJ: Prentice Hall, 1994.

[2] Enders, W. Прикладные эконометрические временные ряды. Хобокен, NJ: John Wiley & Sons, 1995.

[3] Грин, В. Х. Эконометрик Анэлизис. 3-й редактор Верхний Сэддл-Ривер, NJ: Prentice Hall, 1997.

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

Для просмотра документации необходимо авторизоваться на сайте