exponenta event banner

Черный

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

Описание

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

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

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

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

    Примечание

    Если не указать ProjectionCurve при создании Cap, Floor, или Swaption прибор с Black прайсер, ProjectionCurve значение по умолчанию DiscountCurve значение.

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

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

Создание

Описание

пример

BlackPricerObj = finpricer(PricerType,'DiscountCurve',ratecurve_obj,'Model',model) создает Black объект pricer путем указания PricerType и требуемые аргументы пары имя-значение для DiscountCurve и Model для задания свойств с использованием пар имя-значение. Например, BlackPricerObj = finpricer("Analytic",'DiscountCurve',ratecurve_obj,'Model',BlackModel) создает Black объект прайсера.

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

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

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

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

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

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

Пример: BlackPricerObj = finpricer("Analytic",'DiscountCurve',ratecurve_obj,'Model',BlackModel)

ratecurve объект для дисконтирования денежных потоков, указанный как разделенная запятыми пара, состоящая из 'DiscountCurve' и имя ранее созданного ratecurve объект.

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

Модель, заданная как разделенная запятыми пара, состоящая из 'Model' и имя ранее созданного Black объект модели с использованием finmodel.

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

Свойства

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

ratecurve объект для дисконтирования денежных потоков, возвращенный как ratecurve объект

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

Модель, возвращенная как Black объект модели.

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

Функции объекта

priceВычислить цену для процентной ставки, собственного капитала или кредитного производного инструмента с Analytic калькулятор цен

Примеры

свернуть все

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

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

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

CapOpt = fininstrument("Cap",'Strike',.02,'Maturity',datetime(2021,12,30),'Reset',4,'Principal',100,'Basis',12,'Name',"cap_option")
CapOpt = 
  Cap with properties:

                      Strike: 0.0200
                    Maturity: 30-Dec-2021
                 ResetOffset: 0
                       Reset: 4
                       Basis: 12
                   Principal: 100
             ProjectionCurve: [0x0 ratecurve]
    DaycountAdjustedCashFlow: 0
       BusinessDayConvention: "actual"
                    Holidays: NaT
                        Name: "cap_option"

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

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

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

    Volatility: 0.0900
         Shift: 0.0020

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

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

Settle = datetime(2020,9,14);
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: 14-Sep-2020
         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 = 4.6412e-29
Представлен в R2020a