Цена и анализирует кредитный дефолтный своп. Для получения дополнительной информации о поддерживаемых инструментах кредитного дериватива смотрите, Выбирают Instruments, Models и Pricers.
Этот пример показывает рабочий процесс, чтобы оценить CDS инструмент, когда вы используете defprobcurve модель и Credit метод ценообразования.
Создайте CDS Инструментальный объект
Используйте fininstrument создать CDS инструментальный объект.
CDS = fininstrument("CDS",'Maturity',datetime(2021,9,15),'ContractSpread',15,'Notional',20000,'Period',4,'Basis',3,'BusinessDayConvention',"follow",'Name',"CDS_instrument")
CDS =
CDS with properties:
ContractSpread: 15
Maturity: 15-Sep-2021
Period: 4
Basis: 3
RecoveryRate: 0.4000
BusinessDayConvention: "follow"
Holidays: NaT
PayAccruedPremium: 1
Notional: 20000
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"
Создайте Credit Объект калькулятора цен
Используйте finpricer создать Credit объект калькулятора цен и использование ratecurve объект для 'DiscountCurve' аргумент пары "имя-значение".
outPricer = finpricer("credit",'DefaultProbabilityCurve',DefaultProbCurve,'DiscountCurve',myRC)
outPricer =
Credit with properties:
DiscountCurve: [1x1 ratecurve]
TimeStep: 10
DefaultProbabilityCurve: [1x1 defprobcurve]
Цена CDS Инструмент
Используйте price вычислить цену за CDS инструмент.
Price = price(outPricer,CDS)
Price = 52.7426
fininstrument | finmodel | finpricer