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
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, đặtsub_pricethành dảipricestương ứng của giai đoạn đó. - Dùng
sub_pricevà đối tượngCovarianceShrinkageđể 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)