轻松办公-OfficeExcel函数精解

(十九)

1、XNPV函数

  • 函数功能

返回一组现金流的净现值,这些现金流不一定定期发生。若要计算一组定期现金流的净现值,请使用函数 NPV。

  • 语法

XNPV(rate,values,dates)

参数说明:

  • Rate 应用于现金流的贴现率。
  • Values 与 dates 中的支付时间相对应的一系列现金流。首期支付是可选的,并与投资开始时的成本或支付有关。如果第一个值是成本或支付,则它必须是负值。所有后续支付都基于 365 天/年贴现。数值系列必须至少要包含一个正数和一个负数。
  • Dates 与现金流支付相对应的支付日期表。第一个支付日期代表支付表的开始。其他日期应迟于该日期,但可按任何顺序排列。

注解:

  • Microsoft Office Excel 可将日期存储为可用于计算的序列数。默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。Microsoft Excel for the Macintosh 使用另外一个默认日期系统。
  • Dates 中的数值将被截尾取整。
  • 如果任一参数为非数值型,函数 XNPV 返回错误值 #VALUE!。
  • 如果 dates 中的任一数值不是合法日期,函数 XNPV 返回错误值 #VALUE。
  • 如果 dates 中的任一数值先于开始日期,函数 XNPV 返回错误值 #NUM!。
  • 如果 values 和 dates 所含数值的数目不同,函数 XNPV 返回错误值 #NUM!。
  • 函数 XNPV 的计算公式如下:

式中:

di = 第 i 个或最后一个支付日期。

d1 = 第 0 个支付日期。

Pi = 第 i 个或最后一个支付金额。

  • 示例

2、YIELD函数

  • 函数功能

返回定期付息有价证券的收益率,函数 YIELD 用于计算债券收益率。

  • 语法

YIELD(settlement,maturity,rate,pr,redemption,frequency,basis)

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

参数说明:

  • Settlement 为证券的结算日。结算日是在发行日之后,证券卖给购买者的日期。
  • Maturity 为有价证券的到期日。到期日是有价证券有效期截止时的日期。
  • Rate 为有价证券的年息票利率。
  • Pr 为面值 ¥100 的有价证券的价格。
  • Redemption 为面值 ¥100 的有价证券的清偿价值。
  • Frequency 为年付息次数,如果按年支付,frequency = 1;按半年期支付,frequency = 2;按季支付,frequency = 4。
  • Basis 为日计数基准类型。

Basis 日计数基准数值说明:

0 或省略 代表 US (NASD) 30/360

1 代表 实际天数/实际天数

2 代表 实际天数/360

3 代表 实际天数/365

4 代表 欧洲 30/360

注解:

  • Microsoft Office Excel 可将日期存储为可用于计算的序列数。默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。Microsoft Excel for the Macintosh 使用另外一个默认日期系统。
  • 结算日是购买者买入息票(如债券)的日期。到期日是息票有效期截止时的日期。例如,在 2008 年 1 月 1 日发行的 30 年期债券,六个月后被购买者买走。则发行日为 2008 年 1 月 1 日,结算日为 2008 年 7 月 1 日,而到期日是在发行日 2008 年 1 月 1 日的 30 年后,即 2038 年 1 月 1 日。
  • Settlement、maturity、frequency 和 basis 将被截尾取整。
  • 如果 settlement 或 maturity 不是合法日期,函数 YIELD 返回错误值 #VALUE!。
  • 如果 rate < 0,函数 YIELD 返回错误值 #NUM!。
  • 如果 pr ≤ 0 或 redemption ≤ 0,函数 YIELD 返回错误值 #NUM!。
  • 如果 frequency 不为 1、2 或 4,函数 YIELD 返回错误值 #NUM!。
  • 如果 basis < 0 或 basis > 4,函数 YIELD 返回错误值 #NUM!。
  • 如果 settlement ≥ maturity,函数 YIELD 返回错误值 #NUM!。
  • 如果在清偿日之前只有一个或是没有付息期间,函数 YIELD 的计算公式为:

式中:

A = 付息期的第一天到结算日之间的天数(应计天数)。

DSR = 结算日与清偿日之间的天数。

E = 付息期所包含的天数。

  • 如果在 redemption 之前尚有多个付息期间,则通过 100 次迭代来计算函数 YIELD。基于函数 PRICE 中给出的公式,并使用牛顿迭代法不断修正计算结果,直到在给定的收益率下的计算价格逼近于实际价格。
  • 示例

3、YIELDDISC函数

  • 函数功能

返回折价发行的有价证券的年收益率。

  • 语法

YIELDDISC(settlement,maturity,pr,redemption,basis)

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

参数说明:

  • Settlement 为证券的结算日。结算日是在发行日之后,证券卖给购买者的日期。
  • Maturity 为有价证券的到期日。到期日是有价证券有效期截止时的日期。
  • Pr 为面值 ¥100 的有价证券的价格。
  • Redemption 为面值 ¥100 的有价证券的清偿价值。
  • Basis 为日计数基准类型。

Basis 日计数基准数值说明:

0 或省略 代表 US (NASD) 30/360

1 代表 实际天数/实际天数

2 代表 实际天数/360

3 代表 实际天数/365

4 代表 欧洲 30/360

注解:

  • Microsoft Office Excel 可将日期存储为可用于计算的序列数。默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。Microsoft Excel for the Macintosh 使用另外一个默认日期系统。
  • 结算日是购买者买入息票(如债券)的日期。到期日是息票有效期截止时的日期。例如,在 2008 年 1 月 1 日发行的 30 年期债券,六个月后被购买者买走。则发行日为 2008 年 1 月 1 日,结算日为 2008 年 7 月 1 日,而到期日是在发行日 2008 年 1 月 1 日的 30 年后,即 2038 年 1 月 1 日。
  • Settlement、maturity 和 basis 将被截尾取整。
  • 如果 settlement 或 maturity 不是有效日期,函数 YIELDDISC 返回错误值 #VALUE!。
  • 如果 pr ≤ 0 或 redemption ≤ 0,函数 YIELDDISC 返回错误值 #NUM!。
  • 如果 basis < 0 或 basis > 4,函数 YIELDDISC 返回错误值 #NUM!。
  • 如果 settlement ≥ maturity,函数 YIELDDISC 返回错误值 #NUM!。
  • 示例

更多精彩内容将在以后的章节分享给朋友们,请添加收藏,欢迎关注!