exponenta event banner

CDSBlack

Создать CDSBlack объект модели для CDSOption инструмент

Описание

Создать и оценить CDSOption объект прибора с CDSBlack модель с использованием этого рабочего процесса:

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

  2. Использовать finmodel для указания CDSBlack объект модели для CDSOption инструмент.

  3. Использовать finpricer для указания CDSBlack метод ценообразования для CDSOption инструмент.

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

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

Создание

Описание

пример

CDSBlackModelObj = finmodel(ModelType,'SpreadVolatility',spreadvolatility_value) создает CDSBlack объект модели путем указания ModelType и требуемый аргумент пары имя-значение SpreadVolatility для установки свойств с использованием аргументов пары имя-значение. Например, CDSBlackModelObj = finmodel("CDSBlack",'SpreadVolatility',0.052) создает CDSBlack объект модели.

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

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

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

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

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

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

Пример: CDSBlackModelObj = finmodel("CDSBlack",'SpreadVolatility',0.052)

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

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

Свойства

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

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

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

Примеры

свернуть все

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

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

Использовать fininstrument для создания CDS объект инструмента в качестве основного инструмента.

CDS = fininstrument("CDS",'Maturity',datetime(2021,9,15),'ContractSpread',150,'Notional',100,'Name',"CDS_instrument")
CDS = 
  CDS with properties:

           ContractSpread: 150
                 Maturity: 15-Sep-2021
                   Period: 4
                    Basis: 2
             RecoveryRate: 0.4000
    BusinessDayConvention: "actual"
                 Holidays: NaT
        PayAccruedPremium: 1
                 Notional: 100
                     Name: "CDS_instrument"

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

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

Settle = datetime(2020,9,20);
DefProbTimes = [calmonths(6) calyears([1 2 3 4 5 7 10 20 30])];
DefaultProbabilities = [0.005 0.007 0.01 0.015 0.026 0.04 0.077 0.093 0.15 0.20]';
ProbDates = Settle + DefProbTimes;
DefaultProbCurve = defprobcurve(Settle,ProbDates,DefaultProbabilities,'Basis',5)
DefaultProbCurve = 
  defprobcurve with properties:

                  Settle: 20-Sep-2020
                   Basis: 5
                   Dates: [10x1 datetime]
    DefaultProbabilities: [10x1 double]

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

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

Settle = datetime(2020,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-2020
         InterpMethod: "linear"
    ShortExtrapMethod: "next"
     LongExtrapMethod: "previous"

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

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

CDSOptionInst = fininstrument("CDSOption",'ExerciseDate',datetime(2021,8,15),'Strike',20,'CDS',CDS,'OptionType',"put",'Name',"CDSOption_option")
CDSOptionInst = 
  CDSOption with properties:

      OptionType: "put"
          Strike: 20
        Knockout: 0
    ExerciseDate: 15-Aug-2021
             CDS: [1x1 fininstrument.CDS]
            Name: "CDSOption_option"

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

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

CDSBlackModel = finmodel("CDSBlack",'SpreadVolatility',.2)
CDSBlackModel = 
  CDSBlack with properties:

    SpreadVolatility: 0.2000

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

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

outPricer = finpricer("analytic",'Model',CDSBlackModel,'DefaultProbabilityCurve',DefaultProbCurve,'DiscountCurve',myRC)
outPricer = 
  CDSBlack with properties:

                      Model: [1x1 finmodel.CDSBlack]
              DiscountCurve: [1x1 ratecurve]
    DefaultProbabilityCurve: [1x1 defprobcurve]

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

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

Price = price(outPricer,CDSOptionInst)
Price = 3.3016e-04
Представлен в R2020a