Zacznij terazZacznij za darmo

Analiza kryzysu finansowego

W filmie widziałeś efektywną granicę portfela banków inwestycyjnych dla całego okresu 2005–2010, obejmującego czas przed globalnym kryzysem finansowym, w jego trakcie i po nim.

Teraz podzielisz ten okres na trzy podokresy, czyli epochs: 2005–2006 (przed), 2007–2008 (w trakcie) i 2009–2010 (po). Dla każdego z nich obliczysz wydajną macierz kowariancji i porównasz wyniki.

Dane prices portfela z lat 2005–2010 są dostępne w twoim środowisku roboczym, podobnie jak obiekt CovarianceShrinkage z biblioteki PyPortfolioOpt.

To ćwiczenie jest częścią kursu

Ilościowe zarządzanie ryzykiem w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Utwórz słownik epochs: jego klucze to nazwy podokresów, a wartości to słowniki z datami 'start' i 'end'.
  • Dla każdego klucza podokresu w epochs przypisz zmiennej sub_price zakres prices odpowiadający temu podokresowi.
  • Użyj sub_price i obiektu CovarianceShrinkage, aby wyznaczyć wydajną macierz kowariancji dla każdego podokresu.
  • Wydrukuj i porównaj uzyskane wydajne macierze kowariancji dla wszystkich trzech podokresów.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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)
Edytuj i uruchom kod