parswaprate

Вычислите номинальную ставку свопа для Swap инструмент

Описание

пример

outRate = parswaprate(SwapObject,inCurve) вычисляет номинальную ставку свопа для Swap прибора.

Примеры

свернуть все

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

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

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

Settle = datetime(2018,3,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-Mar-2018
         InterpMethod: "linear"
    ShortExtrapMethod: "next"
     LongExtrapMethod: "previous"

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

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

Swap = fininstrument("Swap",'Maturity',datetime(2020,9,15),'LegRate',[0.022 0.019 ],'LegType',["float","fixed"],'ProjectionCurve',myRC,'Name',"swap_instrument")
Swap = 
  Swap with properties:

                     LegRate: [0.0220 0.0190]
                     LegType: ["float"    "fixed"]
                       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-Sep-2020
                        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, Swap,["all"])
Price = 2.4066
outPR = 
  priceresult with properties:

       Results: [1x2 table]
    PricerData: []

outPR.Results
ans=1×2 table
    Price       DV01   
    ______    _________

    2.4066    -0.012056

Вычислите номинальную ставку свопа с помощью parswaprate.

outRate = parswaprate(Swap,myRC)
outRate = 0.0287

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

свернуть все

Объект Swap, заданный с помощью ранее созданного Swap объект прибора.

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

Кривая скорости, заданная как ранее созданная ratecurve объект.

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

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

свернуть все

Номинальный коэффициент свопа, возвращенный как десятичный.

Подробнее о

свернуть все

Номинальная ставка свопа

Это par swap rate - скорость, при которой значение свопа становится равным нулю.

Другими словами, номинальная ставка свопа является значением фиксированной ставки, которая придает свопу нулевое текущее значение, или фиксированной ставкой, которая делает значение обеих ветвей равным (то есть значение фиксированной стойки и значение плавающей стойки).

Введенный в R2020b