exponenta event banner

CDSBlack

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

Описание

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

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

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

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

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

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

Создание

Описание

пример

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

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

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

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

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

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

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

Пример: CDSBlackPricerObj = finpricer("Analytic",'Model',CDSBlack,'DiscountCurve',ratecurve_obj,'DefaultProbabilityCurve',defaultprobabilitycurve_obj)
Необходимый CDSBlack Аргументы пары «имя-значение»

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

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

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

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

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

Кривая вероятности по умолчанию, заданная как пара, разделенная запятыми, состоящая из 'DefaultProbabilityCurve' и имя ранее созданного defprobcurve.

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

Свойства

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

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

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

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

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

Кривая вероятности по умолчанию, возвращенная как defprobcurve объект.

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

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

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

Примеры

свернуть все

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

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

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

Settle = datetime(2017,9,20);
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;
ZeroCurve = ratecurve("zero", Settle, ZeroDates ,ZeroRates)
ZeroCurve = 
  ratecurve with properties:

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

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

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

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)
DefaultProbCurve = 
  defprobcurve with properties:

                  Settle: 20-Sep-2017
                   Basis: 2
                   Dates: [10x1 datetime]
    DefaultProbabilities: [10x1 double]

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

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

ContractSpreadBP = 0; % Contractual spread is determined on ExerciseDate
CDS = fininstrument("CDS",'Maturity',datetime(2027,9,20),'ContractSpread',ContractSpreadBP)
CDS = 
  CDS with properties:

           ContractSpread: 0
                 Maturity: 20-Sep-2027
                   Period: 4
                    Basis: 2
             RecoveryRate: 0.4000
    BusinessDayConvention: "actual"
                 Holidays: NaT
        PayAccruedPremium: 1
                 Notional: 10000000
                     Name: ""

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

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

ExerciseDate = datetime(2017, 12, 20);
Strike = 50;
CDSOption = fininstrument("CDSOption",'Strike',Strike,'ExerciseDate',ExerciseDate,'OptionType',"put",'CDS',CDS)
CDSOption = 
  CDSOption with properties:

      OptionType: "put"
          Strike: 50
        Knockout: 0
    ExerciseDate: 20-Dec-2017
             CDS: [1x1 fininstrument.CDS]
            Name: ""

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

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

SpreadVolatility = 0.3;
CDSOptionModel = finmodel("CDSBlack",'SpreadVolatility',SpreadVolatility)
CDSOptionModel = 
  CDSBlack with properties:

    SpreadVolatility: 0.3000

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

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

CDSOptionpricer = finpricer("analytic",'Model',CDSOptionModel,'DiscountCurve',ZeroCurve,'DefaultProbabilityCurve',DefaultProbCurve)
CDSOptionpricer = 
  CDSBlack with properties:

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

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

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

outPrice = price(CDSOptionpricer,CDSOption)
outPrice = 6.5054
Представлен в R2020a