agencyoas

Определите скорректированный по опциям спред вызываемой облигации с помощью модели Agency OAS

Описание

пример

OAS = agencyoas(ZeroData,Price,CouponRate,Settle,Maturity,Vol,CallDate) вычисляет ОАГ установленной цены вызываемой облигации с использованием модели Агентства ОАГ.

пример

OAS = agencyoas(___,Name,Value) задает опции, использующие один или несколько аргументы пары "имя-значение" в дополнение к входным параметрам в предыдущем синтаксисе.

Примеры

свернуть все

В этом примере показано, как вычислить агентство OAS значение.

Settle = datenum('20-Jan-2010');
ZeroRates = [.07 .164 .253 1.002 1.732 2.226 2.605 3.316 ...
3.474 4.188 4.902]'/100;
ZeroDates = daysadd(Settle,360*[.25 .5 1 2 3 4 5 7 10 20 30],1);
ZeroData = [ZeroDates ZeroRates];
 
Maturity = datenum('30-Dec-2013');
CouponRate = .022;
Price = 99.155;
Vol = .5117;
CallDate = datenum('30-Dec-2010');
OAS = agencyoas(ZeroData, Price, CouponRate, Settle, Maturity, Vol, CallDate)
OAS = 8.5837

Входные параметры

свернуть все

Нулевая кривая, заданная как numRates-by- 2 матрица, где первый столбец является нулевыми датами, а второй - сопутствующими нулевыми ставками.

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

Цены, указанные как numBonds-by- 1 вектор.

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

Ставки купонов, указанные как numBonds-by- 1 вектор десятичными числами.

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

Дата расчета, заданная как скалярный серийный номер даты.

Примечание

The Settle дата должна быть идентичной датой расчета для всех облигаций и нулевой кривой.

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

Дата зрелости, заданная как numBonds-by- 1 вектор.

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

Волатильности, заданные как скаляр или numBonds-by- 1 вектор десятичными числами. Vol - волатильность процентных ставок, соответствующих времени CallDate.

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

Даты вызова, заданные как numBonds-by- 1 вектор.

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

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

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

Пример: OAS = agencyoas(ZeroData,Price,CouponRate,Settle,Maturity,Vol,CallDate,'Basis',7,'Face',1000)

Базис отсчета дней, заданный как разделенная разделенными запятой парами, состоящая из 'Basis' и a N-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

Базис кривой, заданный как разделенная разделенными запятой парами, состоящая из 'CurveBasis' и a N-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

Частота компаундирования нулевой кривой, заданная как разделенная разделенными запятой парами, состоящая из 'CurveCompounding' и a N-by- 1 вектор с использованием поддерживаемых значений: –1, 0, 1, 2, 3, 4, 6, и 12.

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

Флаг правила в конце месяца, заданный как разделенная разделенными запятой парами, состоящая из 'EndMonthRule' и неотрицательное целое число [0, 1] использование N-by- 1 вектор.

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

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

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

Номинальное значение облигации, заданная как разделенная разделенными запятой парами, состоящая из 'Face' и N-by- 1 вектор числовых значений.

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

Нерегулярная дата первого купона, заданная как разделенная разделенными запятой парами, состоящая из 'FirstCouponDate' и a NINST-by- 1 вектор с использованием серийных номеров дат.

Когда FirstCouponDate и LastCouponDate оба заданы, FirstCouponDate имеет приоритет при определении структуры купонного платежа.

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

Метод интерполяции, заданный как разделенная разделенными запятой парами, состоящая из 'InterpMethod' и a N-by- 1 вектор с поддерживаемым значением. Для получения дополнительной информации о методах интерполяции см. interp1.

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

Дата выпуска облигации, заданная как разделенная разделенными запятой парами, состоящая из 'IssueDate' и a N-by- 1 вектор с использованием серийных номеров дат.

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

Нерегулярная дата последнего купона, заданная как разделенная разделенными запятой парами, состоящая из 'LastCouponDate' и a N-by- 1 вектор с использованием серийных номеров дат

При отсутствии заданного FirstCouponDate, a заданное LastCouponDate определяет купонную структуру облигации. Купонная структура облигации усечена в LastCouponDate, независимо от того, где он падает, и сопровождается только датой движения денежных средств по облигации со сроком погашения.

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

Купоны в год, заданные как разделенная разделенными запятой парами, состоящая из 'Period' и N-by- 1 вектор. Значения для Period являются 0, 1, 2, 3, 4, 6, и 12.

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

Дата начала платежей (дата, с которой рассматривается денежный поток облигаций), заданная как разделенная разделенными запятой парами, состоящая из 'StartDate' и a N-by- 1 вектор с использованием серийных номеров дат.

Если вы не задаете StartDate, дата начала вступления в силу является Settle дата.

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

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

свернуть все

Скорректированные по опциям спреды, возвращенные как numBonds-by- 1 матрица.

Подробнее о

свернуть все

Модель Агентства ОАГ

Формула BMA European Callable Securities предоставляет стандартную методологию вычисления цены и скорректированного по опционам спреда для Европейских Callable Securities (ECS).

Ссылки

[1] SIFMA, The BMA European Callable Securities Formula, https://www.sifma.org.

Представлено до R2006a