开始使用免费开始使用

绘制久期与因子的关系图

将久期与某个因子(如到期年限、票息或收益率)作图,是观察该因子如何影响债券久期的好方法。

在视频中,我们绘制了久期与到期年限的关系图。本练习中,您将对票息率做相同的事情。您将使用一只期限为 10 年、收益率为 5%、面值为 USD 100 的债券。

numpynumpy_financialpandasmatplotlib 已分别以 npnpfpdplt 的别名为您导入。

本练习是课程的一部分

用 Python 进行债券定价与分析

查看课程

练习说明

  • 创建一个从 0 到 10、步长为 0.1 的票息数组,并将其转换为一个 pandas DataFrame。
  • 在该 DataFrame 中新增四列:priceprice_upprice_downduration,用于该债券。
  • 绘制一张图,将 bond_coupon 置于 x 轴,将 duration 置于 y 轴。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Create array of coupon rates and assign to pandas DataFrame
bond_coupon = np.arange(____, ____, ____)
bond = pd.DataFrame(____, columns=['____'])

# Calculate bond price, price_up, price_down, and duration
bond['price'] = -npf.pv(rate=0.05, nper=10, pmt=bond['bond_coupon'], fv=100)
bond['price_up'] = ____
bond['price_down'] = ____
bond['duration'] = (bond['____'] - bond['____']) / (2 * bond['____'] * 0.01)

# Plot coupon vs. duration, add labels & title, show plot
plt.plot(____, ____)
plt.xlabel('Coupon (%)')
plt.ylabel('Duration (%)')
plt.show()
编辑并运行代码