开始使用免费开始使用

探索 S&P 500 的月度收益

在接下来的练习中,您将分析 S&P 500 的月度表现。图胜千言。因此,大多数绩效分析都会先从查看投资价值的时间序列图开始。

右侧展示了 1986 年至 2016 年 8 月期间的 S&P 500 走势图。图中的每个观测值都是每日收盘时的数值。图表显示了多次上涨与下跌。看一看这张图,您是否能理解为什么 2000 年代常被称为投资的"失去的十年"?

PerformanceAnalyticsxts 包已预加载,S&P 500 的日度价格已作为变量 sp500 提供在您的工作区中。该变量属于 xts 时间序列类,这意味着每个观测值都带有时间戳。您的任务是描述 S&P 500 的月度表现。为此,您需要先把日度价格序列聚合为月末价格。随后计算月度收益,并用表格进行可视化展示。

本练习是课程的一部分

R 中的投资组合分析入门

查看课程

练习说明

  • 使用函数 to.monthly() 处理 sp500,并将结果赋给 sp500_monthly
  • 打印 sp500_monthly 的前 6 行。注意,聚合后得到包含 4 列的表格,分别为每个月的开盘价、最低价、最高价和收盘价。
  • 使用 Return.calculate()sp500_monthly 的"收盘价"(sp500_monthly 的第 4 列)计算收益,创建 sp500_returns
  • 使用 plot.zoo() 绘制 sp500_returns 的时间序列图。
  • 使用 PerformanceAnalytics 中的函数 table.CalendarReturns() 以表格形式按"年份 × 月份"展示月度收益数据。

交互式实操练习

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

# Convert the daily frequency of sp500 to monthly frequency: sp500_monthly
sp500_monthly <- 

# Print the first six rows of sp500_monthly


# Create sp500_returns using Return.calculate using the closing prices
sp500_returns <- 

# Time series plot


# Produce the year x month table
编辑并运行代码