price

Вычислите цену для кредитного производного инструмента с 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 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