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];
Затем, введите текущую дату.
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)
Это дает длительность-3.6835,-4.7307, и-6.0661 лет для 5-, 7-, и 10-летние подкачки. Соответствующая отвлеченная сумма вычисляется
Ns = -100*5.6806./PayFixDuration
Ns = 154.2163 120.0786 93.6443
Отвлеченная сумма, вводимая в зафиксированную платой сторону подкачки мгновенно, иммунизирует портфель.
liborduration
| liborfloat2fixed
| liborprice