exponenta event banner

floatmargin

Показатели маржи для облигаций с плавающей ставкой

Описание

пример

[Margin,AdjPrice] = floatmargin(Price,SpreadSettle,Maturity) вычисляет показатели маржи для облигации с плавающей ставкой.

Использовать floatmargin для расчета следующих типов показателей маржи для облигации с плавающей ставкой:

  • Распространение на всю жизнь

  • Скорректированный простой запас

  • Скорректированная общая маржа

Чтобы вычислить скидочную маржу или нулевую скидочную маржу, см. раздел floatdiscmargin.

пример

[Margin,AdjPrice] = floatmargin(___,Name,Value) добавляет необязательные аргументы пары имя-значение.

Примеры

свернуть все

Использовать floatmargin для вычисления показателей маржи для spreadforlife, adjustedsimple, и adjustedtotal для ноты с плавающей ставкой.

Определите данные для ноты с плавающей ставкой.

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;

Вычислить spreadforlife.

Margin = floatmargin(Price, Spread, Settle, Maturity, 'Reset', ...
Reset, 'Basis', Basis)
Margin = 51.0051

Вычислить adjustedsimple маржа.

[Margin, AdjPrice] = floatmargin(Price, Spread, Settle, Maturity, ...
'SpreadType', 'adjustedsimple', 'RateInfo', [StubRate, SpotRate], ...
'LatestFloatingRate', LatestFloatingRate, 'Reset', Reset, 'Basis', Basis)
Margin = 53.2830
AdjPrice = 99.9673

Вычислить adjustedtotal маржа.

[Margin, AdjPrice] = floatmargin(Price, Spread, Settle, Maturity, ...
'SpreadType', 'adjustedtotal', 'RateInfo', [StubRate, SpotRate], ...
'LatestFloatingRate', LatestFloatingRate, 'Reset', Reset, 'Basis', Basis)
Margin = 53.4463
AdjPrice = 99.9673

Использовать floatmargin для расчета показателей маржи для spreadforlife, adjustedsimple, и adjustedtotal для примечания с плавающей ставкой с использованием 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');
[Margin, AdjPrice] = floatmargin(Price, Spread, Settle, Maturity, ...
'SpreadType', 'adjustedsimple', 'RateInfo', [StubRate, SpotRate], ...
'LatestFloatingRate', LatestFloatingRate, 'Reset', Reset, 'Basis', Basis)
Margin = 53.2830
AdjPrice = 99.9673

Входные аргументы

свернуть все

Цены облигаций, по которым должны рассчитываться спреды, указанные как NINSTоколо-1 матрица.

Типы данных: double

Количество базисных пунктов над эталонной ставкой, указанное как NINSTоколо-1 матрица.

Типы данных: double

Дата расчета облигаций с плавающей ставкой, указанная как порядковый номер даты, символьный вектор даты или массив datetime. Если поставляется в виде NINSTоколо-1 вектор дат, все даты балансирования должны быть одинаковыми (поддерживается только одна дата балансирования)

Типы данных: double | char | datetime

Дата погашения облигации с плавающей ставкой, указанная как порядковый номер даты, символьный вектор даты или массив datetime.

Типы данных: double | char | datetime

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: [Margin,AdjPrice] = floatmargin(Price,Spread,Settle,Maturity, 'SpreadType','adjustedtotal','RateInfo',[StubRate,SpotRate],'LatestFloatingRate',.0445,'Reset',2,'Basis',5)

Тип вычисляемого спреда, определяемый типом, определяемый как spreadforlife,adjustedsimple, или adjustedtotal.

Примечание

Если SpreadType является spreadforlife (по умолчанию), затем аргументы имя-значение LatestFloatingRate и RateInfo не используются. Если SpreadType является adjustedsimple или adjustedtotal, затем аргументы имя-значение LatestFloatingRate и RateInfo необходимо указать.

Типы данных: double

Ставка для следующего плавающего платежа, установленного на дату последнего сброса, указанная как NINSTоколо-1 вектор.

Примечание

Эта ставка должна быть указана для SpreadType из adjustedsimple и adjustedtotal.

Типы данных: double

информация о процентной ставке, указанная как NINSTоколо-2 вектор, где:

  • Первый столбец - это тупиковая ставка между датой расчета и первой купонной ставкой.

  • Второй столбец - это ссылочная ставка для срока плавающих купонов (например, 3-месячный LIBOR с даты расчета для облигации с Reset из 4).

Примечание

RateInfo необходимо указать для SpreadType из adjustedsimple и adjustedtotal.

Типы данных: double

Периодичность платежей в год, указанная как NINSTоколо-1 вектор.

Типы данных: double

База подсчета дней, используемая для расчета коэффициента времени, указанного как NINSTоколо-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

Условные основные суммы, указанные как NINSTоколо-1 вектор.

Типы данных: double

Флаг правила на конец месяца, указанный как NINSTоколо-1 вектор. Это правило применяется только в том случае, если Maturity - дата окончания месяца, имеющая 30 или менее дней.

  • 0 = Игнорировать правило, означающее, что дата выплаты бонусного купона всегда совпадает с числовым днем месяца.

  • 1 = Установить правило, означающее, что дата выплаты бонусного купона всегда является последним фактическим днем месяца.

Типы данных: logical

Даты праздничных дней, указанные как NHOLIDAYSоколо-1 вектор дат MATLAB ® с использованием серийных номеров дат, векторов символов дат или массивов datetime. Праздники используются в вычислительных рабочих днях.

Типы данных: double | char | datetime

Соглашения о рабочих днях, указанные как NINSTоколо-1 массив ячеек символьных векторов соглашений о рабочих днях, используемых при расчете дат платежей. Выбор соглашения о рабочих днях определяет, как обрабатываются дни, не связанные с бизнесом. Дни, не связанные с бизнесом, определяются как выходные дни, а также любая другая дата, когда предприятия не открыты (например, официальные праздники). Значения:

  • 'actual' - Дни, не связанные с бизнесом, фактически игнорируются. Предполагается, что денежные потоки, приходящиеся на нерабочие дни, распределяются на фактическую дату.

  • 'follow' - Денежные потоки, приходящиеся на некоммерческий день, предполагается распределить на следующий рабочий день.

  • 'modifiedfollow' - Денежные потоки, приходящиеся на нерабочий день, предполагается распределить на следующий рабочий день. Однако если следующий рабочий день находится в другом месяце, вместо него используется предыдущий рабочий день.

  • 'previous' - Денежные потоки, приходящиеся на некоммерческий день, предполагается распределить в предыдущий рабочий день.

  • 'modifiedprevious' - Денежные потоки, приходящиеся на некоммерческий день, предполагается распределить в предыдущий рабочий день. Однако если предыдущий рабочий день находится в другом месяце, вместо него принимается следующий рабочий день.

Типы данных: char | cell

Выходные аргументы

свернуть все

Спреды для облигации с плавающей ставкой, возвращенные как NINSTоколо-1 вектор.

Скорректированная цена, используемая для расчета спредов SpreadType из adjustedsimple и adjustedtotal, возвращено как NINSTоколо-1 вектор.

Ссылки

[1] Фабоцци, Фрэнк Дж., Манн, Стивен В. Ценные бумаги с плавающей ставкой. Джон Уайли и сыновья, Нью-Йорк, 2000.

[2] Фабоцци, Фрэнк Дж., Манн, Стивен В. Введение в аналитику с фиксированным доходом: анализ относительной стоимости, показатели риска и оценка. Джон Уайли и сыновья, Нью-Йорк, 2010.

См. также

| | | (инструментарий финансовых инструментов)

Представлен в R2012b