Оцените финансовый инструмент с кривой нулевой ширины. Такой инструмент не имеет никаких встроенных возможностей, другими словами, потоки наличности детерминированы и оценивают, инструмент является просто вопросом генерации потоков наличности и затем вычисления приведенной стоимости потоков наличности путем генерации соответствующих коэффициентов дисконтирования от кривой нулевой ширины. Для получения дополнительной информации о поддерживаемых инструментах процентной ставки смотрите, Выбирают 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