Credit

Создайте Credit объект калькулятора цен для CDS инструмент с помощью defprobcurve

Описание

Создайте и оцените CDS инструментальный объект с defprobcurve и Credit метод ценообразования с помощью этого рабочего процесса:

  1. Создайте объект кривой вероятности по умолчанию с помощью defprobcurve.

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

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

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

Создание

Описание

пример

CreditPricerObj = finpricer(PricerType,'DiscountCurve',ratecurve_obj,'DefaultProbabilityCurve',defprobcurve_object) создает Credit объект калькулятора цен путем определения PricerType и необходимые аргументы пары "имя-значение" DiscountCurve и DefaultProbabilityCurve установить свойства с помощью пар "имя-значение". Например, CreditPricerObj = finpricer("Credit",'DiscountCurve',ratecurve_obj,'DefaultProbabilityCurve',defprobcurve_obj) создает Credit объект калькулятора цен.

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

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

Тип калькулятора цен в виде строки со значением "Credit" или вектор символов со значением 'Credit'.

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

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

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

Пример: CreditPricerObj = finpricer("Credit",'DiscountCurve',ratecurve_obj,'DefaultProbabilityCurve',defprobcurve_obj)

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

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

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

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

Свойства

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

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

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

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

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

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

priceВычислите цену за инструмент кредитного дериватива с Credit калькулятор цен

Примеры

свернуть все

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

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

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

CDS = fininstrument("cds",'Maturity',datetime(2027,9,20),'ContractSpread', 50,'Name',"CDS_instrument")
CDS = 
  CDS with properties:

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

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

Создайте defprobcurve объект с помощью defprobcurve.

Settle = datetime(2017, 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)
DefaultProbCurve = 
  defprobcurve with properties:

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

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

Создайте ratecurve объект с помощью ratecurve.

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"

Создайте Credit Объект калькулятора цен

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

CDSpricer = finpricer("credit",'DiscountCurve',ZeroCurve,'DefaultProbabilityCurve',DefaultProbCurve)
CDSpricer = 
  Credit with properties:

              DiscountCurve: [1x1 ratecurve]
                   TimeStep: 10
    DefaultProbabilityCurve: [1x1 defprobcurve]

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

Используйте price вычислить цену за CDS инструмент.

outPrice = price(CDSpricer, CDS)
outPrice = 6.9363e+04
Введенный в R2020a