FloatBond
объект прибора
Создайте и оцените FloatBond
объект инструмента, использующий этот рабочий процесс:
Использовать fininstrument
для создания FloatBond
объект прибора.
Использование ratecurve
для задания модели кривой для FloatBond
прибора.
Использовать finpricer
для задания Discount
метод ценообразования для FloatBond
прибора.
Дополнительные сведения об этом рабочем процессе см. в разделе Запуске с рабочими процессами с использованием объектной среды для ценообразования финансовых инструментов.
Для получения дополнительной информации о доступных моделях и методах ценообразования для FloatBond
инструмент, см. «Выбор инструментов», «Модели» и «Цены».
создает FloatBondObj
= fininstrument(InstrumentType
,'Spread
',spread_value,'Maturity
',maturity_date)FloatBond
объект путем определения InstrumentType
и устанавливает свойства для необходимых аргументов пары "имя-значение" Spread
и Maturity
.
The 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'
- Периодичность платежей в год2
(по умолчанию) | целое числоЧастота платежей в год, заданная как разделенная разделенными запятой парами, состоящая из 'Reset'
и скалярное целое число. Значения для Reset
являются: 1
, 2
, 3
, 4
, 6
, или 12
.
Типы данных: double
'Basis'
- базис подсчета дней [0 0]
(фактический/фактический) (по умолчанию) | целое число от 0
на 13
Базис отсчета дней, заданный как разделенная разделенными запятой парами, состоящая из 'Basis'
и скаляр целое число с использованием одного из следующих значений:
0 - факт/факт
1 - 30/360 (SIA)
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 - BUS/252
Для получения дополнительной информации см. раздел Базиса.
Типы данных: double
'Principal'
- Основная сумма или график основного значения100
(по умолчанию) | скалярное число | расписаниеУсловная сумма основной суммы или график основного значения, заданный как разделенная разделенными запятой парами, состоящая из 'Principal'
и скаляр число или расписание.
Principal
принимает timetable
, где первый столбец является датами, а второй - связанным условным основным значением. Дата указывает на последний день действия основного значения.
Типы данных: double
| timetable
'ProjectionCurve'
- Кривая ставки для прогнозирования плавающих денежных потоковratecurve.empty
(по умолчанию) | ratecurve
объектКривая ставки для прогнозирования плавающих денежных потоков, заданная как разделенная разделенными запятой парами, состоящая из 'ProjectionCurve'
и a ratecurve
объект. Вы должны создать этот объект используя ratecurve
.
Типы данных: object
'ResetOffset'
- Задержка в настройке скорости0
(по умолчанию) | числоЗадержка в настройке скорости, заданная как разделенная разделенными запятой парами, состоящая из 'ResetOffset'
и скалярным числом.
Типы данных: double
'LatestFloatingRate'
- Последняя плавающая ставка[]
(по умолчанию) | десятичным числомПоследняя плавающая ставка для FloatBond
объект, заданный как разделенная разделенными запятой парами, состоящая из 'LatestFloatingRate'
и скалярным десятичным числом.
Типы данных: double
'DaycountAdjustedCashFlow'
- Флаг для корректировки денежных потоков на основе фактического количества дней периодаfalse
(по умолчанию) | значение true
или false
Флаг для корректировки денежных потоков на основе фактического количества дней периода, заданный как разделенная разделенными запятой парами, состоящая из 'DaycountAdjustedCashFlow'
и скаляр логический со значением true
или false
.
Типы данных: logical
'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
программное обеспечение устанавливает правило, означающее, что дата платежа всегда является последним фактическим днем месяца.
Типы данных: logical
'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
- Периодичность платежей в год1
(по умолчанию) | целое числоКупоны в год, возвращаются в виде скалярного целого числа.
Типы данных: double
Basis
- базис подсчета дней 0
(фактический/фактический) (по умолчанию) | целое число от 0
на 13
Базис отсчета дней, возвращенный как скалярное целое число.
Типы данных: double
Principal
- Условные графики основной суммы или основного значения100
(по умолчанию) | скалярное число | расписаниеУсловная основная сумма или расписания основных значений, возвращенные в виде скалярного числа или расписания.
Типы данных: timetable
| double
ProjectionCurve
- Кривая ставок, используемая при генерации будущих денежных потоковratecurve.empty
(по умолчанию) | ratecurve
объектКривая ставки для использования при прогнозировании будущих денежных потоков, возвращаемая как ratecurve
объект.
Типы данных: object
ResetOffset
- Задержка в настройке скорости0
(по умолчанию) | числоЗадержка в настройке скорости, возвращенная в виде скалярного числа.
Типы данных: double
LatestFloatingRate
- Последняя плавающая ставка для FloatBond
[ ]
(по умолчанию) | десятичным числомПоследняя плавающая ставка для FloatBond
, возвращенный как скалярный десятичный.
Типы данных: double
DaycountAdjustedCashFlow
- Флаг для корректировки денежных потоков на основе фактического количества дней периодаfalse
(по умолчанию) | значение true
или false
Флаг для корректировки денежных потоков на основе фактического количества дней периода, возвращаемый как скалярный логический со значением true
или false
.
Типы данных: logical
BusinessDayConvention
- Договоры о рабочих днях"actual"
(по умолчанию) | строкуСоглашения о рабочих днях, возвращенные как строка
Типы данных: string
Holidays
- Праздничные дни, используемые в рабочих дняхNaT
(по умолчанию) | datetimeПраздничные дни, используемые в вычислении рабочих дней, возвращенные как datetimes.
Типы данных: datetime
EndMonthRule
- Флаг правила конца месяца для генерации дат при Maturity
является датой конца месяца для месяца с 30 или менее днейtrue
(в действии) (по умолчанию) | логическим со значением true
или false
Флаг правила конца месяца для генерации дат при Maturity
- дата конца месяца для месяца с 30 или менее дней, возвращаемая как скаляр логическая.
Типы данных: logical
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 , Swap , FRA , или Deposit инструмент |
ratecurve
и Скидка ЦенаЭтот пример показывает рабочий процесс, чтобы оценить ваниль FloatBond
инструмент, когда вы используете ratecurve
и a Discount
метод ценообразования.
Создание FloatBond
Объект прибора
Использование fininstrument
создать ванильную FloatBond
объект прибора.
FloatB = fininstrument("FloatBond",'Maturity',datetime(2022,9,15),'Spread',0.025,'Reset',2,'Basis',1,'Principal',100,'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: NaT 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
и используйте объект pricer ratecurve
объект для 'DiscountCurve'
аргумент пары "имя-значение".
outPricer = finpricer("Discount",'DiscountCurve',myRC)
outPricer = Discount with properties: DiscountCurve: [1x1 ratecurve]
Ценовые FloatBond
Инструмент
Использование price
вычислить цену и чувствительность для ванильного FloatBond
прибора.
[Price, outPR] = price(outPricer, FloatB,["all"])
Price = 109.8322
outPR = priceresult with properties: Results: [1x2 table] PricerData: []
outPR.Results
ans=1×2 table
Price DV01
______ ________
109.83 0.021976
ratecurve
и Скидка ЦенаЭтот пример показывает рабочий процесс для оценки амортизации FloatBond
инструмент, когда вы используете ratecurve
и a 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
и используйте объект pricer 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.