MDURATION函数
MDURATION函数用于返回假设面值¥100的有价证券的Macauley修正期限。
语法
MDURATION(settlement,maturity,coupon,yld,frequency,basis)
要点
应使用DATE函数输入日期,或者将函数作为其他公式或函数的结果输入。例如,使用函数DATE(2008,5,23)输入2008年5月23日。如果日期以文本形式输入,则会出现问题。
参数
- Settlement 为证券的结算日。结算日是在发行日之后,证券卖给购买者的日期。
- Maturity 为有价证券的到期日。到期日是有价证券有效期截止时的日期。
- Coupon 为有价证券的年息票利率。
- Yld 为有价证券的年收益率。
- Frequency 为年付息次数,如果按年支付,frequency=1;按半年期支付,frequency=2;按季支付,frequency=4。
- Basis 为日计数基准类型。
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天。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 不是合法日期,函数 DURATION 返回错误值 #VALUE!。
- 如果 coupon<0 或 yld<0,函数 DURATION 返回错误值 #NUM!。
- 如果 frequency 不是数字 1、2 或 4,函数 DURATION 返回错误值 #NUM!。
- 如果 basis<0 或 basis>4,函数 DURATION 返回错误值 #NUM!。
- 如果 settlement≥maturity,函数 DURATION 返回错误值 #NUM!。
- 修正期限的计算公式如下:
息票债券的久期
- c表示每期票面利率
- y表示每期到期收益率
- T表示距到期日的期数
根据年金计算方法,再加以数学推导得:
- ★
- 注意,从上式中求出的久期是以期数为单位的,我们还要把它除以每年付息的次数,转化成以年为单位的久期。
某债券的交易情况如下:成交日期为1999年1月31日,到期日期为2004年1月31日,息票利率为10.8%,收益率为15%,日计数基准为实际天数/实际天数,每年付息2次,欲求修正后的期限,就可以利用此函数来计算,具体操作步骤如下:
(1)在工作表中输入数据,如图1所示。
(2)在单元格B7中输入“=MDURATION(B1,B2,B3,B4,B5,B6)”,然后按[Enter]键, 得到计算结果,如图2所示。