DISC
применяется:вычисляемый столбец
вычисляемой таблицы
измерение
визуального вычисления
Возвращает ставку скидки для безопасности.
Синтаксис
DISC(<settlement>, <maturity>, <pr>, <redemption>[, <basis>])
Параметры
Срок | Определение |
---|---|
settlement |
Дата урегулирования безопасности. Дата урегулирования безопасности — это дата после даты выдачи, когда безопасность торгуется покупателем. |
maturity |
Дата окончания срока действия безопасности. Дата зрелости — это дата истечения срока действия безопасности. |
pr |
Цена на цену безопасности на $100 лицовую стоимость. |
redemption |
Стоимость активации безопасности за $100 лиц. |
basis |
(Необязательно) Тип используемого числа дней. Если база опущена, предполагается, что значение равно 0. Допустимые значения перечислены ниже этой таблицы. |
Параметр basis
принимает следующие значения:
Basis |
подсчета дней |
---|---|
0 или опущено | США (NASD) 30/360 |
1 | Фактический/фактический |
2 | Фактический/360 |
3 | Фактический/365 |
4 | Европейский 30/360 |
Возвращаемое значение
Скидка.
Замечания
Даты хранятся в виде последовательных серийных номеров, чтобы их можно было использовать в вычислениях. В DAX, 30 декабря 1899 г. день 0, а 1 января 2008 г. — 39448, так как 39 448 дней после 30 декабря 1899 г.
Дата урегулирования — это дата, когда покупатель приобретает купон, например облигацию. Дата зрелости — это дата истечения срока действия купона. Например, предположим, что 30-летняя облигация выпущена 1 января 2018 года и приобретена покупателем шесть месяцев спустя. Дата выдачи будет 1 января 2018 г., дата урегулирования будет 1 июля 2018 года, а дата погашения будет 1 января 2048 г. 30 лет после 1 января 2018 г.
DISC вычисляется следующим образом:
$$\text{DISC} = \frac{\text{активация} - \text{par}}{\text{активация}} \times \frac{\text{B}{\text{DSM}}$$
где:
$\text{B}$ = количество дней в год в зависимости от года.
$\text{DSM}$ = количество дней между расчетом и зрелости.
расчет и зрелость усечены в целые числа.
база округляется до ближайшего целого числа.
Если возвращается ошибка:
- расчет или срок действия не является допустимой датой.
- расчет ≥ зрелости.
- pr ≤ 0.
- активация ≤ 0.
- базовый < 0 или базовый > 4.
Эта функция не поддерживается для использования в режиме DirectQuery при использовании в вычисляемых столбцах или правилах безопасности на уровне строк (RLS).
Пример
данных | описание |
---|---|
07/01/2018 | Дата урегулирования |
01/01/2048 | Дата зрелости |
97.975 | Цена |
100 | Значение активации |
1 | Фактическая/фактическая база (см. выше) |
Следующий запрос DAX:
EVALUATE
{
DISC(DATE(2018,7,1), DATE(2048,1,1), 97.975, 100, 1)
}
Возвращает ставку скидок на облигацию с указанными выше условиями.
[значение] |
---|
0.000686384169121348 |