sdeld

SDE с моделью Linear Drift

Описание

Создает и отображает объекты SDE, уровень дрейфа которых выражается в линейной форме уровня дрейфа и которые выводят от sdeddo (SDE от дрейфа и класса объектов диффузии).

Используйте объекты sdeld моделировать демонстрационные пути переменных состояния NVARS, выраженных в линейной форме уровня дрейфа. Они обеспечивают параметрическую альтернативу возвращающейся среднее значение форме дрейфа (см. sdemrd).

Эти переменные состояния управляются источниками Броуновского движения NBROWNS риска по NPERIODS последовательные периоды наблюдения, аппроксимируя непрерывно-разовые стохастические процессы с линейными функциями уровня дрейфа.

Объект sdeld позволяет вам моделировать любой SDELD с векторным знаком формы:

dXt=(A(t)+B(t)Xt)dt+D(t,Xtα(t))V(t)dWt

где:

  • Xt является NVARS-by-1 вектор состояния переменных процесса.

  • A является NVARS-by-1 вектор.

  • B является NVARS-by-NVARS матрица.

  • D является NVARS-by-NVARS диагональная матрица, где каждый элемент по основной диагонали является соответствующим элементом вектора состояния, повышенного до соответствующей степени α.

  • V является NVARS-by-NBROWNS мгновенная матрица уровня энергозависимости.

  • dWt является NBROWNS-by-1 вектор Броуновского движения.

Создание

Синтаксис

SDELD = sdeld(A,B,Alpha,Sigma)
SDELD = sdeld(___,Name,Value)

Описание

пример

SDELD = sdeld(A,B,Alpha,Sigma) создает объект SDELD по умолчанию.

пример

SDELD = sdeld(___,Name,Value) создает объект SDELD с дополнительными опциями, заданными одним или несколькими аргументами пары Name,Value.

Name является именем свойства, и Value является своим соответствующим значением. Имя должно находиться внутри одинарных кавычек (' '). Можно задать несколько аргументов пары "имя-значение" в любом порядке как Name1,Value1,…,NameN,ValueN.

Объект SDELD имеет следующие отображенные Свойства:

  • Время начала Начальное время наблюдения

  • StartState — Начальное состояние во время StartTime

  • Корреляция Функция доступа для входного параметра Correlation, вызываемого как функция времени

  • Drift — Составная функция уровня дрейфа, вызываемая как функция времени и состояния

  • Diffusion — Составная функция уровня диффузии, вызываемая как функция времени и состояния

  • A Функция доступа для входного параметра A, вызываемый как функция времени и состояния

  • B Функция доступа для входного параметра B, вызываемый как функция времени и состояния

  • \alpha Функция доступа для входного параметра Alpha, вызываемый как функция времени и состояния

  • \sigma Функция доступа для входного параметра Sigma, вызываемый как функция времени и состояния

  • Simulation — Функция симуляции или метод

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

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

A представляет параметр A, заданный как массив или детерминированная функция времени.

Если вы задаете A как массив, это должен быть NVARS-by-1 вектор-столбец прерываний.

Когда детерминированная функция времени, когда A вызван скалярным временем с действительным знаком t как своим единственным входом, A, должна произвести NVARS-by-1 вектор-столбец. Если вы задаете A как функцию времени и состояния, это должно сгенерировать NVARS-by-1 вектор-столбец прерываний, когда вызвано с двумя входными параметрами:

  • Скалярное время наблюдения с действительным знаком t.

  • NVARS-by-1 вектор состояния Xt.

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

B представляет параметр B, заданный как массив или детерминированная функция времени.

Если вы задаете A как массив, это должен быть NVARS-by-NVARS матрица коэффициентов вектора состояния.

Когда детерминированная функция времени, когда B вызван скалярным временем с действительным знаком t как своим единственным входом, B, должна произвести NVARS-by-NVARS матрица. Если вы задаете B как функцию времени и состояния, это должно сгенерировать NVARS-by-NVARS матрица коэффициентов вектора состояния, когда вызвано с двумя входными параметрами:

  • Скалярное время наблюдения с действительным знаком t.

  • NVARS-by-1 вектор состояния Xt.

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

Alpha представляет параметр D, заданный как массив или детерминированная функция времени.

Если вы задаете Alpha как массив, он представляет NVARS-by-1 вектор-столбец экспонент.

Когда детерминированная функция времени, когда Alpha вызван скалярным временем с действительным знаком t как своим единственным входом, Alpha, должна произвести NVARS-by-1 матрица.

Если вы задаете его как функцию времени и состояния, Alpha должен возвратить NVARS-by-1 вектор-столбец экспонент, когда вызвано с двумя входными параметрами:

  • Скалярное время наблюдения с действительным знаком t.

  • NVARS-by-1 вектор состояния Xt.

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

Sigma представляет параметр V, заданный как массив или детерминированная функция времени.

Если вы задаете Sigma как массив, это должен быть NVARS-by-NBROWNS матрица мгновенных уровней энергозависимости или как детерминированная функция времени. В этом случае каждая строка Sigma соответствует конкретной переменной состояния. Каждый столбец соответствует конкретному Броуновскому источнику неуверенности и сопоставляет значение воздействия переменных состояния с источниками неуверенности.

Когда детерминированная функция времени, когда Sigma вызван скалярным временем с действительным знаком t как своим единственным входом, Sigma, должна произвести NVARS-by-NBROWNS матрица. Если вы задаете Sigma как функцию времени и состояния, это должно возвратить NVARS-by-NBROWNS матрица уровней энергозависимости, когда вызвано с двумя входными параметрами:

  • Скалярное время наблюдения с действительным знаком t.

  • NVARS-by-1 вектор состояния Xt.

Несмотря на то, что thegbm конструктор не осуществляет ограничений на знак колебаний Sigma, они заданы как положительные значения.

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

Примечание

Несмотря на то, что sdeld не осуществляет ограничения на знаки Alpha или Sigma, каждый параметр задан как положительное значение.

Свойства

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

Время начала первого наблюдения, к которому применяются все переменные состояния, заданные как скаляр

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

Начальные значения переменных состояния, заданных как скаляр, вектор-столбец или матрица.

Если StartState является скаляром, sdeld применяет то же начальное значение ко всем переменным состояния на всех испытаниях.

Если StartState является вектор-столбцом, sdeld применяет уникальное начальное значение к каждой переменной состояния на всех испытаниях.

Если StartState является матрицей, sdeld применяет уникальное начальное значение к каждой переменной состояния на каждом испытании.

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

Корреляция между Гауссовыми случайными варьируемыми величинами, чертившими, чтобы сгенерировать вектор Броуновского движения (винеровские процессы), заданный как NBROWNS-by-NBROWNS положительная полуопределенная матрица, или как детерминированный функциональный C(t), который принимает текущее время t и возвращает NBROWNS-by-NBROWNS положительная полуопределенная корреляционная матрица.

Матрица Correlation представляет статическое условие.

Как детерминированная функция времени, Correlation позволяет вам задавать динамическую структуру корреляции.

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

Пользовательская функция симуляции или метод симуляции SDE, заданный как функция или метод симуляции SDE.

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

Это свойство доступно только для чтения.

Компонент уровня дрейфа непрерывно-разовых стохастических дифференциальных уравнений (SDEs), заданный как дрейф, возражает или функция, доступная (t, Xt.

Спецификация уровня дрейфа поддерживает симуляцию демонстрационных путей переменных состояния NVARS, управляемых источниками Броуновского движения NBROWNS риска по NPERIODS последовательные периоды наблюдения, аппроксимируя непрерывно-разовые стохастические процессы.

Класс drift позволяет вам создавать объекты уровня дрейфа с помощью drift формы:

F(t,Xt)=A(t)+B(t)Xt

где:

  • A является NVARS-by-1 функциональное доступное использование с векторным знаком (t, Xt) интерфейс.

  • B является NVARS-by-NVARS функциональное доступное использование с матричным знаком (t, Xt) интерфейс.

Отображенные параметры для объекта drift:

  • Rate: функция уровня дрейфа, F(t,Xt)

  • A: термин прерывания, A(t,Xt), F(t,Xt)

  • B: термин первого порядка, B(t,Xt), F(t,Xt)

A и B позволяют вам запросить исходные входные параметры. Функция, сохраненная в Rate полностью, инкапсулирует совместное воздействие A и B.

Когда задано как двойные массивы MATLAB®, входные параметры A и B ясно сопоставлены с линейным уровнем дрейфа параметрическая форма. Однако задавая или A или B, когда функция позволяет вам настраивать фактически любую спецификацию уровня дрейфа.

Примечание

Можно выразить drift и классы diffusion в самой общей форме, чтобы подчеркнуть функциональное (t, Xt) интерфейс. Однако можно задать компоненты A и B как функции, которые придерживаются общего (t, Xt) интерфейс, или как массивы MATLAB соответствующей размерности.

Пример: F = drift(0, 0.1) % Drift rate function F(t,X)

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

Это свойство доступно только для чтения.

Компонент уровня диффузии непрерывно-разовых стохастических дифференциальных уравнений (SDEs), заданный как дрейф, возражает или функция, доступная (t, Xt.

Спецификация уровня диффузии поддерживает симуляцию демонстрационных путей переменных состояния NVARS, управляемых источниками Броуновского движения NBROWNS риска по NPERIODS последовательные периоды наблюдения, аппроксимируя непрерывно-разовые стохастические процессы.

Класс diffusion позволяет вам создавать объекты уровня диффузии с помощью diffusion:

G(t,Xt)=D(t,Xtα(t))V(t)

где:

  • D является NVARS-by-NVARS диагональная функция с матричным знаком.

  • Каждый диагональный элемент D является соответствующим элементом вектора состояния, повышенного до соответствующего элемента экспоненты Alpha, который является NVARS-by-1 функция с векторным знаком.

  • V является NVARS-by-NBROWNS функция уровня энергозависимости с матричным знаком Sigma.

  • Alpha и Sigma являются также доступным использованием (t, Xt) интерфейс.

Отображенные параметры для объекта diffusion:

  • Rate: функция уровня диффузии, G(t,Xt).

  • \alpha: экспонента вектора состояния, которая определяет формат D(t,Xt) G(t,Xt).

  • \sigma: уровень энергозависимости, V(t,Xt), G(t,Xt).

Alpha и Sigma позволяют вам запросить исходные входные параметры. (Совместное воздействие отдельного Alpha и параметров Sigma полностью инкапсулируется функцией, сохраненной в Rate.) Функции Rate являются механизмами вычисления для drift и объектов diffusion, и являются единственными параметрами, требуемыми для симуляции.

Примечание

Можно выразить drift и классы diffusion в самой общей форме, чтобы подчеркнуть функциональное (t, Xt) интерфейс. Однако можно задать компоненты A и B как функции, которые придерживаются общего (t, Xt) интерфейс, или как массивы MATLAB соответствующей размерности.

Пример: G = diffusion(1, 0.3) % Diffusion rate function G(t,X)

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

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

interpolateБроуновская интерполяция стохастических дифференциальных уравнений
simulateМоделируйте многомерные стохастические дифференциальные уравнения (SDEs)
simByEulerЭйлерова симуляция стохастических дифференциальных уравнений (SDEs)

Примеры

свернуть все

Класс sdeld выводит от класса sdeddo. Эти объекты позволяют вам моделировать коррелируемые пути переменных состояния NVARS, выраженных в линейной форме уровня дрейфа: dXt=(A(t)+B(t)Xt)dt+D(t,Xtα(t))V(t)dWt.

obj = sdeld(0, 0.1, 1, 0.3) % (A, B, Alpha, Sigma)
obj = 
   Class SDELD: SDE with Linear Drift
   ----------------------------------------
     Dimensions: State = 1, Brownian = 1
   ----------------------------------------
      StartTime: 0
     StartState: 1
    Correlation: 1
          Drift: drift rate function F(t,X(t)) 
      Diffusion: diffusion rate function G(t,X(t)) 
     Simulation: simulation method/function simByEuler
              A: 0
              B: 0.1
          Alpha: 1
          Sigma: 0.3

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

Больше о

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

Алгоритмы

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

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

Когда вы вызываете эти параметры с входными параметрами, они ведут себя как функции, производя впечатление динамического поведения. Параметры принимают время наблюдения t и вектор состояния Xt, и возвращают массив соответствующей размерности. Даже если вы первоначально задали вход как массив, sdeld обрабатывает его как статическую функцию времени, и состояние, этим означает гарантировать, что все параметры доступны тем же интерфейсом.

Ссылки

[1] Островок-Sahalia, Y. “Тестируя Непрерывно-разовые Модели Точечной Процентной ставки”. Анализ Финансовых Исследований, Spring 1996, Издания 9, № 2, стр 385–426.

[2] Островок-Sahalia, Y. “Плотность перехода для процентной ставки и другой нелинейной диффузии”. Журнал финансов, издания 54, № 4, август 1999.

[3] Глассермен, P. Методы Монте-Карло в финансовой разработке. Нью-Йорк, Springer-Verlag, 2004.

[4] Оболочка, J. C. Опции, фьючерсы и Другие Производные, 5-й редактор Englewood Cliffs, NJ: Prentice Hall, 2002.

[5] Джонсон, N. L. С. Коц и Н. Бэлэкришнэн. Непрерывные Одномерные распределения. Издание 2, 2-й редактор Нью-Йорк, John Wiley & Sons, 1995.

[6] Shreve, S. E. Стохастическое исчисление для финансов II: непрерывно-разовые модели. Нью-Йорк: Springer-Verlag, 2004.

Введенный в R2008a