Инструменты могут быть представлены к функциям как портфель различных видов инструментов или как группы инструментов одного типа. Текущая версия тулбокса может вычислить цену и чувствительность для пяти типов инструментов с помощью кривых процентной ставки:
Связи
Примечания с фиксированной скоростью
Ноты с плавающей скоростью
Обмены
ОАГ для вызываемых и приемлемых облигаций
Агентство ОАГ
В дополнение к этим инструментам тулбокс также поддерживает расчет цены и чувствительности произвольных наборов денежных потоков.
Опции и минимальные процентные ставки и прописные буквы отсутствуют в приведенном выше списке поддерживаемых инструментов. Эти инструменты не поддерживаются, потому что их функция ценообразования и чувствительности требует стохастической модели для эволюции процентных ставок. Структура терминов процентных ставок, используемая для ценообразования, рассматривается как детерминированная, и как таковая не подходит для ценообразования этих инструментов.
Financial Instruments Toolbox™ также содержит функции, которые используют модели Heath-Jarrow-Morton (HJM) и Black-Derman-Toy (BDT) для вычисления цен и чувствительности к финансовым инструментам. Эти модели поддерживают расчеты с использованием опций и минимальных процентных ставок и прописных букв. Смотрите Ценообразование с использованием моделей дерева процентных ставок для получения информации об вычислении цены и чувствительности финансовых инструментов с использованием моделей HJM и BDT.
Основной функцией, используемой для ценообразования портфелей инструментов, является intenvprice. Эта функция работает с семейством функций, которые вычисляют цены отдельных типов инструментов. При вызове, intenvprice классифицирует портфель, содержащийся в InstSet по типу инструмента и вызывает соответствующие функции ценообразования. Карта между типами приборов и функцией ценообразования intenvprice вызовы
Оцените облигацию набором нулевых кривых | |
Оцените примечание с фиксированной ставкой набором нулевых кривых | |
Оцените примечание с плавающей ставкой набором нулевых кривых | |
Оцените своп набором нулевых кривых |
Каждую из этих функций можно использовать отдельно для оценки инструмента. Для получения конкретной информации об использовании этих функций см. страницы с описанием.
intenvprice принимает в качестве входов структуру терминов процентной ставки, созданную с intenvset, и портфель инструментов условных деривативов процентной ставки, созданный с instadd.
Синтаксис для использования intenvprice чтобы оценить целый портфель,
Price = intenvprice(RateSpec, InstSet)
где:
RateSpec - структура процентной ставки.
InstSet - имя портфеля.
Рассмотрим этот пример использования intenvprice функция для оценки портфеля инструментов, поставляемых с программным обеспечением Financial Instruments Toolbox.
Предоставленный MAT-файл deriv.mat сохраняет портфолио как переменную набора приборов ZeroInstSet. MAT-файл также содержит структуру терминов процентной ставки ZeroRateSpec. Вы можете отобразить инструменты с функцией instdisp.
load deriv.mat;
instdisp(ZeroInstSet)Index Type CouponRate Settle Maturity Period Basis... 1 Bond 0.04 01-Jan-2000 01-Jan-2003 1 NaN... 2 Bond 0.04 01-Jan-2000 01-Jan-2004 2 NaN... Index Type CouponRate Settle Maturity FixedReset Basis... 3 Fixed 0.04 01-Jan-2000 01-Jan-2003 1 NaN... Index Type Spread Settle Maturity FloatReset Basis... 4 Float 20 01-Jan-2000 01-Jan-2003 1 NaN... Index Type LegRate Settle Maturity LegReset Basis... 5 Swap [0.06 20] 01-Jan-2000 01-Jan-2003 [1 1] NaN...
Использовать intenvprice вычислить цены на инструменты, содержащиеся в портфеле ZeroInstSet.
format bank
Prices = intenvprice(ZeroRateSpec, ZeroInstSet)
Prices =
98.72
97.53
98.72
100.55
3.69Область выхода Prices вектор, содержащий цены всех инструментов в портфеле в порядке, указанном Index столбец, отображаемый instdisp. Итак, первые два элемента в Prices соответствуют первым двум связям; третий элемент соответствует банкноте с фиксированной скоростью; четвертая к купюре с плавающей ставкой; и пятый элемент соответствует цене свопа.
В целом можно вычислить чувствительность как изменение долларовой цены, так и процентное изменение цены. Тулбокс сообщает все чувствительности как чувствительности к доллару.
Используя структуру терминов процентной ставки, можно вычислить два типа чувствительности производной цены, дельта и гамма. Дельта представляет долларовую чувствительность цен к сдвигам в наблюдаемом кривом форвардном выражении. Гамма представляет долларовую чувствительность дельты к сдвигам наблюдаемого кривого форвардного выражения.
intenvsens функция вычисляет чувствительность прибора и цены прибора. Если вам нужны как цены, так и меры чувствительности, используйте intenvsens. Отдельный вызов на intenvprice не требуется.
Вот синтаксис
[Delta, Gamma, Price] = intenvsens(RateSpec, InstSet)
где, как и прежде:
RateSpec - структура процентной ставки.
InstSet - имя портфеля.
Вот пример, который использует intenvsens для расчета чувствительности и цен.
format bank load deriv.mat; [Delta, Gamma, Price] = intenvsens(ZeroRateSpec, ZeroInstSet);
Отображение результатов в одной матрице в банковском формате.
All = [Delta Gamma Price]
All =
-272.64 1029.84 98.72
-347.44 1622.65 97.53
-272.64 1029.84 98.72
-1.04 3.31 100.55
-282.04 1059.62 3.69
Чтобы просмотреть чувствительность за доллар, разделите первые два столбца на последние.
[Delta./Price, Gamma./Price, Price]
ans =
-2.76 10.43 98.72
-3.56 16.64 97.53
-2.76 10.43 98.72
-0.01 0.03 100.55
-76.39 286.98 3.69
Option Adjusted Spread (OAS) является полезным способом оценки и сравнения ценных бумаг со встроенными опциями, такими как callable или puttable облигации. В основном, когда постоянный или плоский спред добавляется к кривой процентной ставки/ставкам в дереве, значение модели ценообразования равняется рыночной цене. Financial Instruments Toolbox поддерживает ценообразование американских, европейских и бермудских вызываемых и приемлемых облигаций, используя различные модели процентной ставки. Ценообразование для облигации со встроенными опциями:
Для callable облигации, где держатель купил облигацию и продал вызов опция эмитенту:
Price callable bond = Price Option free bond − Price call option
Для гашения облигации, где держатель купил облигацию и опцию на пут:
Price puttable bond = Price Option free bond + Price put option
Существует две дополнительные чувствительности, связанные с OAS для облигаций со встроенными опционами: Скорректированная длительность опции и Скорректированная опция Выпуклости. Они аналогичны концепциям измененной длительности и выпуклости для безопционных связей. Длительность меры является общим термином, который описывает, насколько чувствительна цена облигации к параллельному сдвигу в кривое выражение. Измененная длительность и измененная выпуклость предполагают, что денежные потоки облигации не изменяются при сдвигах кривой выражения. Это не верно для длительности OA или Выпуклости OA, поскольку денежные потоки могут измениться из-за компонента опции риска облигации.
Часто облигации выпускаются со встроенными опциями, что делает стандартную цену/доходность или спреды нерелевантными. Для примера муниципалитет, обеспокоенный вероятностью падения процентных ставок в будущем, может выпустить облигации с условием, которое позволяет погасить облигацию до погашения облигации. Это вызов, опция по облигации, и должно быть включено в оценку облигации. Скорректированный по опциону спред (OAS), который корректирует спред облигаций для значения опции, является стандартной мерой для оценки облигаций со встроенными опциями. Financial Instruments Toolbox поддерживает вычисление спредов с поправкой на опции для облигаций с одинарными встроенными опционами с помощью модели агентства.
Ассоциация индустрии ценных бумаг и финансовых рынков (SIFMA) придерживается упрощенного подхода к вычислению ОАГ для агентских вопросов (спонсируемые правительством сущности, такие как Fannie Mae и Freddie Mac), называемые «Агентством ОАГ». В этом подходе облигация имеет только одну дату вызова (европейский вызов) и использует модель Black's (см. Формула европейских Callable ценных бумаг BMA в https://www.sifma.org), чтобы оценить опцию облигации. Цена облигации определяется следующим образом:
PriceCallable = PriceNonCallable - PriceОпция
где
PriceCallable - это цена вызываемой облигации.
PriceNonCallable - это цена некаллируемой облигации, то есть цена облигации с помощью bndspread.
PriceОпция - это цена опции, то есть цена опции по модели Black's.
Агентство ОАГ - спред, при использовании в предыдущей формуле, дает рыночную цену. Financial Instruments Toolbox поддерживает следующие функции:
Агентство ОАГ
Функции Агентства ОАГ | Цель |
|---|---|
Вычислите OAS callable bond с помощью модели Agency OAS. | |
Оцените callable bond OAS с помощью модели Agency OAS. |
Для получения дополнительной информации об агентской ОАГ смотрите Agency Option-Adjusted Spreads.
bdtprice | bdtsens | bdttimespec | bdttree | bdtvolspec | bkprice | bksens | bktimespec | bktree | bkvolspec | bondbybdt | bondbybk | bondbyhjm | bondbyhw | bondbyzero | capbybdt | capbybk | capbyblk | capbyhjm | capbyhw | cfbybdt | cfbybk | cfbyhjm | cfbyhw | cfbyzero | fixedbybdt | fixedbybk | fixedbyhjm | fixedbyhw | fixedbyzero | floatbybdt | floatbybk | floatbyhjm | floatbyhw | floatbyzero | floatdiscmargin | floatmargin | floorbybdt | floorbybk | floorbyblk | floorbyhjm | floorbyhw | hjmprice | hjmsens | hjmtimespec | hjmtree | hjmvolspec | hwcalbycap | hwcalbyfloor | hwprice | hwsens | hwtimespec | hwtree | hwvolspec | instbond | instcap | instcf | instfixed | instfloat | instfloor | instoptbnd | instoptembnd | instoptemfloat | instoptfloat | instrangefloat | instswap | instswaption | intenvprice | intenvsens | intenvset | mmktbybdt | mmktbyhjm | oasbybdt | oasbybk | oasbyhjm | oasbyhw | optbndbybdt | optbndbybk | optbndbyhjm | optbndbyhw | optembndbybdt | optembndbybk | optembndbyhjm | optembndbyhw | optemfloatbybdt | optemfloatbybk | optemfloatbyhjm | optemfloatbyhw | optfloatbybdt | optfloatbybk | optfloatbyhjm | optfloatbyhw | rangefloatbybdt | rangefloatbybk | rangefloatbyhjm | rangefloatbyhw | swapbybdt | swapbybk | swapbyhjm | swapbyhw | swapbyzero | swaptionbybdt | swaptionbybk | swaptionbyblk | swaptionbyhjm | swaptionbyhw