MATLAB.Exponenta
MATLAB и Simulink на русском
Технологии разработки и отладки
		сложных технических систем
 

Financial Derivatives Toolbox

Financial Toolbox: разбор демонстрационных примеров

  В оглавление \ К предыдущему разделу \ К следующему разделу

Функция bkprice

Назначение: Определение цены производных финансовых инструментов на основе дерева процентных ставок модели ВК (Блэка-Карасинского).

Синтаксис:

[Price, PriceTree] = bkprice(BKTree, InstSet, Options)

Аргументы:

  • BKTree - Структура дерева процентных ставок, созданное с помощью функции bktree.
  • InstSet - Переменная, содержащая набор NINST производных финансовых инструментов. Инструменты категоризованы по типу. Каждый тип имеет различные поля данных. Сохраняемые поля данных представляют собой вектора для каждого финансового инструмента.
  • Options - (Обязательный). Структура ценообразования опциона как производного финансового инструмента, созданного с помощью функции derivset.

Описание:

Обращением к функции bkprice:

[Price, PriceTree] = bkprice(BKTree, InstSet, Options)

осуществляется вычисление без арбитражной цены для производных финансовых инструментов с использованием дерева процентной ставки, созданного с помощью ВК модели обращением к функции bktree. Определяются цены всех финансовых инструментов, содержащихся в переменной InstSet.
Price – вектор числа финансовых инструментов размерности NINST:1, цен для каждого финансового инструмента. Цены вычисляются методом динамического программирования обратным проходом по дереву процентной ставки. Если финансовый инструмент не может быть оценен, результатом является неопределенное значение - NaN.

PriceTree – Внутренняя структура MATLAB для дерева, содержащая вектора цена финансовых инструментов и приведенную процентную ставку, а также вектор моментов наблюдения в каждой вершине.
PriceTree.PTree – содержит действительные цены.
PriceTree.AITree - содержит приведенную процентную ставку.
PriceTree.t0bs – содержит моменты времеи наблюдения.
Функция bkprice поддерживает следующие финансовые инструменты: 'Bond', 'CashFlow', 'OptBond', 'Fixed', 'Float', 'Cap', 'Floor', 'Swap'. Для дополнительной информации относительно конструирования соответствующих типов смотри функцию instadd.

Взаимосвязанными функциями для определения цен производных финансовых инструментов являются:

  • bondbybk: Определение цены облигации на основе модели - дерева Блэка-Карасинского
  • capbybk: Определение цены капа на основе модели - дерева Блэка-Карасинского
  • cfbybk: Определение цены произвольного потока денежных средств на основе модели - дерева Блэка-Карасинского
  • fixedbybk: Определение цены обязательства с фиксированной доходностью на основе модели - дерева Блэка-Карасинского
  • floatbybk: Определение цены обязательства с плавающей доходностью на основе модели - дерева Блэка-Карасинского
  • floorbybk: Определение цены флора на основе модели - дерева Блэка-Карасинского
  • optbndbybk: Определение цены опциона на облигацию на основе модели - дерева Блэка-Карасинского
  • swapbybk: Определение цены свопа на основе модели - дерева Блэка-Карасинского

Пример:

Загрузим ВК дерево и производные финансовые инструменты из файла deriv.mat. Определим цену капа и облигации, которые находятся в портфеле. Выполним команды:

load deriv;
BKSubSet = instselect(BKInstSet,'Type', {'Bond', 'Cap'});
instdisp(BKSubSet)

Получим:

Index Type CouponRate Settle         Maturity       Period Basis EndMonthRule
		   IssueDate FirstCouponDate LastCouponDate StartDate Face Name
		   Quantity
1     Bond 0.03       01-Jan-2004    01-Jan-2007    1      0     1            NaN       NaN
		   NaN            NaN       100  3% bond 20      
2     Bond 0.03       01-Jan-2004    01-Jan-2008    1      0     1            NaN       NaN
		   NaN            NaN       100  3% bond 15      
 
Index Type Strike Settle         Maturity       CapReset Basis Principal Name
		   Quantity
3     Cap  0.04   01-Jan-2004    01-Jan-2008    1        0     100       4% Cap 10

Определим цену финансовых инструментов с помощью команды:

[Price, PriceTree] = bkprice(BKTree, BKSubSet);

Результат имеет вид:

Используем функцию treeviewer для наглядного представления цен трех инструментов, вдоль дерева ценообразования модели. Выполним команду:

treeviewer(PriceTree, BKSubSet)

Получим:

Цена 3% облигации (экспирация в 2007 году)

Цена 3% облигации (экспирация в 2007 году)

Цена 4% капа

См. также: Функции bksens, bktree, instadd, intenvprice, intenvsens.

  В оглавление \ К предыдущему разделу \ К следующему разделу

 

Поиск по сайту:

Система Orphus

Яндекс.Метрика