exponenta event banner

цена

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

Описание

пример

[Price,PriceResult] = price(inpPricer,inpInstrument) вычисляет цену инструмента и соответствующую информацию о расчете цены на основе объекта расчета цены inpPricer и объект прибора inpInstrument.

Примеры

свернуть все

В этом примере показан поток операций для оценки 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 pricer object и используйте 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

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

свернуть все

Объект Pricer, указанный как скаляр Credit объект прайсера. Использовать finpricer для создания Credit объект прайсера.

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

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

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

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

свернуть все

Цена инструмента, возвращенная в виде цифры.

Результат цены, возвращенный как PriceResult объект. Объект имеет следующие поля:

  • PriceResult.Results - Таблица результатов, включающая CDS цена и начисленная премия

  • PriceResult.PricerData - Структура, включающая даты, время и денежные потоки премиальных трасс

Представлен в R2020a