optbndbyhjm

Ценовая опция связи от дерева процентной ставки Хита-Джарроу-Мортона

Синтаксис

[Price,PriceTree] = optbndbyhjm(HJMTree,OptSpec,Strike,ExerciseDates,AmericanOpt,CouponRate,Settle,Maturity)
[Price,PriceTree] = optbndbyhjm(___,Period,Basis,EndMonthRule,IssueDate,FirstCouponDate,LastCouponDate,StartDate,Face,Options)

Описание

пример

[Price,PriceTree] = optbndbyhjm(HJMTree,OptSpec,Strike,ExerciseDates,AmericanOpt,CouponRate,Settle,Maturity) вычисляет цену за опцию связи от Черного-Karasinski дерева процентной ставки.

пример

[Price,PriceTree] = optbndbyhjm(___,Period,Basis,EndMonthRule,IssueDate,FirstCouponDate,LastCouponDate,StartDate,Face,Options) добавляют дополнительные аргументы.

Примеры

свернуть все

Используя дерево форвардного курса HJM в файле deriv.mat, оцените европейский колл-опцион и пут-опцион на 4%-й связи с забастовкой 96. Дата осуществления опции 01 января 2003. Уладить дата связи 01 января 2000, и дата погашения 01 января 2004.

Загрузите файл deriv.mat, который обеспечивает HJMTree. Структура HJMTree содержит время, и информация о форвардном курсе должна была оценить связь.

load deriv.mat; 

Используйте optbndbyhjm, чтобы вычислить цену опции 'call'.

[Price,PriceTree] = optbndbyhjm(HJMTree,'Call',96,'01-Jan-2003',...
0,0.04,'01-Jan-2000','01-Jan-2004')
Warning: Not all cash flows are aligned with the tree. Result will be approximated. 
> In optbndbyhjm (line 217) 

Price =

    2.2410


PriceTree = 

  struct with fields:

    FinObj: 'HJMPriceTree'
      tObs: [0 1 2 3 4]
     PBush: {[2.2410]  [1×1×2 double]  [1×2×2 double]  [1×4×2 double]  [0 0 0 0 0 0 0 0]}

Теперь используйте optbndbyhjm, чтобы вычислить цену опции 'put' на той же связи.

[Price,PriceTree] = optbndbyhjm(HJMTree,'Put',96,'01-Jan-2003',...
0,0.04,'01-Jan-2000','01-Jan-2004')
Warning: Not all cash flows are aligned with the tree. Result will be approximated. 
> In optbndbyhjm (line 217) 

Price =

    0.0446


PriceTree = 

  struct with fields:

    FinObj: 'HJMPriceTree'
      tObs: [0 1 2 3 4]
     PBush: {[0.0446]  [1×1×2 double]  [1×2×2 double]  [1×4×2 double]  [0 0 0 0 0 0 0 0]}

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

свернуть все

Древовидная структура процентной ставки, заданная при помощи hjmtree.

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

Определение опции, заданной как NINST-by-1 массив ячеек из символьных векторов.

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

Значение цены исполнения опциона опции, заданное как NINST-by-1 или NINST-by-NSTRIKES в зависимости от типа опции:

  • Европейская опция — NINST-by-1 вектор значений цены исполнения опциона.

  • Опция Бермуд — NINST количеством забастовок (NSTRIKES) матрица значений цены исполнения опциона. Каждая строка является расписанием для одной опции. Если опция имеет меньше, чем возможности осуществления NSTRIKES, конец строки дополнен NaN s.

  • Американская опция — NINST-by-1 вектор значений цены исполнения опциона для каждой опции.

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

Даты осуществления опции, заданные как NINST-by-1, NINST-by-2 или NINST-by-NSTRIKES последовательные числа даты или векторы символов даты, в зависимости от типа опции:

  • Для европейской опции используйте NINST-by-1 вектор дат. Для европейской опции на дате окончания срока действия опции существует только один ExerciseDates.

  • Для опции Бермуд используйте NINST-by-NSTRIKES вектор дат.

  • Для американской опции используйте NINST-by-2 вектор контуров даты осуществления. Опция может быть осуществлена в любую дату между или включая пару дат на той строке. Если только одна non-NaN дата перечислена, или если ExerciseDates является NINST-by-1 вектор, опция может быть осуществлена между ValuationDate дерева запаса и одним перечисленным ExerciseDates.

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

(Необязательно) тип Опции, заданный как NINST-by-1 положительное целое число, отмечает с помощью значений:

  • 0 — Европеец/Бермуды

  • 1 — Американец

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

Уровень облигационного купона, заданный как NINST-by-1 десятичный годовой показатель или NINST-by-1 массив ячеек, где каждым элементом является NumDates-by-2 массив ячеек. Первый столбец NumDates-by-2 массив ячеек является датами, и второй столбец является сопоставленными уровнями. Дата указывает в последний день, что купонная ставка допустима.

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

Расчетный день для опции связи, заданной как NINST-by-1 вектор последовательных чисел даты или векторов символов даты.

Примечание

Дата Settle каждой связи назначена к ValuationDate дерева HJM. Аргумент Settle связи проигнорирован.

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

Дата погашения, заданная как NINST-by-1 вектор последовательных чисел даты или векторов символов даты.

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

(Необязательно) Купоны в год, заданный как NINST-by-1 вектор.

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

(Необязательно) основание Дневного количества, заданное как NINST-by-1 вектор целых чисел.

  •  0 = фактический/фактический

  •  1 = 30/360 (СИА)

  •  2 = Фактический/360

  •  3 = Фактический/365

  •  4 = 30/360 (PSA)

  •  5 = 30/360 (ISDA)

  •  6 = 30/360 (европеец)

  •  7 = Фактический/365 (японский язык)

  •  8 = фактический/фактический (ICMA)

  •  9 = Фактический/360 (ICMA)

  •  10 = Фактический/365 (ICMA)

  •  11 = 30/360E (ICMA)

  •  12 = Фактический/365 (ISDA)

  •  13 = ШИНА/252

Для получения дополнительной информации смотрите основание.

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

(Необязательно) флаг правила Конца месяца задан как неотрицательное целое число с помощью NINST-by-1 вектор. Это правило применяется только, когда Maturity является датой конца месяца в течение месяца, имея 30 или меньше дней.

  • 0 = Игнорирует правило, означая, что платежный день облигационного купона всегда является тем же числовым днем месяца.

  • 1 = Установленное правило о, означая, что платежный день облигационного купона всегда является прошлым фактическим днем месяца.

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

(Необязательно) дата Выпуска облигаций, заданная как NINST-by-1 вектор с помощью последовательных чисел даты или векторов символов даты.

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

(Необязательно) Неправильная первая дата купона, заданная как NINST-by-1 вектор с помощью последовательных векторов символов даты или даты чисел даты.

Когда FirstCouponDate и LastCouponDate оба заданы, FirstCouponDate более приоритетен в определении структуры купонного платежа. Если вы не задаете FirstCouponDate, платежные дни потока наличности определяются от других входных параметров.

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

(Необязательно) Неправильная последняя дата купона, заданная как NINST-by-1 вектор с помощью последовательных чисел даты или векторов символов даты.

В отсутствие заданного FirstCouponDate заданный LastCouponDate определяет структуру купона связи. Структура купона связи является усеченной в LastCouponDate, независимо от того, где это падает и сопровождается только датой потока наличности зрелости связи. Если вы не задаете LastCouponDate, платежные дни потока наличности определяются от других входных параметров.

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

(Необязательно) Прямой срок начала работы платежей (дата, с которой рассматривается поток наличности связи), задал как NINST-by-1 вектор с помощью последовательных чисел даты или векторов символов даты.

Если вы не задаете StartDate, эффективная дата начала является датой Settle.

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

(Необязательно) Поверхность или номинальная стоимость, заданная как вектор anNINST-by-1.

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

(Необязательно) Производные оценивая опции, заданные как структура, которая создается с derivset.

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

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

свернуть все

Ожидаемая цена опции связи во время 0, возвращенный как NINST-by-1 матрица.

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

  • PriceTree.PBush содержит чистые цены.

  • PriceTree.tObs содержит времена наблюдения.

Представлено до R2006a

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