MATLAB.Exponenta
MATLAB и Simulink на русском
Технологии разработки и отладки
		сложных технических систем
 

Financial Derivatives Toolbox

Financial Toolbox: разбор демонстрационных примеров

  В оглавление \ К предыдущему разделу

Функция bondbyzero

Назначение: Определение цены облигации на основе множества нулевых линий доходности

Синтаксис:

Price = bondbyzero(RateSpec, CouponRate, Settle, Maturity, Period, Basis, EndMonthRule, IssueDate, 
FirstCouponDate, LastCouponDate, StartDate, Face)

Аргументы:

  • RateSpec - Структура, содержащая свойства структуры процентных ставок. Для дополнительной информации относительно создания RateSpec необходимо обратиться к функции intenvset.
  • CouponRate - Годовая ставка, в десятичном виде
  • Settle - Дата поставки. Может быть выражена в виде серийной даты внутреннего формата MATLAB или строкой данных. Settle должна быть раньше или равна дате погашения - Maturity.
  • Maturity - Дата погашения. Может быть выражена в виде серийной даты внутреннего формата MATLAB или строкой данных.
  • Period - (Обязательный). Количество выплат купонов по облигации в год. Вектор целых значений. Допускаются значения равные 1,2,3,4,6 или 12. По умолчанию равно 2.
  • Basis - (Обязательный). Базисный интервал расчетов для финансового инструмента, выраженный в днях. Вектор целых значений. 0 = действительное/действительное (по умолчанию). 1=30/360 (SIA), 2=действительное/360, 3=действительное/365, 4=30/360 (PSA), 5 = 30/360 (ISDA), 6=30/360 (Европейский), 7=действительное/365(Японский).
  • EndMonthRule - (Обязательный). Правило, на конец месяца. Вектор. Это правило применяется только, когда дата погашения совпадает с последним днем месяца, для месяцев, содержащих 30 дней. Значение 0 = игнорирует правило, это означает, что дата выплаты купона на облигацию всегда совпадает с номером дня месяца. 1 = устанавливает правило (по умолчанию), по которому дата выплаты купона по облигации всегда является последним действительным днем месяца.
  • IssueDate - (Обязательный). Дата, выпуска облигации.
  • FirstCouponDate - (Обязательный). Дата, когда по облигации осуществляется первая выплата купона. Когда FirstCouponDate и LastCouponDate обе определены, в этом случае FirstCouponDate имеет преимущество в определении структуры купонных выплат.
  • LastCouponDate - (Обязательный). Последняя дата выплаты купона по облигации, перед датой погашения. Когда FirstCouponDate не задана, тогда LastCouponDate определяет структуру купонных выплат. Структура купонных выплат по облигации завершается на момент LastCouponDate, и она в любом случае должна предшествовать дате погашения облигации.
  • StartDate - Игнорируется.
  • Face - (Обязательный). Номинальное значение облигации. По умолчанию равно 100.
  • Options - (Обязательный). Структура опциона как производного финансового инструмента, созданного функцией derivset.

Все входные данные являются или скалярами или числом инструментов – вектором размерности NINST:1, если не это определено дополнительно. Даты могут быть серийными датами внутреннего формата MATLAB или строчными данными. Обязательные аргументы могут передаваться, по умолчанию, как матрицы вида [].

Описание: Обращением к функции bondbyzero:

Price = bondbyzero(RateSpec, CouponRate, Settle, Maturity, Period,
Basis, EndMonthRule, IssueDate, FirstCouponDate, LastCouponDate,
StartDate, Face)

осуществляется возврат матрицы цен облигаций, размерности NINST:NUMCURVES. Каждый столбец матрицы представляет собой одну из линий с нулевой доходностью.

Пример: Определим цену 4% облигации с использованием множества линий с нулевой доходностью. Загрузим файл deriv.mat, содержащий спецификации ZeroRateSpec, временную структуру процентной ставки, необходимую для определения цены облигации. Выполним команды:

load deriv;

Установим необходимые значения переменных. Остальные аргументы остаются равными по умолчанию. Выполним команды:

CouponRate = 0.04;
Settle = '01-Jan-2000';
Maturity = '01-Jan-2004';

Используем функцию bondbyzero для вычисления цены облигации.

Price = bondbyzero(ZeroRateSpec, CouponRate, Settle, Maturity)

В результате получим:

Функция bondbyzero

См. также: Функции cfbyzero, fixedbyzero, floatbyzero, swapbyzero

  В оглавление \ К предыдущему разделу

 

Поиск по сайту:

Система Orphus

Яндекс.Метрика