债券估值
在第 1 章中,您已经用分步方法对债券进行估值。本练习中,您将对一只面值为 $100、票面利率 3%、到期时间为 8 年的债券进行估值。您将列示该债券的现金流,并使用上一个练习中得到的 Aaa 收益率计算每笔现金流的现值。
对象 aaa_yield 已预加载到您的工作区,取值为 0.0341。
本练习是课程的一部分
用 R 进行债券估值与分析
练习说明
- 创建一个现金流对象(
cf),包含该债券的各期现金流。 - 使用
data.frame()将cf转换为数据框,以便添加分析所需的其他变量。 - 使用
seq()命令添加时间指标(cf$t),表示从 1 到 8 的年份。 - 基于穆迪 Aaa 收益率(
aaa_yield)和时间指标(cf$t)计算现值因子(cf$pv_factor)。 - 将每期现金流(
cf$cf)与现值因子(cf$pv_factor)相乘,计算每期现金流的现值(cf$pv)。 - 最后,使用
sum()对各期现金流现值求和,得到该债券的价格。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Layout the bond's cash flows
cf <- c(___, ___, ___, ___, ___, ___, ___, ___)
# Convert to data.frame
cf <-
# Add time indicator
cf$t <- seq(___, ___, ___)
# Calculate PV factor
cf$pv_factor <- 1 / (1 + ___)^___
# Calculate PV
cf$pv <-
# Price bond
sum(___)