预测价格 vs. 实际价格 II
将基于久期在不同收益率水平下预测的债券价格绘制出来,并与债券的实际价格对比,是可视化久期准确性的一种好方法。
在上一个练习中,您已经求得了该债券的久期,并创建了一个包含各收益率水平下实际债券价格的 DataFrame。本练习中,您将为该 DataFrame 添加使用久期得到的预测债券价格列,然后绘制预测价格与实际价格之间的差异。
numpy、numpy_financial、pandas 和 matplotlib 已分别以 np、npf、pd 和 plt 的名称为您导入,同时也提供了上一个练习的代码。
本练习是课程的一部分
用 Python 进行债券定价与分析
练习说明
- 添加
yield_change列,等于当前收益率减去原始收益率。 - 添加
price_change列,使用美元久期计算预测的债券价格变动。 - 添加
predicted_price列,将原始债券价格与价格变动合并得到预测价格。 - 在同一坐标轴上绘制债券收益率与实际价格、以及收益率与预测价格的图,并显示该图。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Add a column called yield_change with the current yield minus original yield
bond['yield_change'] = (bond['bond_yield'] - ____)
# Find the predicted bond price change using dollar duration then find predicted price
bond['price_change'] = -100 * ____ * bond['yield_change'] / 100
bond['predicted_price'] = ____ + bond['price_change']
# Plot bond yields against predicted and actual prices, add labels, legend, and display
plt.plot(bond['bond_yield'], bond['price'])
plt.plot(____, ____)
plt.xlabel('Yield (%)')
plt.ylabel('Price (USD)')
plt.legend(["Actual Price", "Predicted Price"])
____