本文介绍 Microsoft Excel 中 YIELD 函数的公式语法和用法。
说明
返回定期支付利息的债券的收益。 函数 YIELD 用于计算债券收益率。
语法
YIELD(settlement, maturity, rate, pr, redemption, frequency, [basis])
重要
应使用 DATE 函数输入日期,或者将日期作为其他公式或函数的结果输入。 例如,使用函数 DATE(2008,5,23) 输入 2008 年 5 月 23 日。 如果日期以文本形式输入,则会出现问题。
YIELD 函数语法具有下列参数:
- 沉降 必填。 有价证券的结算日。 有价证券结算日是在发行日之后,有价证券卖给购买者的日期。
- 成熟 必填。 有价证券的到期日。 到期日是有价证券有效期截止时的日期。
- 率 必填。 有价证券的年息票利率。
- 公关 必填。 有价证券的价格(按面值为 ¥100 计算)。
- 救 赎 必填。 面值 ¥100 的有价证券的清偿价值。
- 频率 必填。 年付息次数。 如果按年支付,frequency = 1;按半年期支付,frequency = 2;按季支付,frequency = 4。
- 基础 选。 要使用的日计数基准类型。
| Basis | 日计数基准 |
|---|---|
| 0 或省略 | US (NASD) 30/360 |
| 1 | 实际/实际 |
| 2 | 实际/360 |
| 3 | 实际/365 |
| 4 | 欧洲 30/360 |
备注
Microsoft Excel 可将日期存储为可用于计算的序列号。 默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。
结算日是购买者买入息票(如债券)的日期。 到期日是息票有效期截止时的日期。 例如,在 2008 年 1 月 1 日发行的 30 年期债券,六个月后被购买者买走。 则发行日为 2008 年 1 月 1 日,结算日为 2008 年 7 月 1 日,而到期日是在发行日 2008 年 1 月 1 日的 30 年后,即 2038 年 1 月 1 日。
Settlement、maturity、frequency 和 basis 将被截尾取整。
如果结算或到期日不是有效日期,则 YIELD 返回 #VALUE! 错误值。
如果速率 < 为 0,则 YIELD 返回 #NUM! 错误值。
如果 pr ≤ 0 或兑换≤ 0,则 YIELD 返回 #NUM! 错误值。
如果 frequency 是除 1、2 或 4 以外的任何数字,则 YIELD 返回 #NUM! 错误值。
如果 basis < 0 或 basis > 4,则 YIELD 返回 #NUM! 错误值。
如果结算≥到期,则 YIELD 返回 #NUM! 错误值。
如果在清偿日之前只有一个或是没有付息期间,函数 YIELD 的计算公式为:
其中:- A = 付息期的第一天到结算日之间的天数(应计天数)。
- DSR = 结算日与清偿日之间的天数。
- E = 付息期所包含的天数。
如果在 redemption 之前尚有多个付息期间,则通过 100 次迭代来计算函数 YIELD。 基于函数 PRICE 中给出的公式,并使用牛顿迭代法不断修正计算结果。 这样,收益率将不断更改,直到根据给定收益率计算的估计价格接近实际价格。
示例
复制下表中的示例数据,然后将其粘贴进新的 Excel 工作表的 A1 单元格中。 要使公式显示结果,请选中它们,按 F2,然后按 Enter。 如果需要,可调整列宽以查看所有数据。
| 数据 | 说明 | |
|---|---|---|
| 2008-2-15 | 结算日 | |
| 2016-11-15 | 到期日 | |
| 5.75% | 息票利率 | |
| 95.04287 | 价格 | |
| ¥100 | 清偿价值 | |
| 2 | 按半年期支付(请参见上面的信息) | |
| 0 | 以 30/360 为日计数基准(请参见上面的信息) | |
| 公式 | 描述(结果) | 结果 |
| =YIELD(A2,A3,A4,A5,A6,A7,A8) | 在上述条件下债券的收益率(0.065 或 6.5%) | 6.5% |