Desmembrando a crise financeira
No vídeo, você viu a fronteira eficiente da carteira de bancos de investimento durante todo o período de 2005 a 2010, que inclui o tempo antes, durante e depois da crise financeira global.
Aqui você dividirá esse período em três subperíodos, ou epochs: 2005-2006(antes), 2007-2008(durante) e 2009-2010(depois). Para cada período, você calculará a matriz de covariância eficiente e as comparará entre si.
O site prices do portfólio de 2005 a 2010 está disponível em seu espaço de trabalho, assim como o objeto CovarianceShrinkage do PyPortfolioOpt.
Este exercício faz parte do curso
Gerenciamento quantitativo de riscos em Python
Instruções do exercício
- Crie um dicionário 
epochs: suas chaves são os subperíodos e seus valores são dicionários de datas de "início" e "fim". - Para cada uma das chaves de subperíodo em 
epochs, definasub_pricecomo o intervalo depricespara esse subperíodo. - Use o site 
sub_pricee o objetoCovarianceShrinkagepara encontrar uma matriz de covariância eficiente para cada subperíodo. - Imprima e compare as matrizes de covariância eficientes resultantes para todos os três subperíodos.
 
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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)