Bắt đầu ngayBắt đầu miễn phí

Phân tách khủng hoảng tài chính

Trong video, bạn đã thấy đường biên hiệu quả cho danh mục ngân hàng đầu tư trong toàn bộ giai đoạn 2005 - 2010, bao gồm thời điểm trước, trong và sau khủng hoảng tài chính toàn cầu.

Tại đây, bạn sẽ chia giai đoạn này thành ba giai đoạn con, hay epochs: 2005-2006 (before), 2007-2008 (during) và 2009-2010 (after). Với mỗi giai đoạn, bạn sẽ tính ma trận hiệp phương sai hiệu quả và so sánh chúng với nhau.

prices của danh mục cho giai đoạn 2005 - 2010 có sẵn trong không gian làm việc của bạn, cũng như đối tượng CovarianceShrinkage từ PyPortfolioOpt.

Bài tập này là một phần của khóa học

Quản trị Rủi ro Định lượng với Python

Xem khóa học

Hướng dẫn bài tập

  • Tạo một dictionary epochs: keys là các giai đoạn con, và values là các dictionary gồm ngày 'start' và 'end'.
  • Với mỗi key giai đoạn con trong epochs, đặt sub_price thành dải prices tương ứng của giai đoạn đó.
  • Dùng sub_price và đối tượng CovarianceShrinkage để tìm ma trận hiệp phương sai hiệu quả cho từng giai đoạn con.
  • In ra và so sánh các ma trận hiệp phương sai hiệu quả thu được cho cả ba giai đoạn con.

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.

# Create a dictionary of time periods (or 'epochs')
epochs = { 'before' : {'start': '1-1-2005', 'end': '31-12-2006'},
           'during' : {____: '1-1-2007', 'end': '31-12-2008'},
           'after'  : {'start': '1-1-2009', ____: '31-12-2010'}
         }

# Compute the efficient covariance for each epoch
e_cov = {}
for x in epochs.keys():
  sub_price = prices.loc[epochs[x][____]:____[x]['end']]
  e_cov[x] = CovarianceShrinkage(____).ledoit_wolf()

# Display the efficient covariance matrices for all epochs
print("Efficient Covariance Matrices\n", e_cov)
Chỉnh sửa và Chạy Mã