exponenta event banner

cpndatenq

Следующая квазикупонная дата для обеспечения с фиксированным доходом

Описание

пример

NextQuasiCouponDate = cpndatenq(Settle,Maturity) определяет следующую дату квази купона для портфеля NUMBONDS ценные бумаги с фиксированным доходом независимо от того, являются ли первый или последний купон нормальным, коротким или длинным. Для нулевых купонных облигаций, cpndatenq возвращает квазикупонные даты, как если бы облигация имела структуру полугодового купона. Последовательные квазикупонные даты определяют продолжительность стандартного купонного периода для обеспечения фиксированного дохода по процентам и не обязательно совпадают с фактическими сроками выплаты купона.

Требуемые входные аргументы должны быть числом связей, NUMBONDSоколо-1 или 1около-NUMBONDS, согласующиеся векторы или скаляры.

пример

NextQuasiCouponDate = cpndatenq(___,Period,Basis,EndMonthRule,IssueDate,FirstCouponDate,LastCouponDate) определяет следующую дату квази купона для портфеля NUMBONDS ценные бумаги с фиксированным доходом, независимо от того, является ли первый или последний купон нормальным, коротким или длинным, с использованием необязательных входных аргументов.

Необязательные входные аргументы должны быть либо NUMBONDSоколо-1 или 1около-NUMBONDS согласующиеся векторы, скаляры или пустые матрицы.

Если все входы для Settle, Maturity, IssueDate, FirstCouponDate, и LastCouponDate являются либо серийными номерами дат, либо векторами символов дат, то NextQuasiCouponDate возвращается в виде серийного номера. Функция datestr преобразует порядковый номер даты в форматированный символьный вектор даты.

Если какой-либо из входов для Settle, Maturity, IssueDate, FirstCouponDate, и LastCouponDate массивы datetime, затем NextQuasiCouponDate возвращается в виде массива datetime.

Примеры

свернуть все

Дана пара связей со следующими характеристиками:

Settle = char('30-May-1997','10-Dec-1997');
Maturity = char('30-Nov-2002','10-Jun-2004');

Вычислить NextCouponDate для этой пары облигаций.

NextCouponDate = cpndaten(Settle, Maturity);
datestr(NextCouponDate)
ans = 2x11 char array
    '31-May-1997'
    '10-Jun-1998'

Рассчитайте следующие квази-купонные даты для этих двух облигаций.

NextQuasiCouponDate = cpndatenq(Settle, Maturity);
datestr(NextQuasiCouponDate)
ans = 2x11 char array
    '31-May-1997'
    '10-Jun-1998'

Потому что нет FirstCouponDate указано, результаты идентичны.

Теперь предоставьте явный FirstCouponDate для каждой облигации.

FirstCouponDate = char('30-Nov-1997','10-Dec-1998');

Вычислите следующие даты купона.

NextCouponDate = cpndaten(Settle, Maturity, 2, 0, 1, [],... 
FirstCouponDate);
datestr(NextCouponDate)
ans = 2x11 char array
    '30-Nov-1997'
    '10-Dec-1998'

Следующие даты купона идентичны указанным датам первого купона.

Теперь пересчитайте следующие даты квази-купонов.

NextQuasiCouponDate = cpndatenq(Settle, Maturity, 2, 0, 1, [],... 
FirstCouponDate);
datestr(NextQuasiCouponDate)
ans = 2x11 char array
    '31-May-1997'
    '10-Jun-1998'

Эти результаты иллюстрируют различие между фактическими датами купонных выплат и квазикупонными датами. FirstCouponDateLastCouponDate, а также), если указано, связан с фактической выплатой купона и также служит датой синхронизации для определения всех дат квази купона. Поскольку каждая облигация в этом примере выплачивает полугодовые купоны, и первая дата купона наступает более чем через шесть месяцев после расчета, каждая из них будет иметь промежуточную дату квази-купона до фактической выплаты первого купона.

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

свернуть все

Дата расчета, указанная как вектор серийного номера даты, символьный вектор даты или массив datetime. Settle должно быть раньше, чем Maturity.

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

Дата исполнения, указанная как вектор серийных номеров дат, векторов символов даты или массивов datetime.

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

Купоны в год связи, указанные как вектор положительных целых чисел из множества [1,2,3,4,6,12].

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

Базисное число дней инструмента, указанное как целое число со значением 0 через 13 или Nоколо-1 вектор целых чисел со значениями 0 через 13.

  • 0 = факт/факт (по умолчанию)

  • 1 = 30/360 (SIA)

  • 2 = фактически/360

  • 3 = факт/365

  • 4 = 30/360 (BMA)

  • 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

Дополнительные сведения см. в разделе Базис.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

свернуть все

Следующая квази-купонная дата для портфеля NUMBONDS ценные бумаги с фиксированным доходом, независимо от того, является ли первый или последний купон нормальным, коротким или длинным, возвращаемым в качестве NUMBONDSоколо-1 вектор.

Для нулевых купонных облигаций, cpndatenq возвращает квазикупонные даты, как если бы облигация имела структуру полугодового купона. Последовательные квазикупонные даты определяют продолжительность стандартного купонного периода для обеспечения фиксированного дохода по процентам и не обязательно совпадают с фактическими сроками выплаты купона.

Если все входные данные для Settle, Maturity, IssueDate, FirstCouponDate, и LastCouponDate являются либо серийными номерами дат, либо векторами символов дат, то NextQuasiCouponDate возвращается в виде серийного номера. Функция datestr преобразует порядковый номер даты в форматированный символьный вектор даты.

Если какой-либо из входов для Settle, Maturity, IssueDate, FirstCouponDate, и LastCouponDate массивы datetime, затем NextQuasiCouponDate возвращается в виде массива datetime.

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