IRDataCurve и IRFunctionCurve объекты для процентной ставки изгибают преобразование поддержки в:
RateSpec структура. RateSpec сгенерированный от IRDataCurve или IRFunctionCurve объект, с помощью toRateSpec метод, идентично RateSpec структура создается с intenvset использование программного обеспечения Financial Instruments Toolbox™.
Вектор дат и данных из IRDataCurve возразите приемлемый для prbyzero, bkcall, bkput, tfutbyprice, и tfutbyyield или любая функция, которая требует структуры термина процентных ставок.
Преобразовывать IRDataCurve или IRFunctionCurve возразите против RateSpec структура, необходимо сначала создать объект кривой процентной ставки. Затем используйте toRateSpec метод для IRDataCurve объект или thetoRateSpec метод для IRFunctionCurve объект.
Создайте вектор данных из следующих данных: https://www.ustreas.gov/offices/domestic-finance/debt-management/:
interest-rate/yield.shtml
Data = [1.85 1.84 1.91 2.09 2.47 2.71 3.12 3.43 3.85 4.57 4.58]/100; Dates = daysadd(today,[30 90 180 360 2*360 3*360 5*360 7*360 10*360 20*360 30*360],2); scatter(Dates,Data) datetick

Создайте IRDataCurve объект кривой процентной ставки:
rr = IRDataCurve('Zero',today,Dates,Data);Преобразуйте в RateSpec:
toRateSpec(rr, today+30:30:today+365)
ans =
FinObj: 'RateSpec'
Compounding: 2
Disc: [12x1 double]
Rates: [12x1 double]
EndTimes: [12x1 double]
StartTimes: [12x1 double]
EndDates: [12x1 double]
StartDates: 733569
ValuationDate: 733569
Basis: 0
EndMonthRule: 1Можно использовать getZeroRates метод для IRDataCurve объект с Dates свойство создать вектор дат и данных, приемлемых для prbyzero в программном обеспечении Financial Toolbox™ и bkcall, bkput, tfutbyprice, и tfutbyyield в программном обеспечении Financial Instruments Toolbox.
Это - пример использования IRDataCurve метод getZeroRates с prbyzero:
Data = [2.09 2.47 2.71 3.12 3.43 3.85 4.57 4.58]/100; Dates = daysadd(today,[360 2*360 3*360 5*360 7*360 10*360 20*360 30*360],1); irdc = IRDataCurve('Zero',today,Dates,Data,'InterpMethod','pchip'); Maturity = daysadd(today,8*360,1); CouponRate = .055; ZeroDates = daysadd(today,180:180:8*360,1); ZeroRates = getZeroRates(irdc, ZeroDates); BondPrice = prbyzero([Maturity CouponRate], today, ZeroRates, ZeroDates)
BondPrice = 113.9250
IRBootstrapOptions | IRDataCurve | IRFitOptions | IRFunctionCurve