Процентные свопы

Подкачайте предположения оценки

Financial Instruments Toolbox™ содержит функцию liborfloat2fixed, который вычисляет выражение паритета с фиксированной процентной ставкой, которое приравнивает сторону с плавающей ставкой подкачки стороне с фиксированной процентной ставкой. Решатель устанавливает приведенное значение фиксированной стороны к приведенной стоимости плавающей стороны, не имея необходимость выстраиваться в линию и сравнивать зафиксированные и плавающие периоды.

Предположения на входе с плавающей ставкой

  • Уровни являются ежеквартально, например, уровнями фьючерсов Евродоллара.

  • Дата вступления в силу является первой третьей средой после расчетного дня.

  • Все даты поставки расположены с интервалами на расстоянии в 3 месяца.

  • Все периоды запускаются в третью среду месяцев доставки.

  • Все периоды заканчиваются в те же даты месяцев доставки, спустя 3 месяца после дат начала.

  • Метод начисления плавающих курсов является фактическим/360.

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

Предположения на Выходе С фиксированной процентной ставкой

  • Проект позволяет вам устанавливать связь любого купона, базиса или частоты, на основе входа с плавающей ставкой.

  • Дата начала является датой оценки, то есть, датой, когда соглашение заключить контракт к расчетному дню заключено.

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

  • Дата вступления в силу принята, чтобы быть первой третьей средой после урегулирования, та же дата как тот из плавающего курса.

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

  • Купонные платежи происходят на годовщине. Частота определяется периодом связи.

  • Фиксированные процентные ставки не интерполированы. Связь с фиксированной процентной ставкой той же приведенной стоимости как те из платежей с плавающей ставкой устанавливается.

Подкачайте пример оценки

Этот пример показывает использование функций в вычислении фиксированной процентной ставки, применимой к серии 2-, 5-, и 10-летние подкачки на основе данных о рынке Евродоллара. Согласно Чикагской Товарной бирже (https://www.cmegroup.com), данные о Евродолларе в пятницу, 11 октября 2002, был как показано в следующей таблице.

Примечание

Этот пример иллюстрирует вычисления подкачки в MATLAB® программное обеспечение. Синхронизация используемого набора данных не была строго исследована и была принята, чтобы быть прокси для уровня подкачки, о котором сообщают 11 октября 2002.

Данные о евродолларе в пятницу, 11 октября 2002 

Месяц

Год

Обосноваться

10

2002

98.21

11

2002

98.26

12

2002

98.3

1

2003

98.3

2

2003

98.31

3

2003

98.275

6

2003

98.12

9

2003

97.87

12

2003

97.575

3

2004

97.26

6

2004

96.98

9

2004

96.745

12

2004

96.515

3

2005

96.33

6

2005

96.135

9

2005

95.955

12

2005

95.78

3

2006

95.63

6

2006

95.465

9

2006

95.315

12

2006

95.16

3

2007

95.025

6

2007

94.88

9

2007

94.74

12

2007

94.595

3

2008

94.48

6

2008

94.375

9

2008

94.28

12

2008

94.185

3

2009

94.1

6

2009

94.005

9

2009

93.925

12

2009

93.865

3

2010

93.82

6

2010

93.755

9

2010

93.7

12

2010

93.645

3

2011

93.61

6

2011

93.56

9

2011

93.515

12

2011

93.47

3

2012

93.445

6

2012

93.41

9

2012

93.39

Используя эти данные, можно вычислить 1-, 2-, 3-, 4-, 5-, 7-, и 10-летние уровни подкачки с функцией тулбокса liborfloat2fixed. Функция требует, чтобы вы ввели только данные о Евродолларе, расчетный день и срок подкачки. Программное обеспечение MATLAB затем выполняет необходимые расчеты.

Чтобы проиллюстрировать, как эта функция работает, сначала загрузите данные, содержавшиеся в предоставленном Excel® рабочий лист EDdata.xls.

[EDRawData, textdata] = xlsread('EDdata.xls');

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

Month = EDRawData(:,1);
Year  = EDRawData(:,2);
IMMData = (EDRawData(:,4)+EDRawData(:,6))/2;
EDFutData = [Month, Year, IMMData]
EDFutData =

   1.0e+03 *

    0.0100    2.0020    0.0982
    0.0110    2.0020    0.0983
    0.0120    2.0020    0.0983
    0.0010    2.0030    0.0983
    0.0020    2.0030    0.0983
    0.0030    2.0030    0.0983
    0.0060    2.0030    0.0982
    0.0090    2.0030    0.0979
    0.0120    2.0030    0.0976
    0.0030    2.0040    0.0973
    0.0060    2.0040    0.0970
    0.0090    2.0040    0.0968
    0.0120    2.0040    0.0966
    0.0030    2.0050    0.0964
    0.0060    2.0050    0.0962
    0.0090    2.0050    0.0960
    0.0120    2.0050    0.0958
    0.0030    2.0060    0.0957
    0.0060    2.0060    0.0955
    0.0090    2.0060    0.0954
    0.0120    2.0060    0.0952
    0.0030    2.0070    0.0951
    0.0060    2.0070    0.0949
    0.0090    2.0070    0.0948
    0.0120    2.0070    0.0946
    0.0030    2.0080    0.0945
    0.0060    2.0080    0.0944
    0.0090    2.0080    0.0943
    0.0120    2.0080    0.0942
    0.0030    2.0090    0.0941
    0.0060    2.0090    0.0940
    0.0090    2.0090    0.0939
    0.0120    2.0090    0.0939
    0.0030    2.0100    0.0938
    0.0060    2.0100    0.0937
    0.0090    2.0100    0.0937
    0.0120    2.0100    0.0936
    0.0030    2.0110    0.0936
    0.0060    2.0110    0.0935
    0.0090    2.0110    0.0935
    0.0120    2.0110    0.0935
    0.0030    2.0120    0.0934
    0.0060    2.0120    0.0934
    0.0090    2.0120    0.0934

Затем введите текущую дату.

Settle = datenum('11-Oct-2002');

Чтобы вычислить для 2-летнего уровня подкачки, установите тенора на 2.

Tenor = 2;

Наконец, вычислите уровень подкачки с liborfloat2fixed.

[FixedSpec, ForwardDates, ForwardRates] = ... 
liborfloat2fixed(EDFutData, Settle, Tenor)

MATLAB возвращает уровень подкачки паритета 2,23% с помощью настройки по умолчанию (ежеквартально соединение и 30/360 наращивание), и прямые даты и данные об уровнях (ежеквартально составленный).

FixedSpec = 

       Coupon: 0.0223
       Settle: '16-Oct-2002'
     Maturity: '16-Oct-2004'
       Period: 4
        Basis: 1

ForwardDates =

      731505
      731596
      731687
      731778
      731869
      731967
      732058
      732149

ForwardRates =

    0.0178
    0.0168
    0.0171
    0.0189
    0.0216
    0.0250
    0.0280
    0.0306

В FixedSpec выведите, обратите внимание, что уровень подкачки на самом деле продвигается с третьей среды октября 2002 (16 октября 2002), спустя 5 дней после исходного Settle введите (11 октября 2002). Это, однако, является все еще лучшим прокси для уровня подкачки на Settle, когда предположение просто запускает эффективный период подкачки и не влияет на его метод оценки или его длину.

Коррекция, предложенная Оболочкой и Белая, улучшает результат путем включения корректировки выпуклости как части входа к liborfloat2fixed. (См. Оболочку, J., Опции, фьючерсы, и Другие Производные, 4-й Выпуск, Prentice Hall, 2000.) Для долгой подкачки, например, пять лет или больше, эта коррекция могла оказаться большой.

Корректировка требует дополнительных параметров:

  • StartDate, который вы делаете тем же самым как Settle (значение по умолчанию) путем обеспечения пустого матричного [] как введено.

  • ConvexAdj сказать liborfloat2fixed выполнять корректировку.

  • RateParam, который предоставляет параметрам a и S как введено к Белому как оболочка короткому процессу уровня.

  • Дополнительные параметры InArrears и Sigma, для которого можно использовать пустые матрицы [] принять значения по умолчанию MATLAB.

  • FixedCompound, с которым можно упростить сравнение со значениями, процитированными в Таблице H15 Федеральной резервной системы Статистический Релиз путем превращения значения по умолчанию, ежеквартально соединяющего в полугодовое соединение с базисом (по умолчанию) 30/360.

    StartDate = [];
    Interpolation = [];
    ConvexAdj = 1;
    RateParam = [0.03; 0.017];
    FixedCompound = 2;
    [FixedSpec, ForwardDaates, ForwardRates] = ... 
    liborfloat2fixed(EDFutData, Settle, Tenor, StartDate, ... 
    Interpolation, ConvexAdj, RateParam, [], [], FixedCompound)
    

Это возвращает 2,21% как 2-летний уровень подкачки, вполне близко к уровню подкачки, о котором сообщают, для той даты.

Аналогично, следующая таблица обобщает решения для 1-, 3-, 5-, 7-, и 10-летние уровни подкачки (настроенный выпуклостью и неприспособленный).

Вычисленный и рынок усредняют данные уровней подкачки в пятницу, 11 октября 2002

Подкачайте длину (годы)

Неприспособленный

Настроенный

Таблица H15

Настроенная ошибка
(Пункты)

1

1.80%

1.79%

1.80%

-1

2

2.24%

2.21%

2.22%

-1

3

2.70%

2.66%

2.66%

0

4

3.12%

3.03%

3.04%

-1

5

3.50%

3.37%

3.36%

+1

7

4.16%

3.92%

3.89%

+3

10

4.87%

4.42%

4.39%

+3

Хеджирование портфеля

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

Предположим, что вы владеете связью с этими характеристиками:

  • Номинальная стоимость в размере $100 миллионов

  • 7%-й купон раз в полгода платится

  • 5%-й доход до срока погашения

  • Урегулирование 11 октября 2002

  • Зрелость 15 января 2010

  • Заинтересуйте накопление на фактическом/365 базисе

Использование bnddury функция из программного обеспечения Financial Toolbox™ показывает модифицированную длительность 5,6806 лет.

Чтобы иммунизировать этот актив, можно ввести в зафиксированную платой подкачку, в частности подкачку в сумме отвлеченного принципала (не уточнено) таким образом что Ns*SwapDuration  + M*5.6806 за 100$ = 0 (или не уточнено = -100*5.6806/SwapDuration).

Предположим снова, вы принимаете решение использовать 5-, 7-, или 10-летнюю подкачку (3,37%, 3,92% и 4,42% из предыдущей таблицы) как ваш инструмент хеджирования.

SwapFixRate = [0.0337; 0.0392; 0.0442];
Tenor = [5; 7; 10];
Settle = '11-Oct-2002';
PayFixDuration = liborduration(SwapFixRate, Tenor, Settle)
PayFixDuration =

   -3.6835
   -4.7307
   -6.0661

Это дает длительность-3.6835,-4.7307, и-6.0661 лет для 5-, 7-, и 10-летние подкачки. Соответствующая отвлеченная сумма вычисляется

Ns = -100*5.6806./PayFixDuration
Ns =

  154.2163
  120.0786
   93.6443

Отвлеченная сумма, вводимая в зафиксированную платой сторону подкачки мгновенно, иммунизирует портфель.

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

| |

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

Больше о

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