CDSOption

CDSOption объект прибора

Описание

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

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

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

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

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

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

Создание

Описание

пример

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' и скаляр логический.

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

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

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

Свойства

расширить все

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

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

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

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

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

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

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

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

Флаг, указывающий, является ли опция типом nockout, возвращается как скалярная логика.

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

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

Типы данных: 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 и используйте объект pricer 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