FloatBond
инструментальный объект
Создайте и оцените FloatBond
инструментальный объект, использующий этот рабочий процесс:
Используйте fininstrument
создать FloatBond
инструментальный объект.
Используйте ratecurve
задавать модель кривой для FloatBond
инструмент.
Используйте finpricer
задавать Discount
метод ценообразования для FloatBond
инструмент.
Для получения дополнительной информации об этом рабочем процессе смотрите Начало работы с Рабочими процессами Используя Основанную на объектах Среду для Оценки Финансовых инструментов.
Для получения дополнительной информации о доступных моделях и методах ценообразования для FloatBond
инструмент, смотрите, Выбирают Instruments, Models и Pricers.
создает FloatBondObj
= fininstrument(InstrumentType
,'Spread
',spread_value,'Maturity
',maturity_date)FloatBond
объект путем определения InstrumentType
и устанавливает свойства для необходимых аргументов пары "имя-значение" Spread
и Maturity
.
FloatBond
инструмент поддерживает долговое обязательство с плавающей ставкой ванили и долговое обязательство с плавающей ставкой амортизации. Для получения дополнительной информации смотрите Долговое обязательство с плавающей ставкой.
устанавливает дополнительные свойства с помощью дополнительных пар "имя-значение" в дополнение к обязательным аргументам в предыдущем синтаксисе. Например, FloatBondObj
= fininstrument(___,Name,Value
)FloatBondObj = fininstrument("FloatBond",'Spread',0.6,'Maturity',datetime(2019,1,30),'Basis',1,'Principal',100,'FirstCouponDate',datetime(2016,1,30),'EndMonthRule',true,'Name',"float_bond_instrument")
создает FloatBond
инструмент с распространением 0,6 и зрелость от 30 января 2019. Можно задать несколько аргументов пары "имя-значение".
InstrumentType
— Инструментальный тип"FloatBond"
| вектор символов со значением 'FloatBond'
Инструментальный тип в виде строки со значением "FloatBond"
или вектор символов со значением 'FloatBond'
.
Типы данных: char |
string
FloatBond
Аргументы в виде пар имя-значениеЗадайте требуемые и дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
FloatBondObj = fininstrument("FloatBond",'Spread',0.6,'Maturity',datetime(2019,1,30),'Basis',1,'Principal',100,'FirstCouponDate',datetime(2016,1,30),'EndMonthRule',true,'Name',"float_bond_instrument")
FloatBond
Аргументы в виде пар имя-значение'Spread'
— Десятичное значение по ссылочному уровнюДесятичное значение по ссылочному уровню в виде разделенной запятой пары, состоящей из 'Spread'
и скалярное неотрицательное десятичное число.
Типы данных: double
'Maturity'
— Дата погашенияДата погашения в виде разделенной запятой пары, состоящей из 'Maturity'
и скалярный datetime, последовательный номер даты, вектор символов даты или строка даты.
Если вы используете вектор символов даты или строку даты, формат должен быть распознаваемым datetime
потому что Maturity
свойство хранится как datetime.
Типы данных: char |
double
| string
| datetime
FloatBond
Аргументы в виде пар имя-значение'Reset'
— Частота платежей в год
(значение по умолчанию) | целое числоЧастота платежей в год в виде разделенной запятой пары, состоящей из 'Reset'
и скалярное целое число. Значения для Reset
: 1
, 2, 3
, 4
, 6
, или
12
.
Типы данных: double
'Basis'
— Дневное основание количества
(фактическое/фактическое) (значение по умолчанию) | целое число от 0
к 13
Дневное основание количества в виде разделенной запятой пары, состоящей из 'Basis'
и скалярное целое число с помощью одного из следующих значений:
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'
и числовой скаляр или расписание.
Principal
принимает timetable
, где первый столбец является датами, и второй столбец является связанным отвлеченным основным значением. Дата указывает в последний день, что основное значение допустимо.
Типы данных: double |
timetable
'ProjectionCurve'
— Кривая уровня для проектирования плавающих потоков наличностиratecurve.empty
(значение по умолчанию) | ratecurve
объектКривая уровня для проектирования плавающих потоков наличности в виде разделенной запятой пары, состоящей из 'ProjectionCurve'
и ratecurve
объект. Необходимо создать этот объект с помощью ratecurve
.
Типы данных: object
'ResetOffset'
— Отстаньте в установлении норм
(значение по умолчанию) | числовойОтстаньте в установлении норм в виде разделенной запятой пары, состоящей из 'ResetOffset'
и числовой скаляр.
Типы данных: double
'LatestFloatingRate'
— Последний плавающий курс[]
(значение по умолчанию) | десятичное числоПоследний плавающий курс для FloatBond
объект в виде разделенной запятой пары, состоящей из 'LatestFloatingRate'
и скалярное десятичное число.
Типы данных: double
'DaycountAdjustedCashFlow'
— Отметьте, чтобы настроить потоки наличности на основе фактического дневного количества периодаfalse
(значение по умолчанию) | значение true
или false
Отметьте, чтобы настроить потоки наличности на основе фактического дневного количества периода в виде разделенной запятой пары, состоящей из 'DaycountAdjustedCashFlow'
и скаляр, логический со значением true
или false
.
Типы данных: логический
'BusinessDayConvention'
— Соглашения рабочего дня"actual"
(значение по умолчанию) | представляет в виде строки | вектор символовСоглашения рабочего дня в виде разделенной запятой пары, состоящей из 'BusinessDayConvention'
и скалярная строка или вектор символов. Выбор для соглашения рабочего дня определяет, как обработаны нерабочие дни. Нерабочие дни заданы как выходные плюс любая другая дата, что компании не открыты (например, установленные законом праздники). Значения:
"actual"
— Нерабочие дни эффективно проигнорированы. Потоки наличности, которые падают в нерабочие дни, приняты, чтобы быть распределенными в фактическую дату.
"follow"
— Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в следующий рабочий день.
"modifiedfollow"
— Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в следующий рабочий день. Однако, если следующий рабочий день находится в различном месяце, предыдущий рабочий день принят вместо этого.
"previous"
— Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в предыдущий рабочий день.
"modifiedprevious"
— Потоки наличности, которые падают в нерабочий день, приняты, чтобы быть распределенными в предыдущий рабочий день. Однако, если предыдущий рабочий день находится в различном месяце, следующий рабочий день принят вместо этого.
Типы данных: char |
string
'Holidays'
— Праздники используются в вычислении рабочих днейNaT
(значение по умолчанию) | datetime | массив ячеек векторов символов даты | массив строки даты | последовательные числа датыПраздники, используемые в вычислении рабочих дней в виде разделенной запятой пары, состоящей из 'Holidays'
и даты с помощью datetimes, последовательные числа даты, массив ячеек векторов символов даты или массив строки даты. Например:
H = holidays(datetime('today'),datetime(2025,12,15)); FloatBondObj = fininstrument("floatbond",'Spread',100,'Maturity',datetime(2025,12,15),'Holidays',H)
Типы данных: double |
cell
| datetime
| string
'EndMonthRule'
— Правило конца месяца отмечает для генерации дат когда Maturity
дата конца месяца в течение месяца с 30 или меньшим количеством днейtrue
(в действительности) (значение по умолчанию) | логический true
или false
Правило конца месяца отмечает для генерации дат когда Maturity
дата конца месяца в течение месяца с 30 или меньшим количеством дней в виде разделенной запятой пары, состоящей из 'EndMonthRule'
и скалярное логическое значение true
или false
.
Если вы устанавливаете EndMonthRule
к false
, программное обеспечение игнорирует правило, означая, что платежный день всегда является тем же числовым днем месяца.
Если вы устанавливаете EndMonthRule
к true
, программное обеспечение устанавливает правило о, означая, что платежный день всегда является прошлым фактическим днем месяца.
Типы данных: логический
'IssueDate'
— Дата выпуска облигацийNaT
(значение по умолчанию) | datetime | последовательный номер даты | вектор символов даты | строка датыДата выпуска облигаций в виде разделенной запятой пары, состоящей из 'IssueDate'
и скалярный datetime, последовательный номер даты, вектор символов даты или строка даты.
Если вы используете вектор символов даты или строку даты, формат должен быть распознаваемым datetime
потому что IssueDate
свойство хранится как datetime.
Типы данных: double |
char
| string
| datetime
'FirstCouponDate'
— Неправильная первая дата купонаNaT
(значение по умолчанию) | datetime | последовательный номер даты | вектор символов даты | строка датыНеправильная первая дата купона в виде разделенной запятой пары, состоящей из 'FirstCouponDate'
и скалярный datetime, последовательный номер даты, вектор символов даты или строка даты.
Когда FirstCouponDate
и LastCouponDate
оба заданы, FirstCouponDate
более приоритетен в определении структуры купонного платежа. Если вы не задаете FirstCouponDate
, платежные дни потока наличности определяются из других входных параметров.
Если вы используете вектор символов даты или строку даты, формат должен быть распознаваемым datetime
потому что FirstCouponDate
свойство хранится как datetime.
Типы данных: double |
char
| string
| datetime
'LastCouponDate'
— Неправильная последняя дата купонаNaT
(значение по умолчанию) | datetime | последовательный номер даты | вектор символов даты | строка датыНеправильная последняя дата купона в виде разделенной запятой пары, состоящей из 'LastCouponDate'
и скалярный datetime, последовательный номер даты, вектор символов даты или строка даты.
Если вы задаете LastCouponDate
но не FirstCouponDate
, LastCouponDate
определяет структуру купона связи. Структура купона связи является усеченной в LastCouponDate
, независимо от того, где это падает и сопровождается только датой потока наличности зрелости связи. Если вы не задаете LastCouponDate
, платежные дни потока наличности определяются из других входных параметров.
Если вы используете вектор символов даты или строку даты, формат должен быть распознаваемым datetime
потому что LastCouponDate
свойство хранится как datetime.
Типы данных: double |
char
| string
| datetime
'StartDate'
— Передайте срок начала работы платежейNaT
(значение по умолчанию) | datetime | последовательный номер даты | вектор символов | строка датыПередайте срок начала работы платежей в виде разделенной запятой пары, состоящей из 'StartDate'
и скалярный datetime, последовательный номер даты, вектор символов или строка даты.
Если вы используете вектор символов даты или строку даты, формат должен быть распознаваемым datetime
потому что StartDate
свойство хранится как datetime.
Типы данных: char |
double
| string
| datetime
'Name'
— Пользовательское имя для инструмента" "
(значение по умолчанию) | представляет в виде строки | вектор символовПользовательское имя для инструмента в виде разделенной запятой пары, состоящей из 'Name'
и скалярная строка или вектор символов.
Типы данных: char |
string
Spread
— Количество пунктов по ссылочному уровнюКоличество пунктов по ссылочному уровню, возвращенному как скаляр, неотрицательный числовой.
Типы данных: double
Maturity
— Дата погашенияДата погашения, возвращенная как datetime.
Типы данных: datetime
Reset
— Частота оплаты в год
(значение по умолчанию) | целое числоКупоны в год, возвращенный как скалярное целое число.
Типы данных: double
Basis
— Дневное основание количества
(фактическое/фактическое) (значение по умолчанию) | целое число от 0
к 13
Дневное основание количества, возвращенное как скалярное целое число.
Типы данных: double
Principal
— Отвлеченная основная сумма или основные расписания значения
(значение по умолчанию) | скаляр, числовой | расписаниеОтвлеченная основная сумма или основные расписания значения, возвращенные как числовой скаляр или расписание.
Типы данных: timetable
| double
ProjectionCurve
— Кривая уровня используется в генерации будущих потоков наличностиratecurve.empty
(значение по умолчанию) | ratecurve
объектКривая уровня, которая будет использоваться в проектировании будущих потоков наличности, возвращенных как ratecurve
объект.
Типы данных: object
ResetOffset
— Отстаньте в установлении норм
(значение по умолчанию) | числовойОтстаньте в установлении норм, возвращенном как числовой скаляр.
Типы данных: double
LatestFloatingRate
— Последний плавающий курс для FloatBond
[ ]
(значение по умолчанию) | десятичное числоПоследний плавающий курс для FloatBond
, возвращенный как скалярное десятичное число.
Типы данных: double
DaycountAdjustedCashFlow
— Отметьте, чтобы настроить потоки наличности на основе фактического дневного количества периодаfalse
(значение по умолчанию) | значение true
или false
Отметьте, чтобы настроить потоки наличности на основе фактического дневного количества периода, возвращенного как скаляр, логический со значением true
или false
.
Типы данных: логический
BusinessDayConvention
— Соглашения рабочего дня"actual"
(значение по умолчанию) | строкаСоглашения рабочего дня, возвращенные как строка
Типы данных: string
Holidays
— Праздники используются в вычислении рабочих днейNaT
(значение по умолчанию) | datetimeПраздники используются в вычислении рабочих дней, возвращенных как datetimes.
Типы данных: datetime
EndMonthRule
— Правило конца месяца отмечает для генерации дат когда Maturity
дата конца месяца в течение месяца с 30 или меньшим количеством днейtrue
(в действительности) (значение по умолчанию) | логический со значением true
или false
Правило конца месяца отмечает для генерации дат когда Maturity
дата конца месяца в течение месяца с 30 или меньшим количеством дней, возвращенных как логический скаляр.
Типы данных: логический
IssueDate
— Дата выпуска облигацийNaT
(значение по умолчанию) | datetimeДата выпуска облигаций, возвращенная как datetime.
Типы данных: datetime
FirstCouponDate
— Неправильная первая дата купонаNaT
(значение по умолчанию) | datetimeНеправильная первая дата купона, возвращенная как datetime.
Типы данных: datetime
LastCouponDate
— Неправильная последняя дата купонаNaT
(значение по умолчанию) | datetimeНеправильная последняя дата купона, возвращенная как datetime.
Типы данных: datetime
StartDate
— Передайте срок начала работы платежейNaT
(значение по умолчанию) | datetimeПередайте срок начала работы платежей, возвращенных как datetime.
Типы данных: datetime
Name
— Пользовательское имя для инструмента" "
(значение по умолчанию) | строкаПользовательское имя для инструмента, возвращенного как строка.
Типы данных: string
cashflows | Вычисляет поток наличности для FixedBond , FloatBond подкачка , FRA подкачка , или Deposit инструмент |
ratecurve
и обесценьте калькулятор ценЭтот пример показывает рабочий процесс, чтобы оценить ваниль FloatBond
инструмент, когда вы используете ratecurve
и Discount
метод ценообразования.
Создайте FloatBond
Инструментальный объект
Используйте fininstrument
создать ваниль FloatBond
инструментальный объект.
FloatB = fininstrument("FloatBond",'Maturity',datetime(2022,9,15),'Spread',0.025,'Reset',2,'Basis',1,'Principal',100,'FirstCouponDate',datetime(2020,1,15),'EndMonthRule',false,'Name',"float_bond_instrument")
FloatB = FloatBond with properties: Spread: 0.0250 ProjectionCurve: [0x0 ratecurve] ResetOffset: 0 Reset: 2 Basis: 1 EndMonthRule: 0 Principal: 100 DaycountAdjustedCashFlow: 0 BusinessDayConvention: "actual" LatestFloatingRate: NaN Holidays: NaT IssueDate: NaT FirstCouponDate: 15-Jan-2020 LastCouponDate: NaT StartDate: NaT Maturity: 15-Sep-2022 Name: "float_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]
Цена FloatBond
Инструмент
Используйте price
вычислить цену и чувствительность для ванили FloatBond
инструмент.
[Price, outPR] = price(outPricer, FloatB,["all"])
Price = 107.2834
outPR = priceresult with properties: Results: [1x2 table] PricerData: []
outPR.Results
ans=1×2 table
Price DV01
______ ________
107.28 0.025955
ratecurve
и обесценьте калькулятор ценЭтот пример показывает рабочий процесс, чтобы оценить амортизацию FloatBond
инструмент, когда вы используете ratecurve
и Discount
метод ценообразования.
Создайте ratecurve
Объект
Создайте ratecurve
объект с помощью ratecurve
.
Settle = datetime(2018,1,1); ZeroTimes = calyears(1:10)'; ZeroRates = [0.0052 0.0055 0.0061 0.0073 0.0094 0.0119 0.0168 0.0222 0.0293 0.0307]'; ZeroDates = Settle + ZeroTimes; Compounding = 1; ZeroCurve = ratecurve("zero",Settle,ZeroDates,ZeroRates, "Compounding",Compounding);
Создайте FloatBond
Инструментальный объект
Используйте fininstrument
создать амортизацию FloatdBond
инструментальный объект.
Maturity = datetime(2024,1,1); Spread = 0.02; Reset = 1; ADates = datetime([2020,1,1 ; 2024,1,1]); APrincipal = [100; 80]; Principal = timetable(ADates,APrincipal); Floatamort = fininstrument("FloatBond",'Maturity',Maturity,'Spread',Spread,'Reset',Reset,'ProjectionCurve',ZeroCurve,'Principal',Principal)
Floatamort = FloatBond with properties: Spread: 0.0200 ProjectionCurve: [1x1 ratecurve] ResetOffset: 0 Reset: 1 Basis: 0 EndMonthRule: 1 Principal: [2x1 timetable] DaycountAdjustedCashFlow: 0 BusinessDayConvention: "actual" LatestFloatingRate: NaN Holidays: NaT IssueDate: NaT FirstCouponDate: NaT LastCouponDate: NaT StartDate: NaT Maturity: 01-Jan-2024 Name: ""
Создайте Discount
Объект калькулятора цен
Используйте finpricer
создать Discount
объект калькулятора цен и использование ratecurve
объект с 'DiscountCurve'
аргумент пары "имя-значение".
outPricer = finpricer("Discount",'DiscountCurve',ZeroCurve)
outPricer = Discount with properties: DiscountCurve: [1x1 ratecurve]
Цена FloatBond
Инструмент
Используйте price
вычислить цену и чувствительность для ванили FloatBond
инструмент.
[Price, outPR] = price(outPricer,Floatamort,["all"])
Price = 110.1101
outPR = priceresult with properties: Results: [1x2 table] PricerData: []
outPR.Results
ans=1×2 table
Price DV01
______ ________
110.11 0.028613
floating-rate note является безопасностью как связь, но процентная ставка примечания периодически сбрасывается, относительно уровня справочного указателя, чтобы отразить колебания рыночных процентных ставок.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.