InflationBond инструментальный объект
Создайте и оцените InflationBond инструментальный объект для одного или нескольких инструментов Связи Инфляции с помощью этого рабочего процесса:
Использование fininstrument создать InflationBond инструментальный объект для одного или нескольких инструментов Связи Инфляции.
Используйте ratecurve задавать модель процентной ставки для InflationBond инструментальный объект.
Используйте inflationcurve чтобы задать инфляцию изгибают модель для InflationBond инструментальный объект.
Использование finpricer задавать Inflation метод ценообразования для одного или нескольких InflationBond инструменты.
Использование inflationCashflows вычислить потоки наличности для каждого InflationBond инструменты.
Для более подробной информации об этом рабочем процессе смотрите Начало работы с Рабочими процессами Используя Основанную на объектах Среду для Оценки Финансовых инструментов.
Для получения дополнительной информации о доступных моделях и методах ценообразования для InflationBond инструмент, смотрите, Выбирают Instruments, Models и Pricers.
создает InflationBond = fininstrument(InstrumentType,'CouponRate',couponrate_value,'Maturity',maturity_date)InflationBond объект для одного или нескольких инструментов Связи Инфляции путем определения InstrumentType и устанавливает свойства для необходимых аргументов пары "имя-значение" CouponRate и Maturity.
устанавливает дополнительные свойства с помощью дополнительных пар "имя-значение" в дополнение к обязательным аргументам в предыдущем синтаксисе. Например, InflationBond = fininstrument(___,Name,Value)InflationBond = fininstrument("InflationBond",'Maturity',Maturity,'CouponRate',CouponRate,'IssueDate',IssueDate) создает InflationBond опция.
InstrumentType — Инструментальный тип"InflationBond" | массив строк со значениями "InflationBond" | вектор символов со значением 'InflationBond' | массив ячеек из символьных векторов со значениями 'InflationBond'Инструментальный тип в виде строки со значением "InflationBond", вектор символов со значением 'InflationBond', NINST- 1 массив строк со значениями "InflationBond", или NINST- 1 массив ячеек из символьных векторов со значениями 'InflationBond'.
Типы данных: char | cell | string
InflationBond Аргументы в виде пар имя-значениеЗадайте требуемые и дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
InflationBond = fininstrument("InflationBond",'Maturity',Maturity,'CouponRate',CouponRate,'IssueDate',IssueDate)InflationBond Аргументы в виде пар имя-значениеCouponRate — InflationBond купонная ставкаInflationBond купонная ставка в виде разделенной запятой пары, состоящей из 'CouponRate' и скалярное десятичное число или NINST- 1 вектор из десятичных чисел для годового показателя.
Типы данных: double
Maturity — InflationBond дата погашенияInflationBond дата погашения в виде разделенной запятой пары, состоящей из 'Maturity' и скалярный datetime, последовательный номер даты, вектор символов даты, строка даты или NINST- 1 вектор из datetimes, последовательных чисел даты, массива ячеек векторов символов даты или массива строки даты.
Если вы используете векторы символов даты или строки даты, формат должен быть распознаваемым datetime потому что Maturity свойство хранится как datetime.
Типы данных: char | cell | double | string | datetime
InflationBond Аргументы в виде пар имя-значениеPeriod — Частота платежей в год
(значение по умолчанию) | скаляр, числовой со значением 0, 1, 2, 3, 4, 6, или 12 | числовой вектор со значениями 0, 1, 2, 3, 4, 6, или 12Частота платежей в виде разделенной запятой пары, состоящей из 'Period' и скалярное целое число или NINST- 1 вектор из целых чисел. Значения для Period 1, 2, 3, 4, 6, или 12.
Типы данных: double
Basis — Дневной базис количества (фактическое/фактическое) (значение по умолчанию) | скалярное целое число от 0 к 13 | вектор из целых чисел от 0 к 13Дневной базис количества в виде разделенной запятой пары, состоящей из 'Basis' и скалярное целое число или NINST- 1 вектор из целых чисел с помощью следующих значений:
0 — фактический/фактический
1 — 30/360 (СИА)
2 — фактический/360
3 — фактический/365
4 — 30/360 (PSA)
5 — 30/360 (ISDA)
6 — 30/360 (европеец)
7 — фактический/365 (японский язык)
8 — фактический/фактический (ICMA)
9 — фактический/360 (ICMA)
10 — фактический/365 (ICMA)
11 — 30/360E (ICMA)
12 — фактический/365 (ISDA)
13 — ШИНА/252
Для получения дополнительной информации смотрите Базис.
Типы данных: double
Principal — Начальная основная сумма
(значение по умолчанию) | скаляр, числовой | числовой векторНачальная основная сумма в виде разделенной запятой пары, состоящей из 'Principal' и числовой скаляр или NINST- 1 числовой вектор.
Типы данных: double
DaycountAdjustedCashFlow — Отметьте указание, настраивает ли поток наличности для базы ежедневного расчета процентовfalse
(значение по умолчанию) | скалярное логическое значение true или false | вектор из логических значений true или falseОтметьте указание, настроен ли поток наличности за день соглашение количества в виде разделенной запятой пары, состоящей из 'DaycountAdjustedCashFlow' и логический скаляр или NINST- 1 вектор из logicals со значениями true или false.
Типы данных: логический
IssueDate — Дата выпуска облигацийNaT
(значение по умолчанию) | datetime | последовательный номер даты | вектор символов даты | строка даты | вектор из datetimes | вектор из последовательных чисел даты | массив ячеек векторов символов даты | массив строки датыДата выпуска облигаций в виде разделенной запятой пары, состоящей из 'IssueDate' и скалярный datetime, последовательный номер даты, вектор символов даты, строка даты или NINST- 1 вектор из datetimes, последовательных чисел даты, массива ячеек векторов символов даты или массива строки даты.
Если вы используете векторы символов даты или строки даты, формат должен быть распознаваемым datetime потому что IssueDate свойство хранится как datetime.
Типы данных: double | char | cell | string | datetime
Lag — Задержка индексации в месяцах (значение по умолчанию) | скаляр, числовой | числовой векторЗадержка индексации в месяцах в виде разделенной запятой пары, состоящей из 'Lag' и числовой скаляр или NINST- 1 числовой вектор.
Типы данных: double
BusinessDayConvention — Соглашения рабочего дня для дат потока наличности"actual"
(значение по умолчанию) | представляет в виде строки | массив строк | вектор символов | массив ячеек из символьных векторовСоглашения рабочего дня для дат потока наличности в виде разделенной запятой пары, состоящей из 'BusinessDayConvention' и скалярная строка или вектор символов или NINST- 1 массив ячеек из символьных векторов или массив строк. Выбор для соглашения рабочего дня определяет, как обработаны нерабочие дни. Нерабочие дни заданы как выходные плюс любая другая дата, что компании не открыты (например, установленные законом праздники). Значения:
"actual" — Нерабочие дни эффективно проигнорированы. Потоки наличности, которые падают в нерабочие дни, приняты, чтобы быть распределенными в фактическую дату.
"follow" — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в следующий рабочий день.
"modifiedfollow" — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в следующий рабочий день. Однако, если следующий рабочий день находится в различном месяце, предыдущий рабочий день принят вместо этого.
"previous" — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в предыдущий рабочий день.
"modifiedprevious" — Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в предыдущий рабочий день. Однако, если предыдущий рабочий день находится в различном месяце, следующий рабочий день принят вместо этого.
Типы данных: char | cell | string
Holidays — Праздники используются в вычислении рабочих днейNaT
(значение по умолчанию) | datetimes | массив ячеек из символьных векторов | массив строки даты | последовательные числа датыПраздники, используемые в вычислении рабочих дней в виде разделенной запятой пары, состоящей из 'Holidays' и даты с помощью NINST- 1 вектор из datetimes, последовательных чисел даты, массива ячеек векторов символов даты или массива строки даты. Например:
H = holidays(datetime('today'),datetime(2025,12,15));
InflationBondObj = fininstrument("InflationBond",'CouponRate',0.34,'Maturity',datetime(2025,12,15),'Holidays',H)Типы данных: double | cell | datetime | string
EndMonthRule — Правило конца месяца отмечает для генерации дат когда Maturity дата конца месяца в течение месяца с 30 или меньшим количеством днейtrue (в действительности) (значение по умолчанию) | скалярные логические значения true или false | вектор из логических значений с true или falseПравило конца месяца отмечает для генерации дат когда Maturity дата конца месяца в течение месяца с 30 или меньшим количеством дней в виде разделенной запятой пары, состоящей из 'EndMonthRule' и скалярное логическое значение или NINST- 1 вектор из логических значений true или false.
Если вы устанавливаете EndMonthRule к false, программное обеспечение игнорирует правило, означая, что платежный день всегда является тем же числовым днем месяца.
Если вы устанавливаете EndMonthRule к true, программное обеспечение устанавливает правило о, означая, что платежный день всегда является прошлым фактическим днем месяца.
Типы данных: логический
FirstCouponDate — Неправильная первая дата купонаNaT
(значение по умолчанию) | datetime | последовательный номер даты | вектор символов даты | строка даты | вектор из datetimes | вектор из последовательных чисел даты | массив ячеек векторов символов даты | массив строки датыНеправильная первая дата купона в виде разделенной запятой пары, состоящей из 'FirstCouponDate' и скалярный datetime, последовательный номер даты, вектор символов даты, строка даты или NINST- 1 вектор из datetimes, последовательных чисел даты, массива ячеек векторов символов даты, массива строки даты или NINST- 1 вектор из datetimes, последовательных чисел даты, массива ячеек векторов символов даты или массива строки даты.
Когда FirstCouponDate и LastCouponDate оба заданы, FirstCouponDate более приоритетен в определении структуры купонного платежа. Если вы не задаете FirstCouponDate, платежные дни потока наличности определяются из других входных параметров.
Если вы используете векторы символов даты или строки даты, формат должен быть распознаваемым datetime потому что FirstCouponDate свойство хранится как datetime.
Типы данных: double | char | cell | string | datetime
LastCouponDate — Неправильная последняя дата купонаNaT
(значение по умолчанию) | datetime | последовательный номер даты | вектор символов даты | строка даты | вектор из datetimes | вектор из последовательных чисел даты | массив ячеек векторов символов даты | массив строки датыНеправильная последняя дата купона в виде разделенной запятой пары, состоящей из 'LastCouponDate' и скалярный datetime, последовательный номер даты, вектор символов даты, строка даты или NINST- 1 вектор из datetimes, последовательных чисел даты, массива ячеек векторов символов даты, массива строки даты или NINST- 1 вектор из datetimes, последовательных чисел даты, массива ячеек векторов символов даты или массива строки даты.
Если вы задаете LastCouponDate но не FirstCouponDate, LastCouponDate определяет структуру купона связи. Структура купона связи является усеченной в LastCouponDate, независимо от того, где это падает и сопровождается только датой потока наличности зрелости связи. Если вы не задаете LastCouponDate, платежные дни потока наличности определяются из других входных параметров.
Если вы используете векторы символов даты или строки даты, формат должен быть распознаваемым datetime потому что LastCouponDate свойство хранится как datetime.
Типы данных: double | char | cell | string | datetime
Name — Пользовательское имя для инструмента" "
(значение по умолчанию) | представляет в виде строки | массив строк | вектор символов | массив ячеек из символьных векторовПользовательское имя для одного из большего количества инструментов в виде разделенной запятой пары, состоящей из 'Name' и скалярная строка или вектор символов или NINST- 1 массив ячеек из символьных векторов или массив строк.
Типы данных: char | cell | string
CouponRate — InflationBond годовой показатель купонаInflationBond годовой показатель купона, возвращенный как скалярное десятичное число или NINST- 1 вектор из десятичных чисел.
Типы данных: double
Maturity — InflationBond дата погашенияInflationBond дата погашения, возвращенная как скалярный datetime или NINST- 1 вектор из datetimes.
Типы данных: datetime
Period — Частота платежей в год (значение по умолчанию) | скалярное целое число | вектор из целых чиселЧастота платежей в год, возвращенный как скалярное целое число или NINST- 1 вектор из целых чисел.
Типы данных: double
Basis — Дневной базис количества (фактическое/фактическое) (значение по умолчанию) | скалярное целое число от 0 к 13 | вектор из целых чисел от 0 к 13Дневной базис количества, возвращенный как скалярное целое число или NINST- 1 вектор из целых чисел.
Типы данных: double
Principal — Начальная основная сумма
(значение по умолчанию) | скаляр, числовой | числовой векторНачальная основная сумма, возвращенная как числовой скаляр или NINST- 1 числовой вектор.
Типы данных: double
DaycountAdjustedCashFlow — Отметьте указание, настраивает ли поток наличности для базы ежедневного расчета процентовfalse
(значение по умолчанию) | скалярное логическое значение true или false | вектор из логических значений с true или falseОтметьте указание, настраивает ли поток наличности для базы ежедневного расчета процентов, возвращенной как логический скаляр или NINST- 1 вектор из logicals со значениями true или false.
Типы данных: логический
IssueDate — Дата выпуска облигацийNaT
(значение по умолчанию) | datetime | вектор из datetimesДата выпуска облигаций, возвращенная как datetime или NINST- 1 вектор datetime.
Типы данных: datetime
Lag — Задержка индексации в месяцах (значение по умолчанию) | скаляр, числовой | числовой векторЗадержка индексации в месяцах, возвращенных как числовой скаляр или NINST- 1 числовой вектор.
Типы данных: double
BusinessDayConvention — Соглашения рабочего дня"actual"
(значение по умолчанию) | представляет в виде строки | массив строкСоглашения рабочего дня, возвращенные как скалярная строка или NINST- 1 массив строк.
Типы данных: string
Holidays — Праздники используются в вычислении рабочих днейNaT (значение по умолчанию) | datetimesПраздники используются в вычислении рабочих дней, возвращенных как NINST- 1 вектор из datetimes.
Типы данных: datetime
EndMonthRule — Правило конца месяца отмечает для генерации дат когда Maturity дата конца месяца в течение месяца с 30 или меньшим количеством днейtrue (в действительности) (значение по умолчанию) | скалярное логическое значение true или false | вектор из logicals со значением true или falseПравило конца месяца отмечает для генерации дат когда Maturity дата конца месяца в течение месяца, имея 30 или меньше дней, возвращенных как логический скаляр или NINST- 1 вектор из logicals.
Типы данных: логический
FirstCouponDate — Неправильная первая дата купонаNaT
(значение по умолчанию) | datetime | вектор из datetimesНеправильная первая дата купона, возвращенная как скалярный datetime или NINST- 1 вектор из datetimes.
Типы данных: datetime
LastCouponDate — Неправильная последняя дата купонаNaT
(значение по умолчанию) | datetime | вектор из datetimesНеправильная последняя дата купона, возвращенная как скалярный datetime или NINST- 1 вектор из datetimes.
Типы данных: datetime
Name — Пользовательское имя для инструмента" "
(значение по умолчанию) | представляет в виде строки | массив строкПользовательское имя для инструмента, возвращенного как скалярная строка или NINST- 1 массив строк.
Типы данных: string
inflationCashflows | Вычислите потоки наличности для InflationBond инструмент |
inflationcurve и калькулятор цен инфляцииЭтот пример показывает рабочий процесс, чтобы оценить InflationBond инструмент, когда вы используете inflationcurve и Inflation метод ценообразования.
Создайте ratecurve Объект
Создайте ratecurve объект с помощью ratecurve.
Settle = datetime(2021,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; ZeroCurve = ratecurve('zero',Settle,ZeroDates,ZeroRates)
ZeroCurve =
ratecurve with properties:
Type: "zero"
Compounding: -1
Basis: 0
Dates: [10x1 datetime]
Rates: [10x1 double]
Settle: 15-Jan-2021
InterpMethod: "linear"
ShortExtrapMethod: "next"
LongExtrapMethod: "previous"
Создайте inflationcurve Объект
Создайте inflationcurve объект с помощью inflationcurve.
BaseDate = datetime(2020,10,1); InflationTimes = [0 calyears([1 2 3 4 5 7 10 20 30])]'; InflationIndexValues = [100 102 103.5 105 106.8 108.2 111.3 120.1 130.4 150.2]'; InflationDates = BaseDate + InflationTimes; myInflationCurve = inflationcurve(InflationDates,InflationIndexValues)
myInflationCurve =
inflationcurve with properties:
Basis: 0
Dates: [10x1 datetime]
InflationIndexValues: [10x1 double]
ForwardInflationRates: [9x1 double]
Seasonality: [12x1 double]
Создайте InflationBond Инструментальный объект
Используйте fininstrument создать InflationBond инструментальный объект.
IssueDate = datetime(2021,1,1); Maturity = datetime(2026,1,1); CouponRate = 0.02; InflationBond = fininstrument("InflationBond", 'IssueDate', IssueDate, 'Maturity', Maturity, 'CouponRate', CouponRate,'Name',"inflation_bond_instrument")
InflationBond =
InflationBond with properties:
CouponRate: 0.0200
Period: 2
Basis: 0
Principal: 100
DaycountAdjustedCashFlow: 0
Lag: 3
BusinessDayConvention: "actual"
Holidays: NaT
EndMonthRule: 1
IssueDate: 01-Jan-2021
FirstCouponDate: NaT
LastCouponDate: NaT
Maturity: 01-Jan-2026
Name: "inflation_bond_instrument"
Создайте Inflation Объект калькулятора цен
Используйте finpricer создать Inflation объект калькулятора цен и использование ratecurve объект с 'DiscountCurve' аргумент пары "имя-значение" и inflationcurve объект с 'InflationCurve' аргумент пары "имя-значение".
outPricer = finpricer("Inflation",'DiscountCurve',ZeroCurve,'InflationCurve',myInflationCurve)
outPricer =
Inflation with properties:
DiscountCurve: [1x1 ratecurve]
InflationCurve: [1x1 inflationcurve]
Цена InflationBond Инструмент
Используйте price вычислить цену и чувствительность для InflationBond инструмент.
[Price, outPR] = price(outPricer, InflationBond)
Price = 112.1856
outPR =
priceresult with properties:
Results: [1x1 table]
PricerData: []
outPR.Results
ans=table
Price
______
112.19
inflationcurve и калькулятор цен инфляцииЭтот пример показывает рабочий процесс, чтобы оценить несколько InflationBond инструменты, когда вы используете inflationcurve и Inflation метод ценообразования.
Создайте ratecurve Объект
Создайте ratecurve объект с помощью ratecurve.
Settle = datetime(2020,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; ZeroCurve = ratecurve('zero',Settle,ZeroDates,ZeroRates)
ZeroCurve =
ratecurve with properties:
Type: "zero"
Compounding: -1
Basis: 0
Dates: [10x1 datetime]
Rates: [10x1 double]
Settle: 15-Jan-2020
InterpMethod: "linear"
ShortExtrapMethod: "next"
LongExtrapMethod: "previous"
Создайте inflationcurve Объект
Создайте inflationcurve объект с помощью inflationcurve.
BaseDate = datetime(2019,8,1); InflationTimes = [0 calyears([1 2 3 4 5 7 10 20 30])]'; InflationIndexValues = [100 102 103.5 105 106.8 108.2 111.3 120.1 130.4 150.2]'; InflationDates = BaseDate + InflationTimes; myInflationCurve = inflationcurve(InflationDates,InflationIndexValues)
myInflationCurve =
inflationcurve with properties:
Basis: 0
Dates: [10x1 datetime]
InflationIndexValues: [10x1 double]
ForwardInflationRates: [9x1 double]
Seasonality: [12x1 double]
Создайте InflationBond Инструментальный объект
Используйте fininstrument создать InflationBond инструментальный объект для трех инструментов Связи Инфляции.
IssueDate = datetime([2020,1,1 ; 2019,12,1 ; 2019,11,1]); Maturity = datetime([2026,1,1 ; 2026,2,1 ; 2026,3,1]); CouponRate = 0.02; InflationBond = fininstrument("InflationBond", 'IssueDate', IssueDate, 'Maturity', Maturity, 'CouponRate', CouponRate,'Name',"inflation_bond_instrument")
InflationBond=3×1 object
3x1 InflationBond array with properties:
CouponRate
Period
Basis
Principal
DaycountAdjustedCashFlow
Lag
BusinessDayConvention
Holidays
EndMonthRule
IssueDate
FirstCouponDate
LastCouponDate
Maturity
Name
Создайте Inflation Объект калькулятора цен
Используйте finpricer создать Inflation объект калькулятора цен и использование ratecurve объект с 'DiscountCurve' аргумент пары "имя-значение" и inflationcurve объект с 'InflationCurve' аргумент пары "имя-значение".
outPricer = finpricer("Inflation",'DiscountCurve',ZeroCurve,'InflationCurve',myInflationCurve)
outPricer =
Inflation with properties:
DiscountCurve: [1x1 ratecurve]
InflationCurve: [1x1 inflationcurve]
Цена InflationBond Инструменты
Используйте price вычислить цены и чувствительность для InflationBond инструменты.
[Price, outPR] = price(outPricer, InflationBond)
Price = 3×1
112.8769
113.1022
113.3434
outPR=1×3 object
1x3 priceresult array with properties:
Results
PricerData
outPR.Results
ans=table
Price
______
112.88
ans=table
Price
_____
113.1
ans=table
Price
______
113.34
inflation-indexed bond является безопасностью, которая гарантирует возврат выше, чем уровень инфляции, если это будет сохранено к зрелости. Индексированные инфляцией ценные бумаги соединяют свой прирост капитала или купонные платежи, к уровню инфляции
Чтобы оценить индексированную инфляцией связь, используйте кривую инфляции и номинальную дисконтную кривую (подход без моделей), где потоки наличности обесценены с помощью номинальной дисконтной кривой.
где
P n является номинальной ценой облигации с нулевым купоном.
P r является действительной ценой облигации с нулевым купоном.
k является фиксированным уровнем инфляции.
I (0, T) является сбалансированным индексом инфляции в течение периода (0, T).
I (0) является индексом инфляции в (t = 0).
I (T 0) является основным индексом инфляции в дате выпуска (t = T 0).
B TIPS (0, T M) является индексированной инфляцией ценой облигаций.
I (T i-1) является индексом инфляции в дате начала с некоторой задержкой (например, тремя месяцами).
C является купоном.
F является номинальной стоимостью.
[1] Броуди, D. C. Кросби, J. и Литий, H. "Корректировки выпуклости в Соединенных с инфляцией Производных". Рискните Журналом. Ноябрь 2008, стр 124–129.
[2] Kerkhof, J. "Объясненные производные инфляции: рынки, продукты и оценка". Количественный анализ фиксированного дохода, Lehman Brothers, июль 2005.
[3] Чжан, J. X. "Идей Оценки Подкачки Ограниченной индексации цен (LPI)". Журнал Wilmott. № 57, январь 2012, стр 58–69.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.