Изменение свойств условных моделей отклонения

Запись через точку

Модели, созданной garch, egarch или gjr, присвоили значения всем образцовым свойствам. Чтобы изменить любые из этих значений свойств, вы не должны восстанавливать целую модель. Можно изменить значения свойств существующей модели с помощью записи через точку. Таким образом, введите имя модели, затем имя свойства, разделенное '.' (период).

Например, запустите с этой образцовой спецификации:

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

Модель по умолчанию имеет значительное смещение, таким образом, свойство Offset не появляется в образцовом выводе. Свойство существует, однако:

Offset = Mdl.Offset
Offset = 0

Измените модель, чтобы добавить неизвестный средний срок смещения:

Mdl.Offset = NaN
Mdl = 
  garch with properties:

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

Offset теперь появляется в образцовом выводе с обновленным ненулевым значением.

Следует иметь в виду, что каждое образцовое свойство имеет тип данных. Любые модификации, которые вы делаете к значению свойства, должны быть сопоставимы с типом данных свойства. Например, GARCH и ARCHLeverage для моделей egarch и gjr) являются всеми векторами ячейки. Это означает, что необходимо индексировать их использующий синтаксис массива ячеек.

Например, запустите со следующей модели:

GJRMdl = gjr(1,1)
GJRMdl = 
  gjr with properties:

     Description: "GJR(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]
        Leverage: {NaN} at lag [1]
          Offset: 0

Чтобы изменить значение свойства GARCH, присвойте GARCH массив ячеек. Здесь, присвойте известные содействующие значения GARCH:

GJRMdl.GARCH = {0.6,0.2}
GJRMdl = 
  gjr with properties:

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

Обновленная модель теперь имеет два условия GARCH (в задержках 1 и 2) с заданными ограничениями равенства.

Точно так же тип данных Distribution является структурой данных. Структура данных по умолчанию имеет только одно поле, Name, со значением 'Gaussian'.

Distribution = GJRMdl.Distribution
Distribution = struct with fields:
    Name: "Gaussian"

Чтобы изменить инновационное распределение, присвойте Distribution новое имя или структура данных. Структура данных может иметь до двух полей, Name и DoF. Второе поле соответствует степеням свободы для t распределения Студента и только требуется, если Name имеет значение 't'.

Задавать t распределение Студента с неизвестными степенями свободы, введите:

GJRMdl.Distribution = 't'
GJRMdl = 
  gjr with properties:

     Description: "GJR(2,1) Conditional Variance Model (t Distribution)"
    Distribution: Name = "t", DoF = NaN
               P: 2
               Q: 1
        Constant: NaN
           GARCH: {0.6 0.2} at lags [1 2]
            ARCH: {NaN} at lag [1]
        Leverage: {NaN} at lag [1]
          Offset: 0

Обновленная модель имеет t распределение Студента со степенями свободы NaN. Чтобы задать t распределение с восемью степенями свободы, скажите:

GJRMdl.Distribution = struct('Name','t','DoF',8)
GJRMdl = 
  gjr with properties:

     Description: "GJR(2,1) Conditional Variance Model (t Distribution)"
    Distribution: Name = "t", DoF = 8
               P: 2
               Q: 1
        Constant: NaN
           GARCH: {0.6 0.2} at lags [1 2]
            ARCH: {NaN} at lag [1]
        Leverage: {NaN} at lag [1]
          Offset: 0

Свойство степеней свободы в модели обновляется. Обратите внимание на то, что поле DoF Distribution не является непосредственно присваиваемым. Например, GJRMdl.Distribution.DoF = 8 не является допустимым присвоением. Однако можно получить отдельные поля:

DistributionDoF = GJRMdl.Distribution.DoF
DistributionDoF = 8

Немодифицируемые свойства

Не все образцовые свойства являются модифицируемыми. Вы не можете изменить эти свойства в существующей модели:

  • P. Это свойство обновляет автоматически, когда задержка, соответствующая самому большому ненулевому GARCH, называет изменения.

  • Q. Это свойство обновляет автоматически, когда задержка, соответствующая самой большой ненулевой ДУГЕ или рычагам, называет изменения.

Не всеми аргументами пары "имя-значение", которые можно использовать для образцового создания, являются свойства созданной модели. А именно, можно задать аргументы GARCHLags и ARCHLagsLeverageLags для моделей EGARCH и GJR) во время образцового создания. Это не, однако, свойства garch, egarch или модели gjr. Это означает, что вы не можете получить или изменить их в существующей модели.

ДУГА, GARCH и рычаги изолируют обновление автоматически, если вы добавляете какие-либо элементы в (или удалите из), содействующие массивы ячеек GARCH, ARCH или Leverage.

Например, задайте модель EGARCH(1,1):

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

     Description: "EGARCH(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]
        Leverage: {NaN} at lag [1]
          Offset: 0

Образцовый вывод показывает ненулевой GARCH, ДУГУ и коэффициенты рычагов в задержке 1.

Добавьте новый коэффициент GARCH в задержке 3:

Mdl.GARCH{3} = NaN
Mdl = 
  egarch with properties:

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

Ненулевые коэффициенты GARCH в задержках 1 и 3 теперь отображение в образцовом выводе. Однако массив ячеек, присвоенный GARCH, возвращает три элемента:

garchCoefficients = Mdl.GARCH
garchCoefficients = 1x3 cell array
    {[NaN]}    {[0]}    {[NaN]}

GARCH имеет нулевой коэффициент в задержке 2, чтобы поддержать непротиворечивость с традиционной индексацией массива ячеек MATLAB®.

Смотрите также

Объекты

Связанные примеры

Больше о