optbndbybk

Ценовая опция связи от Черного-Karasinski дерева процентной ставки

Синтаксис

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

Описание

пример

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

пример

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

Примеры

свернуть все

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

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

load deriv.mat; 

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

[Price,PriceTree] = optbndbybk(BKTree,'Call',96,'01-Jan-2006',... 
0,0.04,'01-Jan-2005','01-Jan-2009')
Warning: OptBonds are valued at Tree ValuationDate rather than Settle 
> In optbndbytrintree (line 41)
  In optbndbybk (line 89) 
Warning: Not all cash flows are aligned with the tree. Result will be approximated. 
> In optbndbytrintree (line 152)
  In optbndbybk (line 89) 

Price =

    0.1512


PriceTree = 

  struct with fields:

     FinObj: 'BKPriceTree'
      PTree: {[0.1512]  [0.0281 0.1481 0.3119]  [0 0 0.1329 0.3886 0.3086]  [0 0 0 0 0]  [0 0 0 0 0]}
       tObs: [0 1 2 3 4]
    Connect: {[2]  [2 3 4]  [2 2 3 4 4]}
      Probs: {[3×1 double]  [3×3 double]  [3×5 double]} 

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

[Price,PriceTree] = optbndbybk(BKTree,'Put',96,'01-Jan-2006',... 
0,0.04,'01-Jan-2005','01-Jan-2009')
Warning: OptBonds are valued at Tree ValuationDate rather than Settle 
> In optbndbytrintree (line 41)
  In optbndbybk (line 89) 
Warning: Not all cash flows are aligned with the tree. Result will be approximated. 
> In optbndbytrintree (line 152)
  In optbndbybk (line 89) 

Price =

    0.0272


PriceTree = 

  struct with fields:

     FinObj: 'BKPriceTree'
      PTree: {[0.0272]  [0.0860 0.0204 0]  [0.0474 0.1266 0 0 0]  [0 0 0 0 0]  [0 0 0 0 0]}
       tObs: [0 1 2 3 4]
    Connect: {[2]  [2 3 4]  [2 2 3 4 4]}
      Probs: {[3×1 double]  [3×3 double]  [3×5 double]}

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

свернуть все

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

Типы данных: 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 дерева BK. Аргумент 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.PTree содержит чистые цены.

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

  • PriceTree.Connect содержит векторы возможности соединения. Каждый элемент в массиве ячеек описывает, как узлы на том уровне соединяются со следующим. Для данного древовидного уровня в векторе существуют элементы NumNodes, и они содержат индекс узла на следующем уровне, с которым соединяется среднее ответвление. Вычитание 1 от того значения указывает, где подключения-ответвления к, и добавление 1 указали, где вниз переходят подключения к.

  • PriceTree.Probs содержит массивы вероятности. Каждый элемент массива ячеек содержит, середина и вероятности перехода вниз для каждого узла уровня.

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

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