Discount

Создание Discount объект ценника для Deposit, FRA, Swap, FixedBond, или FloatBond использование ratecurve объект

Описание

Создайте и оцените Deposit, FRA, Swap, FixedBond, или FloatBond объект инструмента со ratecurve и a Discount метод ценообразования с использованием этого рабочего процесса:

  1. Создайте объект кривой процентной ставки с помощью ratecurve.

  2. Использовать finpricer для задания Discount объект ценника для Deposit, FRA, Swap, FixedBond, или FloatBond прибора.

    Примечание

    Если вы не задаете ProjectionCurve когда вы создаете Swap или FloatBond инструмент с Discount цена, ProjectionCurve значение по умолчанию соответствует DiscountCurve значение.

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

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

Создание

Описание

пример

DiscountPricerObj = finpricer(PricerType,'DiscountCurve',ratecurve_object) создает Discount объект прейскуранта путем определения PricerType и необходимый аргумент пары "имя-значение" DiscountCurve чтобы задать свойства с помощью пар "имя-значение". Для примера, DiscountPricerObj = finpricer("Discount",'DiscountCurve',ratecurve_obj) создает Discount объект прейскуранта.

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

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

Тип прейскуранта, заданный как строка со значением "Discount" или вектор символов со значением 'Discount'.

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

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

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

Пример: DiscountPricerObj = finpricer("Discount",'DiscountCurve',ratecurve_obj)

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

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

Свойства

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

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

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

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

priceВычислите цену для инструмента процентной ставки с Discount калькулятор цен

Примеры

свернуть все

Этот пример показывает рабочий процесс, чтобы оценить Swap инструмент при использовании ratecurve и a Discount метод ценообразования.

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

Создайте ratecurve объект, использующий ratecurve для базовой кривой процентной ставки для Swap прибора.

Settle = datetime(2022,1,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-Jan-2022
         InterpMethod: "linear"
    ShortExtrapMethod: "next"
     LongExtrapMethod: "previous"

Создание Swap Объект прибора

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

SwapOpt = fininstrument("Swap",'Maturity',datetime(2027,1,15),'LegRate',[0.024 0.015],'LegType',["fixed","float"],'ProjectionCurve',myRC,'Name',"swap_instrument")
SwapOpt = 
  Swap with properties:

                     LegRate: [0.0240 0.0150]
                     LegType: ["fixed"    "float"]
                       Reset: [2 2]
                       Basis: [0 0]
                    Notional: 100
          LatestFloatingRate: [NaN NaN]
                 ResetOffset: [0 0]
    DaycountAdjustedCashFlow: [0 0]
             ProjectionCurve: [1x2 ratecurve]
       BusinessDayConvention: ["actual"    "actual"]
                    Holidays: NaT
                EndMonthRule: [1 1]
                   StartDate: NaT
                    Maturity: 15-Jan-2027
                        Name: "swap_instrument"

Создание Discount Объект прейскуранта

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

outPricer = finpricer("Discount", 'DiscountCurve',myRC)
outPricer = 
  Discount with properties:

    DiscountCurve: [1x1 ratecurve]

Ценовые Swap Инструмент

Использование price вычислить цену и чувствительность для Swap прибора.

[Price, outPR] = price(outPricer, SwapOpt,["all"])
Price = -1.3834
outPR = 
  priceresult with properties:

       Results: [1x2 table]
    PricerData: []

outPR.Results
ans=1×2 table
     Price       DV01  
    _______    ________

    -1.3834    0.023765

Введенный в R2020a