Trung bình và biến động thường niên theo cửa sổ trượt
Trong các bài trước, bạn đã quen với các hàm Return.annualized() và StdDev.annualized(). Ở bài này, bạn sẽ dùng thêm hàm SharpeRatio.annualized() để tính Sharpe Ratio thường niên. Hàm này nhận các đối số R và Rf. Đối số R có thể là một đối tượng xts, vector, matrix, data.frame, timeSeries, hoặc zoo của lợi nhuận tài sản. Đối số Rf là bắt buộc trong SharpeRatio.annualized(), vì nó tính đến lãi suất phi rủi ro trong cùng giai đoạn với chuỗi lợi nhuận của bạn. Trong ví dụ này, bạn có thể dùng đối tượng rf để truyền vào đối số Rf.
Hàm chart.RollingPerformance() giúp bạn trực quan hóa các ước tính hiệu quả theo cửa sổ trượt trong R một cách dễ dàng. Trước hết, hãy làm quen với cú pháp của hàm này. Bạn cần chỉ định chuỗi thời gian lợi nhuận danh mục (bằng cách đặt đối số R), độ dài cửa sổ (width), và hàm dùng để tính hiệu quả (đối số FUN). Để xem cả ba biểu đồ cùng lúc, PerformanceAnalytics cung cấp hàm rút gọn charts.RollingPerformance(). Lưu ý là charts thay vì chart. Hàm này tạo tất cả các biểu đồ trước đó cùng lúc và không dùng đối số FUN!
Bài tập này là một phần của khóa học
Giới thiệu Phân tích Danh mục đầu tư bằng R
Hướng dẫn bài tập
- Tính lợi nhuận thường niên, độ biến động, và Sharpe Ratio cho
sp500_returns. Gán lần lượt vàoreturns_ann,sd_ann, vàsharpe_ann. Nhớ cung cấp lãi suất phi rủi ro cho đối sốRfkhi tính Sharpe Ratio. - Chúng tôi đã cung cấp mã vẽ biểu đồ ước tính trung bình thường niên theo cửa sổ trượt 12 tháng. Hãy dùng đó làm mẫu cho các biểu đồ còn lại!
- Vẽ biểu đồ ước tính theo cửa sổ trượt 12 tháng của độ biến động thường niên lợi nhuận S&P 500.
- Vẽ biểu đồ ước tính theo cửa sổ trượt 12 tháng của Sharpe Ratio thường niên lợi nhuận S&P 500.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Calculate the mean, volatility, and Sharpe ratio of sp500_returns
returns_ann <- ___
sd_ann <- ___
sharpe_ann <- ___
# Plotting the 12-month rolling annualized mean
chart.RollingPerformance(R = sp500_returns, width = 12, FUN = "Return.annualized")
# Plotting the 12-month rolling annualized standard deviation
___
# Plotting the 12-month rolling annualized Sharpe ratio
___