Econometrics Toolbox Моделирует объекты, свойства и функции объекта

Объекты модели

После того, как у вас есть потенциальная модель для ваших данных, вы должны задать модель в MATLAB® чтобы продолжить анализ. Econometrics Toolbox™ имеет объекты модели для хранения эконометрических моделей в дискретном времени.

Для одномерных рядов доступными объектами модели являются:

  • arima - для интегрированных, авторегрессивных, скользящих средних значений (ARIMA) моделей, опционально содержащих экзогенные переменные предиктора

  • garch - для обобщенных авторегрессионных моделей условной гетероскедастичности (GARCH)

  • egarch - для экспоненциальных моделей GARCH

  • gjr - для моделей Глостена-Яганнатана-Ранкла

  • regARIMA - для регрессионных моделей с ошибками ARIMA

Для многомерных рядов доступными объектами модели являются:

  • varm - для векторных моделей авторегрессии, опционально содержащих переменные экзогенного предиктора

  • vecm - для векторных моделей коррекции ошибок (коинтегрированных VARM), опционально содержащих переменные экзогенного предиктора

Econometrics Toolbox поддерживает одномерный байесовский линейный регрессионный анализ. Объекты модели задают предшествующее распределение коэффициентов регрессии и отклонение нарушения порядка. Доступные объекты предыдущей модели:

  • conjugateblm - для нормальной-обратной-гамма-сопряженной предыдущей модели. Коэффициенты регрессии и отклонение нарушения порядка являются зависимыми случайными переменными.

  • semiconjugateblm - для нормально-обратной-гамма-полусредней предшествующей модели. Коэффициенты регрессии и отклонение нарушения порядка являются независимыми случайными переменными.

  • diffuseblm - предшествующее распределение соединений пропорционально обратному отклонению нарушения порядка.

  • empiricalblm - предшествующее распределение соединений задается случайной выборкой из апостериорного распределения соединений.

  • customblm - предшествующее распределение соединений задается в пользовательской функции, которую вы объявляете.

Для выполнения выбора байесовских переменных доступными объектами предшествующей модели являются:

  • mixconjugateblm - для выполнения стохастического выбора переменной поиска (SSVS). Коэффициенты регрессии и отклонение нарушения порядка являются зависимыми случайными переменными (предыдущие и апостериорные распределения являются сопряженными).

  • mixsemiconjugateblm - для выполнения SSVS. Коэффициенты регрессии и отклонение нарушения порядка являются независимыми случайными переменными (априорные и апостериорные распределения являются полунъюгатными).

  • lassoblm - для выполнения байесовской регрессии лассо.

Econometrics Toolbox поддержек моделирование и анализ дискретных или непрерывных состояний моделей Маркова. Доступными объектами модели являются:

  • dtmc - для моделей дискретных цепей Маркова, характеризующихся матрицами переходов.

  • ssm - для непрерывных многомерных моделей пространства состояний, опционально содержащих переменные экзогенного предиктора

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

Чтобы создать объект модели, задайте форму вашей модели в одну из функций модели (например arima или garch). Функция создает объект модели соответствующего типа в рабочем пространстве MATLAB, как показано на рисунке.

Можно работать с объектами модели, как и с любой другой переменной в MATLAB. Например, можно присвоить переменной объекта имя, просмотреть ее в Рабочем пространстве MATLAB и отобразить ее значение в Командном окне путем ввода ее имени.

На этом изображении показана рабочая область, содержащая arima модель с именем Mdl.

Свойства модели

Объект модели содержит всю информацию, необходимую для оценки, моделирования и прогнозирования эконометрических моделей. Эта информация включает:

  • Параметрическая форма модели

  • Количество параметров модели (например, степень модели)

  • Инновационное распределение (Гауссов или Студенческий t)

  • Объем предварительных образцов данных, необходимых для инициализации модели

Такие фрагменты информации являются properties модели, которые хранятся как поля внутри объекта модели. Таким образом, объект модели напоминает структуру данных MATLAB (struct массив).

Пять типов моделей - arima, garch, egarch, gjr, и regARIMA- имеют свойства согласно эконометрическим моделям, которые они поддерживают. Каждое свойство имеет предопределенное имя, которое вы не можете изменить.

Для примера, arima поддерживает условные средние модели (мультипликативные и аддитивные процессы AR, MA, ARMA, ARIMA и ARIMAX). Каждый arima объект модели имеет эти свойства, показанные с их соответствующими именами.

Имя свойстваОписание свойства
ConstantМодель константа
ARНесезонные коэффициенты AR
MAНесезонные коэффициенты MA
SARСезонные коэффициенты AR (в мультипликативной модели)
SMAСезонные коэффициенты MA (в мультипликативной модели)
DСтепень несезонного дифференцирования
SeasonalityСтепень сезонного дифференцирования
VarianceОтклонение инновационного распределения
DistributionПараметрическое семейство инновационного распределения
PОбъем предварительных образцов данных, необходимых для инициализации AR- компонента модели
QОбъем предварительных образцов данных, необходимых для инициализации компонента MA модели

Когда объект модели существует в рабочей области, дважды щелкните его имя в окне Рабочей области, чтобы открыть Редактор переменных. Редактор переменных показывает все свойства модели и их имена.

Заметьте, что в дополнение к имени каждое свойство имеет значение.

Задайте модели

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

Совет

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

В дополнение к предопределенному имени каждое свойство модели имеет предопределенный тип данных. При назначении или изменении значения свойства назначение должно соответствовать типу данных свойства.

Для примера, arima свойства имеют эти типы данных.

Имя свойстваТип данных свойств
ConstantСкаляр
ARМассив ячеек
MAМассив ячеек
SARМассив ячеек
SMAМассив ячеек
DНеотрицательное целое число
SeasonalityНеотрицательное целое число
VarianceПоложительная скалярная величина
Distributionstruct массив
PНеотрицательное целое число (вы не можете задать)
QНеотрицательное целое число (вы не можете задать)

Задайте модель AR (2)

Чтобы проиллюстрировать присвоение значений свойств, рассмотрите установка модели AR (2)

yt=0.8yt-1-0.2yt-2+εt,

где инновации являются независимыми и идентично распределенными нормальными случайными переменными со средним значением 0 и отклонением 0,2. Поскольку уравнение является условной средней моделью, используйте arima чтобы создать объект, который представляет модель. Присвойте значения свойствам модели с помощью аргументов пары "имя-значение".

Эта модель имеет два коэффициента AR, 0,8 и -0,2. Присвойте эти значения свойству AR как массив ячеек, {0.8,-0.2}. Присвойте значение 0.2 на Variance, и 0 на Constant. Вам не нужно назначать значение Distribution потому что по умолчанию инновационное распределение 'Gaussian'. Нет членов MA, сезонных терминов или степеней интегрирования, поэтому не присваивайте значения этим свойствам. Вы не можете задать значения для свойств P и Q.

Сводные данные, задайте модель следующим образом:

Mdl = arima('AR',{0.8,-0.2},'Variance',0.2,'Constant',0)
Mdl = 
  arima with properties:

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

Выходные выходы отображают значение созданной модели, Mdl. Заметьте, что свойство Seasonality не находится в выходах. Seasonality отображает только для моделей с сезонным интегрированием. Однако свойство все еще присутствует, как видно из редактора переменных.

Mdl имеет значения для каждого arima свойство, хотя спецификация включала только три. arima присваивает значения по умолчанию для неопределенных свойств. Значения SAR, MA, и SMA являются пустыми массивами ячеек, потому что модель не имеет сезонных или MA терминов. Значения D и Seasonality являются 0 потому что нет несезонного или сезонного дифференцирования. arima наборы:

  • P равно 2, количество предварительных наблюдений, необходимых для инициализации модели AR (2).

  • Q равно 0 потому что в модели нет компонента MA (то есть не нужны предварительные нововведения).

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

В качестве другого рисунка рассмотрите определение модели GARCH (1,1)

yt=εt,

где

εt=σtztσt2=κ+γ1σt-12+α1εt-12

Принять zt следует стандартному нормальному распределению.

Эта модель имеет один коэффициент GARCH (соответствующий запаздывающему члену отклонения) и один коэффициент ARCH (соответствующий запаздывающему квадратному термину инновации), оба с неизвестными значениями. Чтобы задать эту модель, введите:

Mdl = garch('GARCH',NaN,'ARCH',NaN)
Mdl = 
  garch with properties:

     Description: "GARCH(1,1) Conditional Variance Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 1
               Q: 1
        Constant: NaN
           GARCH: {NaN} at lag [1]
            ARCH: {NaN} at lag [1]
          Offset: 0

Значение по умолчанию для постоянного члена также NaN. Параметры с NaN значения должны быть оценены или иначе заданы, прежде чем вы сможете предсказать или симулировать модель. Существует также краткий синтаксис, чтобы создать модель GARCH (1,1) по умолчанию:

Mdl = garch(1,1)
Mdl = 
  garch with properties:

     Description: "GARCH(1,1) Conditional Variance Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 1
               Q: 1
        Constant: NaN
           GARCH: {NaN} at lag [1]
            ARCH: {NaN} at lag [1]
          Offset: 0

Синтаксис стенограммы возвращает модель GARCH с одним коэффициентом GARCH и одним коэффициентом ARCH с коэффициентом по умолчанию NaN значения.

Загрузка свойств модели

Значения свойств в существующей модели могут быть извлечены. Работа с моделями напоминает работу с struct массивы, потому что вы можете получить доступ к свойствам модели с помощью записи через точку. То есть введите имя модели, затем имя свойства, разделенное '.' (а).

Для примера рассмотрим arima модель с этой спецификацией AR (2):

Mdl = arima('AR',{0.8,-0.2},'Variance',0.2,'Constant',0);

Отображение значения свойства AR для созданной модели введите:

arCoefficients = Mdl.AR
arCoefficients=1×2 cell array
    {[0.8000]}    {[-0.2000]}

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

secondARCoefficient = Mdl.AR{2}
secondARCoefficient = -0.2000

возвращает коэффициент с задержкой 2. Вы также можете назначить любое значение свойства новой переменной:

ar = Mdl.AR
ar=1×2 cell array
    {[0.8000]}    {[-0.2000]}

Изменение свойств модели

Можно также изменить свойства модели с помощью записи через точку. Для примера рассмотрим эту спецификацию AR (2):

Mdl = arima('AR',{0.8,-0.2},'Variance',0.2,'Constant',0)
Mdl = 
  arima with properties:

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

Созданная модель имеет стандартное Гауссово инновационное распределение. Измените инновационное распределение на t-распределение Student с восемью степенями свободы. Тип данных для Distribution является struct массив.

Mdl.Distribution = struct('Name','t','DoF',8)
Mdl = 
  arima with properties:

     Description: "ARIMA(2,0,0) Model (t Distribution)"
    Distribution: Name = "t", DoF = 8
               P: 2
               D: 0
               Q: 0
        Constant: 0
              AR: {0.8 -0.2} at lags [1 2]
             SAR: {}
              MA: {}
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: 0.2

Переменная Mdl обновляется соответствующим образом.

Функции объекта

Функции объекта являются функциями, которые принимают объекты модели как входы. В Econometrics Toolbox эти функции, которые представляют шаги в рабочем процессе анализа эконометрики, принимают любой из объектов модели, включенных в тулбокс:

  • estimate

  • forecast

  • simulate

Модель, которую можно подогнать к данным, имеет эти три метода в общем, но объекты модели в тулбоксе могут иметь другие функции объекта.

Функции объекта могут различать объекты модели (например, arima модель по сравнению с garch модель). То есть некоторые функции объекта принимают различные необязательные входы и возвращают различные выходы в зависимости от типа модели, которая является входной.

Поиск страниц с описанием функции объекта для определенной модели путем ввода, например, doc arima/estimate.

См. также

Объекты

Похожие темы