instswaption

Создайте инструмент свопцирования

Описание

пример

InstSet = instswaption(OptSpec,Strike,ExerciseDates,Spread,Settle,Maturity) для определения европейского свопциона.

Заполните неопределенные векторы записей значением NaN. Для создания инструментов требуется только один аргумент данных; остальные могут быть опущены или переданы как пустые матрицы [].

пример

InstSet = instswaption(___,AmericanOpt,SwapReset,Basis,Principal) для определения американского свопциона.

пример

InstSet = instswaption(InstSetOld,___) для добавления инструментов свопцирования к переменной инструмента.

пример

[FieldList,ClassList,TypeString] = instswaption для перечисления метаданных поля для инструмента свопцирования.

Примеры

свернуть все

В этом примере показано, как создать два европейских свопциона с помощью следующих данных.

OptSpec = {'Call'; 'Put'};
Strike = .05;
ExerciseDates = 'jan-1-2011';
Spread=0;
Settle = 'jan-1-2007';
Maturity = 'jan-1-2012';
AmericanOpt = 0;

InstSet = instswaption(OptSpec, Strike, ExerciseDates, Spread, Settle, Maturity, ...
 AmericanOpt);

% view the European swaption instruments using instdisp
instdisp(InstSet)
Index Type     OptSpec Strike ExerciseDates  Spread Settle         Maturity       AmericanOpt SwapReset Basis Principal FloatBasis FixedBasis FloatReset FixedReset
1     Swaption Call    0.05   01-Jan-2011    0      01-Jan-2007    01-Jan-2012    0           1         0     100       NaN        NaN        NaN        NaN       
2     Swaption Put     0.05   01-Jan-2011    0      01-Jan-2007    01-Jan-2012    0           1         0     100       NaN        NaN        NaN        NaN       
 

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

OptSpec = {'Call'; 'Put'};
Strike = .05;
ExerciseDates = 'jan-1-2011';
Spread=0;
Settle = 'jan-1-2007';
Maturity = 'jan-1-2012';
AmericanOpt = 0;
SwapReset = [2 4]; % 1st column represents receiving leg, 2nd column represents paying leg
Basis = [1 3];     % 1st column represents receiving leg, 2nd column represents paying leg

InstSet = instswaption(OptSpec,Strike,ExerciseDates,AmericanOpt,Spread,Settle,Maturity, ...
SwapReset,Basis);

Просмотр европейских инструментов свопцирования с помощью instdisp.

instdisp(InstSet)
Index Type     OptSpec Strike ExerciseDates  Spread Settle Maturity       AmericanOpt SwapReset Basis Principal FloatBasis FixedBasis FloatReset FixedReset
1     Swaption Call    0.05   01-Jan-2011    0      0      01-Jan-2007    NaN         2  4      1  3  100       NaN        NaN        NaN        NaN       
2     Swaption Put     0.05   01-Jan-2011    0      0      01-Jan-2007    NaN         2  4      1  3  100       NaN        NaN        NaN        NaN       
 

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

свернуть все

Определение опции как 'call' или 'put', заданный как NINST-by- 1 массив ячеек из векторов символов со значениями 'call' или 'put'. A 'call' swaption дает покупателю право оплатить фиксированную ставку. A 'put' swaption дает покупателю право на получение фиксированной ставки.

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

Значения скорости ударного свопа, заданные как NINST-by- 1 вектор.

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

Даты упражнения опции, заданные как вектор векторов символов даты или серийных номеров даты, где каждая строка является расписанием для одной опции, и последний элемент каждой строки должен совпадать со зрелостью дерева.

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

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

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

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

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

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

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

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

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

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

  • 0 - Европейский

  • 1 - Американский

The AmericanOpt аргумент требуется для обращения к американским правилам упражнений.

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

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

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

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

  • 0 = факт/факт

  • 1 = 30/360 (SIA)

  • 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 = BUS/252

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

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

(Необязательно) Условная основная сумма, заданная как NINST-by- 1 вектор.

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

Переменная, содержащая существующий набор инструментов, заданную как struct. Инструменты классифицируются по типам; каждый тип может иметь различные поля данных. Сохраненное поле данных является вектором-строкой или вектором символов для каждого инструмента. The InstSetOld аргумент задается только при добавлении инструментов свопцирования к существующему набору приборов. Для получения дополнительной информации о InstSet переменная, см. instget.

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

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

свернуть все

(Необязательно) Переменная, содержащая набор инструментов. Инструменты разбиваются по типам, и каждый тип может иметь различные поля данных. Каждое поле сохраненных данных имеет вектор-строку или вектор символов для каждого прибора. Для получения дополнительной информации о InstSet переменная, см. instget.

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

Имя каждого поля данных для этого типа прибора, возвращаемое как NFIELDS-by- 1 массив ячеек из векторов символов.

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

Класс данных каждого поля, возвращаемый как NFIELDS-by- 1 массив ячеек из векторов символов. Допустимые векторы символов 'dble', 'date', и 'char'.

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

Тип добавленного инструмента, возвращенного как вектор символов (для свопциона TypeString = 'Swaption').

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

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