Оцените финансовый инструмент с кривой нулевой ширины. Такой инструмент не имеет никаких встроенных возможностей, другими словами, потоки наличности детерминированы и оценивают, инструмент является просто вопросом генерации потоков наличности и затем вычисления приведенной стоимости потоков наличности путем генерации соответствующих коэффициентов дисконтирования от кривой нулевой ширины. Для получения дополнительной информации о поддерживаемых инструментах процентной ставки смотрите, Выбирают Instruments, Models и Pricers.
ratecurve
и обесценьте калькулятор ценЭтот пример показывает рабочий процесс, чтобы оценить ваниль FixedBond
инструмент, когда вы используете ratecurve
и Discount
метод ценообразования.
Создайте FixedBond
Инструментальный объект
Используйте fininstrument
создать FixedBond
инструментальный объект.
FixB = fininstrument("FixedBond",'Maturity',datetime(2022,9,15),'CouponRate',0.021,'Period',2,'Basis',1,'Principal',100,'Name',"fixed_bond_instrument")
FixB = FixedBond with properties: CouponRate: 0.0210 Period: 2 Basis: 1 EndMonthRule: 1 Principal: 100 DaycountAdjustedCashFlow: 0 BusinessDayConvention: "actual" Holidays: NaT IssueDate: NaT FirstCouponDate: NaT LastCouponDate: NaT StartDate: NaT Maturity: 15-Sep-2022 Name: "fixed_bond_instrument"
Создайте ratecurve
Объект
Создайте ratecurve
объект с помощью ratecurve
.
Settle = datetime(2018,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-2018 InterpMethod: "linear" ShortExtrapMethod: "next" LongExtrapMethod: "previous"
Создайте Discount
Объект калькулятора цен
Используйте finpricer
создать Discount
объект калькулятора цен и использование ratecurve
объект с 'DiscountCurve'
аргумент пары "имя-значение".
outPricer = finpricer("Discount",'DiscountCurve',myRC)
outPricer = Discount with properties: DiscountCurve: [1x1 ratecurve]
Цена FixedBond
Инструмент
Используйте price
вычислить цену и чувствительность для FixedBond
инструмент.
[Price, outPR] = price(outPricer, FixB,["all"])
Price = 104.5679
outPR = priceresult with properties: Results: [1x2 table] PricerData: []
outPR.Results
ans=1×2 table
Price DV01
______ ________
104.57 0.040397
fininstrument
| finmodel
| finpricer