CDSOption

CDSOption инструментальный объект

Описание

Создайте и оцените CDSOption инструментальный объект, использующий этот рабочий процесс:

  1. Используйте fininstrument создать CDSOption инструментальный объект.

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

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

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

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

Создание

Описание

пример

CDSOptionObj = fininstrument(InstrumentType,'ExerciseDate',exercise_date,'Strike',strike_value,'CDS',cds_obj) создает CDSOption объект путем определения InstrumentType и устанавливает свойства для необходимых аргументов пары "имя-значение" ExerciseDate, Strike, и CDS.

пример

CDSOptionObj = fininstrument(___,Name,Value) устанавливает дополнительные свойства с помощью дополнительных пар "имя-значение" в дополнение к обязательным аргументам в предыдущем синтаксисе. Например, CDSOptionObj = fininstrument("CDSoption",'ExerciseDate',datetime(2019,1,30),'Strike',500,'CDS',cds_object,'Name',"cdsoption_instrument") создает CDSOption инструмент с забастовкой 500. Можно задать несколько аргументов пары "имя-значение".

Входные параметры

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

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

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

CDSOption Аргументы в виде пар имя-значение

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

Пример: CDSOptionObj = fininstrument("CDSoption",'ExerciseDate',datetime(2019,1,30),'Strike',500,'CDS',cds_object,'Name',"cdsoption_instrument")

Необходимый CDSOption Аргументы в виде пар имя-значение

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

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

Если вы используете вектор символов даты или строку даты, формат должен быть распознаваемым datetime потому что ExerciseDate свойство хранится как datetime.

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

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

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

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

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

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

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

Тип опции в виде разделенной запятой пары, состоящей из 'OptionType' и скалярная строка или вектор символов.

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

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

Типы данных: логический

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

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

Свойства

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

Дата осуществления опции, возвращенная как datetime.

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

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

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

CDS объект, возвращенный как скалярный CDS объект.

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

Определение опции, возвращенной как строка с помощью "call" или "put".

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

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

Типы данных: логический

Пользовательское имя для инструмента, возвращенного как строка.

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

Примеры

свернуть все

Этот пример показывает рабочий процесс, чтобы оценить CDSOption инструмент, когда вы используете CDSBlack модель и CDSBlack метод ценообразования.

Создайте CDS Инструментальный объект

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

CDSOpt = fininstrument("CDS",'Maturity',datetime(2021,9,15),'ContractSpread',150,'Notional',100,'Name',"CDS_option")
CDSOpt = 
  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_option"

Создайте 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',CDSOpt,'OptionType',"put",'Knockout',true,'Name',"CDSOption_option")
CDSOptionInst = 
  CDSOption with properties:

      OptionType: "put"
          Strike: 20
        Knockout: 1
    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 объект калькулятора цен и использование 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