ODDFPRICE
返回每 \$100 面值的首期息票日不固定(短期或长期)的证券的价格。
语法
ODDFPRICE(<settlement>, <maturity>, <issue>, <first_coupon>, <rate>, <yld>, <redemption>, <frequency>[, <basis>])
parameters
术语 | 定义 |
---|---|
settlement | 证券的结算日。 证券结算日是指在发行日之后,证券卖给购买者的日期。 |
maturity | 证券的到期日。 到期日是指证券到期的日期。 |
问题 | 证券的发行日。 |
first_coupon | 证券的首期息票日。 |
rate | 证券的利率。 |
yld | 证券的年收益率。 |
redemption | 证券每 \$100 面值的赎回价值。 |
frequency | 每年支付息票的次数。 按年支付,frequency = 1;按半年期支付,frequency = 2;按季支付,frequency = 4。 |
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 日。
ODDFPRICE 的计算方式如下:
短期首期不固定息票:
$$\text{ODDFPRICE} = \bigg[ \frac{\text{redemption}}{(1 + \frac{\text{yld}}{\text{frequency}})^{(N - 1 + \frac{\text{DSC}}{\text{E}})}} \bigg] + \bigg[ \frac{100 \times \frac{\text{rate}}{\text{frequency}} \times \frac{\text{DFC}}{\text{E}}}{(1 + \frac{\text{yld}}{\text{frequency}})^{(\frac{\text{DSC}}{\text{E}})}} \bigg] + \bigg[ \sum^{N}_{k=2} \frac{100 \times \frac{\text{rate}}{\text{frequency}}}{(1 + \frac{\text{yld}}{\text{frequency}})^{(k - 1 + \frac{\text{DSC}}{\text{E}})}} \bigg] - \Big[ 100 \times \frac{\text{rate}}{\text{frequency}} \times \frac{\text{A}}{\text{E}} \Big] $$
其中:
- $\text{A}$ = 从息票期开始到结算日之间的天数(累计天数)。
- $\text{DSC}$ = 结算日到下一个息票日之间天数。
- $\text{DFC}$ = 从首期不固定息票开始到首期息票日之间的天数。
- $\text{E}$ = 息票期的天数。
- $\text{N}$ = 结算日与赎回日之间的应付息票数。 (如果此数字包含一个分数,则向上取最接近的一个整数。)
长期首期不固定息票:
$$\text{ODDFPRICE} = \bigg[ \frac{\text{redemption}}{(1 + \frac{\text{yld}}{\text{frequency}})^{(\text{N} + \text{N}_{q} + \frac{\text{DSC}}{\text{E}})}} \bigg] + \bigg[ \frac{100 \times \frac{\text{rate}}{\text{frequency}} \times \Big[ \sum^{\text{NC}}_{i=1} \frac{\text{DC}_{i}}{\text{NL}_{i}} \Big] }{(1 + \frac{\text{yld}}{\text{frequency}})^{(\text{N}_{q} + \frac{\text{DSC}}{\text{E}})}} \bigg] + \bigg[ \sum^{\text{N}}_{k=1} \frac{100 \times \frac{\text{rate}}{\text{frequency}}}{(1 + \frac{\text{yld}}{\text{frequency}})^{(k - \text{N}_{q} + \frac{\text{DSC}}{\text{E}})}} \bigg] - \Big[ 100 \times \frac{\text{rate}}{\text{frequency}} \times \sum^{\text{NC}}_{i=1} \frac{\text{A}_{i}}{\text{NL}_{i}} \Big]$$
其中:
- $\text{A}_{i}$ = 不固定息票期内从第 $i^{th}$ 个或最后一个准息票期开始算起的天数。
- $\text{DC}_{i}$ = 从起息日(或发行日)到首期准息票 ($i = 1$) 的天数,或者准息票 ($i = 2$,..., $i = \text{NC}$) 中的天数。
- $\text{DSC}$ = 结算日到下一个息票日的天数。
- $\text{E}$ = 息票期的天数。
- $\text{N}$ = 首个实际息票日与赎回日之间应息票票数。 (如果此数字包含一个分数,则向上取最接近的一个整数。)
- $ \text{NC} $ = 不固定息票期内的准息票期数。 (如果此数字包含一个分数,则向上取最接近的一个整数。)
- $\text{NL}_{i}$ = 不固定息票期内完整的第 $i^{th}$ 个或最后一个准息票期的正常天数。
- $\text{N}_{q}$ = 结算日与首期息票日之间的整个准息票期数。
settlement、maturity、issue 和 first_coupon 将被截尾取整。
basis 和 frequency 舍入为最接近的整数。
如果出现以下情况,则返回错误:
- settlement、maturity、issue 或 first_coupon 不是有效日期。
- 不满足 maturity > first_coupon > settlement > issue 这一条件。
- rate < 0。
- yld < 0。
- redemption ≤ 0。
- frequency 是除 1、2 和 4 之外的任何数字。
- basis < 0 或者 basis > 4。
在已计算的列或行级安全性 (RLS) 规则中使用时,不支持在 DirectQuery 模式下使用此函数。
示例
数据 | 参数说明 |
---|---|
2008/11/11 | 结算日 |
2021/3/1 | 到期日 |
2008/10/15 | 发行日 |
2009/3/1 | 首期息票日 |
7.85% | 息票率百分比 |
6.25% | 收益率百分比 |
\$100.00 | 赎回价值 |
2 | 按半年期支付 |
1 | 实际天数/实际天数 |
以下 DAX 查询:
EVALUATE
{
ODDFPRICE(DATE(2008,11,11), DATE(2021,3,1), DATE(2008,10,15), DATE(2009,3,1), 0.0785, 0.0625, 100.00, 2, 1)
}
返回上述条件下每 \$100 面值的首期息票日不固定(短期或长期)的证券的价格。
[值] |
---|
113.597717474079 |
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈