Aan de slagGa gratis aan de slag

De financiële crisis opdelen

In de video zag je de efficiënte frontier voor de portefeuille van investmentbanken over de volledige periode 2005 - 2010, dus vóór, tijdens en na de mondiale financiële crisis.

Hier deel je deze periode op in drie subperiodes, of epochs: 2005-2006 (before), 2007-2008 (during) en 2009-2010 (after). Voor elke periode bereken je de efficiënte covariantiematrix en vergelijk je die met de andere.

De prices van de portefeuille voor 2005 - 2010 staan klaar in je werkruimte, net als het CovarianceShrinkage-object uit PyPortfolioOpt.

Deze oefening maakt deel uit van de cursus

Kwantitatief risicobeheer in Python

Cursus bekijken

Oefeninstructies

  • Maak een dictionary epochs: de keys zijn de subperiodes en de waarden zijn dictionaries met 'start'- en 'end'-datums.
  • Stel voor elke subperiode-key in epochs sub_price in op het bereik van prices voor die subperiode.
  • Gebruik sub_price en het CovarianceShrinkage-object om voor elke subperiode een efficiënte covariantiematrix te bepalen.
  • Print en vergelijk de resulterende efficiënte covariantiematrices voor alle drie de subperiodes.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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)
Code bewerken en uitvoeren