Дисконтная маржа для облигации с плавающей ставкой
вычисляет маржу дисконтирования или нулевую маржу дисконтирования для облигации с плавающей ставкой.Margin = floatdiscmargin(Price,SpreadSettle,Maturity,RateInfo,LatestFloatingRate)
Область входа RateInfo определяет, рассчитывается ли маржа скидки или нулевая маржа скидки. Основные расписания поддерживаются с помощью Principal.
добавляет необязательные аргументы пары "имя-значение". Margin = floatdiscmargin(___,Name,Value)
Использование floatdiscmargin для вычисления маржи дисконтирования и нулевой маржи дисконтирования для примечания с плавающей ставкой.
Задайте данные для примечания с плавающей скоростью.
Price = 99.99; Spread = 50; Settle = '20-Jan-2011'; Maturity = '15-Jan-2012'; LatestFloatingRate = 0.05; StubRate = 0.049; SpotRate = 0.05; Reset = 4; Basis = 2;
Вычислите маржу скидки.
dMargin = floatdiscmargin(Price, Spread, Settle, Maturity, ... [StubRate, SpotRate], LatestFloatingRate,'Reset', Reset, 'Basis', Basis, ... 'AdjustCashFlowsBasis', true)
dMargin = 48.4810
Обычно вы хотите задать AdjustCashFlowsBasis на trueтаким образом, денежные потоки рассчитываются с учетом сумм начислений.
Создайте годовую структуру нулевой ставки для вычисления нулевой маржи дисконтирования.
Rates = [0.0500;
0.0505;
0.0510;
0.0520];
StartDates = ['20-Jan-2011';
'15-Apr-2011';
'15-Jul-2011';
'15-Oct-2011'];
EndDates = ['15-Apr-2011';
'15-Jul-2011';
'15-Oct-2011';
'15-Jan-2012'];
ValuationDate = '20-Jan-2011';
RateSpec = intenvset('Compounding', Reset, 'Rates', Rates,...
'StartDates', StartDates, 'EndDates', EndDates,...
'ValuationDate', ValuationDate, 'Basis', Basis);Рассчитать нулевую маржу скидки можно используя предыдущую кривую выражения.
dMargin = floatdiscmargin(Price, Spread, Settle, Maturity, ... RateSpec, LatestFloatingRate,'Reset', Reset, 'Basis', Basis, ... 'AdjustCashFlowsBasis', true)
dMargin = 46.0688
Использование floatdiscmargin для вычисления маржи дисконтирования и нулевой маржи дисконтирования для примечания с плавающей ставкой с помощью datetime входы.
Price = 99.99; Spread = 50; Settle = '20-Jan-2011'; Maturity = '15-Jan-2012'; LatestFloatingRate = 0.05; StubRate = 0.049; SpotRate = 0.05; Reset = 4; Basis = 2; Settle = datetime(Settle,'Locale','en_US'); Maturity = datetime(Maturity,'Locale','en_US'); dMargin = floatdiscmargin(Price, Spread, Settle, Maturity, ... [StubRate, SpotRate], LatestFloatingRate,'Reset', Reset, 'Basis', Basis, ... 'AdjustCashFlowsBasis', true)
dMargin = 48.4810
Price - Цены облигаций, в которых должна быть рассчитана маржа дисконтированияЦены облигаций, в которых должна быть рассчитана маржа дисконтирования, заданные как NINST-by- 1 матрица.
Примечание
Спред вычисляется по чистой цене (функция внутренне не добавляет начисленные проценты к цене, заданной Price вход). Если спред требуется против грязной цены, цены облигации, которая включает начисленные проценты, вы должны поставить грязную цену для Price вход.
Типы данных: double
Spread - Количество базисных точек над базисной ставкойКоличество базисных точек над скоростью ссылки, заданное как NINST-by- 1 матрица.
Типы данных: double
Settle - Дата расчета облигаций с плавающей ставкойДата расчета облигаций с плавающей ставкой, заданная как серийный номер даты, вектор символов даты или массив datetime. Если поставляется как NINST-by- 1 вектор дат, все даты расчета должны быть одинаковыми (поддерживается только одна дата расчета)
Типы данных: double | char | datetime
Maturity - Дата погашения облигации с плавающей ставкойДата погашения облигации с плавающей ставкой, заданная как серийный номер даты, вектор символов даты или массив datetime.
Типы данных: double | char | datetime
RateInfo - Информация о процентной ставкеинформация о процентной ставке, заданная как NINST-by- 2 вектор, где:
Первый столбец - это ставка заглушки между датой расчета и первой ставкой купона.
Второй столбец - это ставка ссылки для срока действия плавающих купонов (для примера - 3-месячный LIBOR с даты расчета для облигации с Reset от 4).
Примечание
Если на RateInfo аргумент является ежегодной структурой нулевой скорости, созданной intenvset (Financial Instruments Toolbox), вычисляется нулевая скидочная маржа.
Типы данных: double
LatestFloatingRate - Курс для следующего плавающего платежа, установленного на последнюю дату сбросаСтавка для следующего плавающего платежа, установленного на последнюю дату сброса, заданная как NINST-by- 1 вектор.
Типы данных: double
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
Margin = floatdiscmargin(Price,Spread,Settle,Maturity,RateInfo,LatestFloatingRate,'Reset',2,'Basis',5)'Reset' - Периодичность платежей в год1 (по умолчанию) | числоЧастота платежей в год, указанная как NINST-by- 1 вектор.
Типы данных: double
'Basis' - Базис подсчета дней, используемый для вычисления временных коэффициентов0 (фактический/фактический) (по умолчанию) | целыми числами набора [0...13] | вектор целых чисел множества [0...13]Базис отсчета дней, используемый для вычислений временного фактора, задается как NINST-by- 1 вектор. Значения:
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 (по умолчанию) | числоУсловные основные суммы, указанные как NINST-by- 1 вектор или NINST-by- 1 массив ячеек, где каждый элемент является NUMDATES-by- 2 массив ячеек, где первый столбец является датами, а второй - связанным основным объемом. Дата указывает на последний день действия основного значения.
Типы данных: double | cell
'EndMonthRule' - Флаг правила в конце месяца1 (в действии) (по умолчанию) | неотрицательное целое число 0 или 1Флаг правила в конце месяца, заданный как NINST-by- 1 вектор. Это правило применяется только тогда, когда Maturity - дата окончания месяца для месяца, имеющего 30 или менее дней.
0 = Игнорируйте правило, означающее, что дата выплаты купона по облигации всегда совпадает с числовым днем месяца.
1 = Установите правило, означающее, что дата выплаты купона по облигации всегда является последним фактическим днем месяца.
Типы данных: logical
'AdjustCashFlowsBasis' - Корректировка денежных потоков в соответствии с суммой начисления0 (не действует) (по умолчанию) | неотрицательное целое число 0 или 1Корректирует денежные потоки в соответствии с суммой начисления, заданной как NINST-by- 1 вектор логики.
Примечание
Обычно вы хотите задать AdjustCashFlowsBasis на 1таким образом, денежные потоки рассчитываются с учетом сумм начислений. По умолчанию задано значение 0 чтобы быть согласующимся с floatbyzero (Financial Instruments Toolbox).
Типы данных: logical
'Holidays' - Даты праздниковholidays.m используется (по умолчанию)Даты праздников, указанные как NHOLIDAYS-by- 1 вектор MATLAB® дат с использованием серийных номеров дат, векторов символов дат или массивов datetime. Праздничные дни используются в вычислительных рабочих днях.
Типы данных: double | char | datetime
'BusinessDayConvention' - Договоры о рабочих днях'actual'
(по умолчанию) | символьный вектор со значениями 'actual', 'follow', 'modifiedfollow', 'previous'или 'modifiedprevious'Соглашения о рабочих днях в виде NINST-by- 1 массив ячеек из векторов символов соглашений о рабочих днях, которые будут использоваться при вычислении дат оплаты. Выбор для соглашения о рабочих днях определяет, как обрабатываются дни небизнеса. Дни небизнеса определяются как выходные дни плюс любая другая дата, когда предприятия не открыты (для примера, уставных праздников). Значения:
'actual' - Дни небизнеса эффективно игнорируются. Денежные потоки, которые приходятся на нерабочие дни, считаются распределенными на фактическую дату.
'follow' - Денежные потоки, которые приходятся на день небизнеса, принимаются распределенными на следующий рабочий день.
'modifiedfollow' - Денежные потоки, которые приходятся на нерабочий день, принимаются распределенными на следующий рабочий день. Однако если следующий рабочий день находится в другом месяце, то вместо этого принимается предыдущий рабочий день.
'previous' - Денежные потоки, которые приходятся на день небизнеса, принимаются распределенными в предыдущий рабочий день.
'modifiedprevious' - Денежные потоки, которые приходятся на день небизнеса, принимаются распределенными в предыдущий рабочий день. Однако, если предыдущий рабочий день находится в другом месяце, вместо этого принимается следующий рабочий день.
Типы данных: char | cell
Margin - Скидочная маржаСкидка маржа, возвращенная как NINST-by- 1 вектор скидочной маржи, если RateInfo задается как NINST-by- 2 вектор заглушек и точечных скоростей.
Если RateInfo задается как годовая структура терминов нулевой ставки, созданная intenvset (Financial Instruments Toolbox), Margin возвращается как NINST-by- NCURVES матрица нулевой скидочной маржи.
[1] Фабоцци, Фрэнк Дж., Манн, Стивен В. Ценные бумаги с плавающей ставкой. Джон Уайли и сыновья, Нью-Йорк, 2000 год.
[2] Фабоцци, Фрэнк Дж., Манн, Стивен В. Введение в аналитику фиксированного дохода: анализ относительной стоимости, меры риска и оценка. Джон Уайли и сыновья, Нью-Йорк, 2010.
[3] О'Кейн, Доминик, Сен, Саурав. «Объяснение кредитных спредов». Количественное исследование фиксированного дохода Lehman Brothers, март 2004 года.
bndspread | datetime | floatmargin | floatbyzero (Financial Instruments Toolbox) | intenvset (Тулбокс финансовых инструментов)
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.