WorksheetFunction.OddFYield 方法 (Excel)

返回首期付息日不固定(长期或短期)的债券的收益率。

语法

表达式OddFYield (Arg1Arg2Arg3Arg4Arg5Arg6Arg7Arg8Arg9)

表达 一个代表 WorksheetFunction 对象的变量。

参数

名称 必需/可选 数据类型 说明
Arg1 必需 Variant Settlement - 债券的结算日。 债券的结算日是在发行日之后债券卖给购买者的日期。
Arg2 必需 Variant Maturity - 债券的到期日。 到期日是债券有效期截止时的日期。
Arg3 必需 Variant Issue - 债券的发行日。
Arg4 必需 Variant First_coupon - 债券的首期付息日。
Arg5 必需 Variant Rate - 债券的利率。
Arg6 必需 Variant Pr - 债券的价格。
Arg7 必需 Variant Redemption - 面值 ¥100 的债券的赎回值。
Arg8 必需 Variant Frequency - 每年支付息票的次数。 如果按年支付,frequency = 1;如果按半年期支付,frequency = 2;如果按季支付,frequency = 4。
Arg9 可选 Variant Basis - 要使用的日计数基准类型。

返回值

Double

备注

重要

日期应使用 DATE 函数输入,或者作为其他公式或函数的结果输入。 例如,使用 DATE(2008,5,23) 输入 2008 年 5 月 23 日。 如果日期以文本形式输入,将会出现问题。

下表描述了可用于 Arg9 的值。

基础 日计数基准
0 或省略 美国(美国证券交易商协会)30/360
1 实际/实际
2 Actual/360
3 实际/365
4 欧洲 30/360

Microsoft Excel 以序数形式存储日期以使其可用于计算。 默认情况下,1900 年 1 月 1 日的序数是 1;2008 年 1 月 1 日的序数是 39448,因为该日期距 1900 年 1 月 1 日有 39,448 天。 Microsoft Excel for the Macintosh 使用另外一个默认日期系统。

注意

Visual Basic for Applications (VBA) 的串行日期的计算方式与 Excel 不同。 在 VBA 中,序列号 1 为 1899 年 12 月 31 日,而不是 1900 年 1 月 1 日。

结算日是购买者买入息票(如债券)的日期。 到期日是息票有效期截止时的日期。 例如,在 2008 年 1 月 1 日发行的 30 年期债券,六个月后被购买者买走。 则发行日为 2008 年 1 月 1 日,成交日为 2008 年 7 月 1 日,而到期日则是在发行日 2008 年 1 月 1 日的 30 年后,即 2038 年 1 月 1 日。

Settlement、maturity、issue、first_coupon 和 basis 将被截尾取整。

如果 settlement、maturity、issue 或 first_coupon 不是有效的日期, OddFYield 将返回#VALUE! 。

如果速率 < 0 或 pr ≤ 0, 则 OddFYield 返回#NUM! 。

如果 basis < 0 或 basis > 4, 则 OddFYield 返回#NUM! 。

必须满足以下日期条件:否则, OddFYield 返回#NUM! error 值:成熟 > 度first_coupon > 结算 > 问题。

Excel 使用迭代技术来计算 OddFYield。 此函数基于用于 OddFPrice 函数的公式使用牛顿方法。 在 100 次迭代过程中,收益率不断变化,直到按给定收益率导出的估计价格接近实际价格。 有关 OddFYield 使用的公式,请参阅 OddFPrice

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。