exponenta event banner

Черный

Создать Black объект модели для Cap, Floor, или Swaption инструмент

Описание

Создать и оценить Cap, Floor, или Swaption объект прибора с Black модель с использованием этого рабочего процесса:

  1. Использовать fininstrument для создания Cap, Floor, илиSwaption объект прибора.

  2. Использовать finmodel для указания Black объект модели для Cap, Floor, или Swaption инструмент.

  3. Использовать finpricer для указания Black метод ценообразования для Cap, Floor, или Swaption инструмент.

Дополнительные сведения об этом потоке операций см. в разделе Начало работы с потоками операций с использованием объектной структуры для расчета цен на финансовые инструменты.

Для получения дополнительной информации о доступных методах ценообразования для Cap, Floor, или Swaption инструмент при использовании Black см. раздел Выбор инструментов, моделей и прайсеров.

Создание

Описание

пример

BlackModelObj = finmodel(ModelType,'Volatility',volatility_value) создает Black объект модели путем указания ModelType и задает свойства для требуемого аргумента пары имя-значение Volatility. Для получения дополнительной информации о Black модель см. в разделе Дополнительные сведения и алгоритмы.

пример

BlackModelObj = finmodel(___,Name,Value) задает дополнительные свойства, используя дополнительные пары имя-значение в дополнение к требуемым аргументам в предыдущем синтаксисе. Например, BlackModelObj = finmodel("Black",'Volatility',0.032,'Shift',0.002) создает Black объект модели. Можно указать несколько аргументов пары имя-значение.

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

развернуть все

Тип модели, указанный как строка со значением "Black" или символьный вектор со значением 'Black'.

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

Black Аргументы пары «имя-значение»

Укажите требуемые и необязательные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: BlackModelObj = finmodel("Black",'Volatility',0.032,'Shift',0.002)
Необходимый Black Аргументы пары «имя-значение»

развернуть все

Значение волатильности для базового актива, указанное как пара, разделенная запятыми, состоящая из 'Volatility' и скалярный неотрицательный числовой.

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

Дополнительный Black Аргумент пары «имя-значение»

развернуть все

Сдвиг в десятичных разрядах для сдвинутой модели черного, заданной как разделенная запятыми пара, состоящая из 'Shift' и скалярный сдвиг скорости в положительных десятичных разрядах. Установите для этого параметра положительное смещение скорости в десятичных разрядах, чтобы добавить положительное смещение к прямой скорости и страйк, что эффективно устанавливает отрицательную нижнюю границу для прямой скорости. Например, Shift значение 0.01 равно 1% сдвигу.

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

Свойства

развернуть все

Значение волатильности, возвращаемое как скалярное неотрицательное числовое.

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

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

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

Примеры

свернуть все

В этом примере показан поток операций для оценки Cap инструмент при использовании Black модель и Black способ ценообразования.

Создать Cap Объект КИП

Использовать fininstrument для создания Cap объект прибора.

CapOpt = fininstrument("Cap",'Strike',.001,'Maturity',datetime(2019,1,30),'Reset',4,'Principal',100,'Basis',8,'Name',"cap_option")
CapOpt = 
  Cap with properties:

                      Strike: 1.0000e-03
                    Maturity: 30-Jan-2019
                 ResetOffset: 0
                       Reset: 4
                       Basis: 8
                   Principal: 100
             ProjectionCurve: [0x0 ratecurve]
    DaycountAdjustedCashFlow: 0
       BusinessDayConvention: "actual"
                    Holidays: NaT
                        Name: "cap_option"

Создать Black Объект модели

Использовать finmodel для создания Black объект модели.

BlackModel = finmodel("Black",'Volatility',0.032,'Shift',0.002)
BlackModel = 
  Black with properties:

    Volatility: 0.0320
         Shift: 0.0020

Создать ratecurve Объект

Создать ratecurve объект с использованием ratecurve.

Settle = datetime(2018,9,15);
Type = 'zero';
ZeroTimes = [calmonths(6) calyears([1 2 3 4 5 7 10 20 30])]';
ZeroRates = [0.0052 0.0055 0.0061 0.0073 0.0094 0.0119 0.0168 0.0222 0.0293 0.0307]';
ZeroDates = Settle + ZeroTimes;
 
myRC = ratecurve('zero',Settle,ZeroDates,ZeroRates)
myRC = 
  ratecurve with properties:

                 Type: "zero"
          Compounding: -1
                Basis: 0
                Dates: [10x1 datetime]
                Rates: [10x1 double]
               Settle: 15-Sep-2018
         InterpMethod: "linear"
    ShortExtrapMethod: "next"
     LongExtrapMethod: "previous"

Создать Black Объект прайсера

Использовать finpricer для создания Black pricer object и используйте ratecurve объект для 'DiscountCurve' аргумент пары имя-значение.

outPricer = finpricer("analytic",'Model',BlackModel,'DiscountCurve',myRC)
outPricer = 
  Black with properties:

            Model: [1x1 finmodel.Black]
    DiscountCurve: [1x1 ratecurve]

Цена Cap Инструмент

Использовать price чтобы вычислить цену для Cap инструмент.

Price = price(outPricer,CapOpt)
Price = 0.1575

Подробнее

развернуть все

Алгоритмы

развернуть все

Представлен в R2020a