IFinance.OddfPrice

Синтаксис

OddfPrice(Settlement: DateTime; Maturity: DateTime; Issue: DateTime; FirstCouponDate: DateTime; Rate: Double; YieldP: Double; Redemption: Double; Frequency; Integer; [Basis; Integer = 0]): Double;

Параметры

Settlement. Дата расчета за ценные бумаги. Должен быть больше Issue;

Maturity. Срок погашения ценных бумаг. Должен быть больше FirstCouponDate;

Issue. Дата выпуска ценных бумаг. Должен быть меньше Settlement;

FirstCouponDate. Дата первого купона для ценных бумаг. Должен быть больше Settlement;

Rate. Годовая процентная ставка для купонов по ценным бумагам. Должен быть положительным;

YieldP. Годовой доход по ценным бумагам. Должен быть неотрицательным;

Redemption. Выкупная стоимость ценных бумаг за 100 руб. номинальной стоимости. Должен быть положительным;

Frequency. Количество купонных выплат в год. Параметр может принимать следующие значения:

Basis. Используемый способ вычисления дня. Задается в интервале от 0 до 4:

Необязательный параметр.

Описание

Метод OddfPrice возвращает цену за 100 рублей номинальной стоимости ценных бумаг для нерегулярного: короткого или длинного, первого периода.

Комментарии

OddfPrice вычисляется следующим образом.

Нерегулярный короткий первый купон:

,

где:

Нерегулярный длинный первый купон:

,

где:

Пример

Добавьте ссылку на системную сборку MathFin.

Sub UserProc;
Var
    r: Double;
Begin
    r := Finance.OddfPrice(DateTime.ComposeDay(2008,11,11), DateTime.ComposeDay(2021,03,01),
        DateTime.ComposeDay(2008,10,15), DateTime.ComposeDay(2009,03,01), 0.12750.102520043);

    Debug.WriteLine(r);
End Sub UserProc;

В результате выполнения примера в окно консоли будет выведена цена, равная 146.115.

См. также:

IFinance