YIELD

适用于:计算列计算表度量值视觉计算

返回定期支付利息的债券的收益率。 使用 YIELD 计算债券收益率。

语法

YIELD(<settlement>, <maturity>, <rate>, <pr>, <redemption>, <frequency>[, <basis>])

parameters

术语 定义
settlement 证券的结算日期。 安全结算日是向买家交易证券的发行日期之后的日期。
maturity 债券的到期日。 到期日是安全到期的日期。
rate 债券的年息票率。
pr 每个 \$100 面值的安全价格。
redemption 每个 \$100 面值的安全兑换值。
frequency 每年的息票付款数。 按年支付,frequency = 1;按半年期支付,frequency = 2;按季支付,frequency = 4。
basis (可选)要使用的日期计数依据的类型。 如果省略基,则假定为 0。 此表下面列出了接受的值。

basis 参数接受以下值:

Basis 日计数基数
0 或省略 US (NASD) 30/360
1 实际/实际
2 实际/360
3 实际/365
4 欧洲 30/360

返回值

安全性的收益率。

备注

  • 日期存储为连续的序列号,以便在计算中使用。 在 DAX,1899年12月30日是第0天,2008年1月1日是39448,因为它是1899年12月30日之后的39,448天。

  • 结算日是买家购买优惠券(如债券)的日期。 到期日是优惠券到期的日期。 例如,假设 2008 年 1 月 1 日发行了 30 年期债券,六个月后由买家购买。 发行日为 2008 年 1 月 1 日,结算日为 2008 年 7 月 1 日,到期日为 2038 年 1 月 1 日,即 2008 年 1 月 1 日发行日之后的 30 年。

  • 如果兑换前有一个息票期或更少,则按如下方式计算 YIELD:

    $$\text{YIELD} = \frac{(\frac{\text{redemption}}{100} + \frac{\text{rate}}{\text{frequency}} - (\frac{\text{par}}{100} + (\frac{\text{A}}{\text{E}} \times \frac{\text{rate}}}{\text{frequency}})}{\frac{\text{par}}{100} + (\frac{\text{A}}{\text{E}} \times \frac{\text{rate}{\text{frequency}})} \times \frac{\text{frequency} \times \text{E}}{\text{DSR}}}$$

    其中:

    • $\text{A}$ = 从息票期开始到结算日(应计天数)的天数。
    • $\text{DSR}$ = 结算日期到兑换日期的天数。
    • $\text{E}$ = 息票期的天数。
  • 如果在兑换前有多个息票期,则通过百次迭代计算 YIELD。 该解析使用牛顿方法,具体取决于用于函数 PRICE的公式。 收益率将更改,直到给定收益率接近价格的估计价格。

  • settlement 和 maturity 被截断为整数。

  • frequency 和 basis 将舍入到最接近的整数。

  • 如果出现以下错误,则返回错误:

    • settlement 或 maturity 不是有效日期。
    • settlement ≥ maturity。
    • rate < 0.
    • pr ≤ 0。
    • redemption ≤ 0。
    • frequency 是 1、2 或 4 以外的任意数字。
    • basis < 0 或 basis > 4。
  • 在计算列或行级别安全性 (RLS) 规则中使用时,不支持在 DirectQuery 模式下使用此函数。

示例

数据 描述
2008 年 2 月 15 日 结算日期
2016 年 11 月 15 日 成熟度日期
5.75% 息票率百分比
95.04287 价格
\$100 兑换值
2 按半年期支付(参见上文)
0 30/360 基准(参见上文)

以下 DAX 查询:

EVALUATE
{
  YIELD(DATE(2008,2,15), DATE(2016,11,15), 0.0575, 95.04287, 100, 2,0)
}

返回具有上述条件的债券的收益率。

[值]
0.0650000068807314