绘制价格/收益率关系
虽然价格与收益率之间呈反向关系,但这种关系并非线性。这意味着,当收益率上升或下降时,由此引起的价格变动幅度可能会有显著差异。我们将在第三章讨论凸性(convexity)时再次回到这一重要概念,并说明为何需要进行调整来刻画债券价格与收益率之间的曲线关系。现在,请先记住:这种反向关系是非线性的。
在本练习中,假设您持有一只面值 $100、票面利率 10%、到期时间为 20 年的债券。请注意,这与此前您一直使用的债券不同!您的目标是使用工作区中可用的 bondprc() 函数,在不同收益率水平下对这只债券定价。
本练习是课程的一部分
用 R 进行债券估值与分析
练习说明
- 使用 seq() 函数,以 1%(
0.01)为步长,从 2%(0.02)到 40%(0.40)创建向量prc_yld。 - 使用
data.frame()将prc_yld转换为数据框。 - 使用预先写好的、调用
bondprc()的for循环,计算prc_yld中各个收益率水平对应的债券价格。请尝试理解该循环的运行方式。 - 现在,
prc_yld对象包含收益率列(prc_yld)和价格列(price)。使用预先写好的绘图代码绘制该对象,以查看价格与到期收益率(YTM)的关系。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Generate prc_yld
prc_yld <- seq(___, ___, ___)
# Convert prc_yld to data frame
prc_yld <- data.frame(___)
# Calculate bond price given different yields
for (i in 1:nrow(prc_yld)) {
prc_yld$price[i] <- bondprc(100, 0.10, 20, prc_yld$prc_yld[i])
}
# Plot P/YTM relationship
plot(___,
type = "l",
col = "blue",
main = "Price/YTM Relationship")