我正在用excel做息票支付日债券定价。我发现,当优惠券价格函数返回低于面值的值时,rate=YTM函数会返回低于面值的值。例如,债券的票面利率= 5%;YTM = 5%;频率= 2;面值=100美元。到期日为2030年12月31日,结算日为2015年9月15日。excel返回的值始终小于100。我试过改变基础,但都没起作用。
发布于 2017-02-08 08:42:57
出于这个答案的目的,我假设您使用的是Excel 2008或更高版本中的PRICE()函数。
'=价格(结算、到期日、利率、yld、赎回、频率、基数)
你得到这个债券的折扣价的原因是,你将YTM和息票设置为相等。Excel假定收益率以与息票频率相同的复合基准表示。因此,输入5%的息票和5%的收益率都是使用半年一次的折扣。
因为你将到期收益率设置为与息票相等,在相同的复利基础上,赎回+息票流的NPV在任何时间点都恰好是100。
因为您在应计期间有结算日期,所以购买价格必须包括应计利息。当你在应计期间购买债券时,你向卖方支付购买价格乘以面值加上从最后一个应计日期到结算日的应计利息。
Excel假定没有延迟地拖欠利息,因此到期日12/31/30是最终的息票支付。因此,利息在6月30日或12月31日支付。在9/15/15购买,您必须支付(取决于您的基准),因此,您支付的是票面价值乘以价格+( 100 *费率/频率*A /E ),其中A是距离上次优惠券日期(6月30日至9月15日)的天数,E是从6月30日至12月31日期间的天数。
获得票面价格的唯一方法是在息票支付日期结算,要么是6月30日,要么是12月31日。那么A= 0,这样价格就可以平价了。
有关价格()函数的信息,请参阅Microsoft帮助,公式中的最后一项是因支付应计利息而导致的票面折扣。
https://stackoverflow.com/questions/39503032
复制相似问题