PRICEMAT
返回到期支付利息的每 \$100 面值的证券的价格。
语法
PRICEMAT(<settlement>, <maturity>, <issue>, <rate>, <yld>[, <basis>])
parameters
术语 | 定义 |
---|---|
settlement | 证券的结算日。 证券结算日是指在发行日之后,证券卖给购买者的日期。 |
maturity | 证券的到期日。 到期日是指证券到期的日期。 |
问题 | 证券的发行日。 |
rate | 证券发行日的利率。 |
yld | 证券的年收益率。 |
basis | (可选)要使用的天数基数的类型。 如果省略 basis,则假定为 0。 此表下方列出了可接受的值。 |
basis 参数接受以下值:
Basis | 天数的计算基准 |
---|---|
0 或省略 | US (NASD) 30/360 |
1 | 实际/实际 |
2 | 实际/360 |
3 | 实际/365 |
4 | 欧洲 30/360 |
返回值
每 \$100 面值的价格。
备注
日期存储为连续的序列号,以便在计算中使用。 在 DAX 中,1899 年 12 月 30 日的序列号是 0,2008 年 1 月 1 日的序列号是 39448,这是因为它距 1899 年 12 月 30 日有 39,448 天。
结算日是指购买者买入息票(如债券)的日期。 到期日是指息票到期的日期。 例如,假设在 2008 年 1 月 1 日发行的 30 年期债券,6 个月后被购买者买走。 那么发行日为 2008 年 1 月 1 日,结算日为 2008 年 7 月 1 日,而到期日是在发行日 2008 年 1 月 1 日的 30 年后,即 2038 年 1 月 1 日。
PRICEMAT 的计算公式如下:
$$\text{ PRICEMAT } = \frac{ 100 + (\frac{ \text{ DIM } }{ \text{ B } } \times \text{ rate } \times 100) }{ 1 + (\frac{ \text{ DSM } }{ \text{ B } } \times \text{ yld }) } - (\frac{ \text{ A } }{ \text{ B } } \times \text{ rate } \times 100)$$
其中:
- $\text{ B }$ = 一年之中的天数,取决于具体年份。
- $\text{ DSM }$ = 结算日与到期日之间的天数。
- $\text{ DIM }$ = 发行日与到期日之间的天数。
- $\text{ A }$ = 发行日与结算日之间的天数。
settlement、maturity 和 issue 将被截尾取整。
basis 舍入为最接近的整数。
如果出现以下情况,则返回错误:
- settlement、maturity 或 issue 不是有效日期。
- 不满足 maturity > settlement > issue 这一条件。
- rate < 0。
- yld < 0。
- basis < 0 或者 basis > 4。
在已计算的列或行级安全性 (RLS) 规则中使用时,不支持在 DirectQuery 模式下使用此函数。
示例
以下 DAX 查询:
数据 | 描述 |
---|---|
2008/2/15 | 结算日 |
2008/4/13 | 到期日 |
2007/11/11 | 发行日 |
6.10% | 半年息票百分比 |
6.10% | 收益率百分比 |
0 | 30/360 基准 |
EVALUATE{ PRICEMAT(DATE(2008,2,15), DATE(2008,4,13), DATE(2007,11,11), 0.061, 0.061, 0) }
返回上述条件下每 \$100 面值的证券的价格。
[值] |
---|
99.9844988755569 |