Wykreślenie efektywnej granicy
Czas na wykreślenie wyników naszych portfeli MPT – zobaczymy tzw. „efektywną granicę" (efficient frontier). Jest to wykres zmienności (volatility) w zestawieniu ze stopami zwrotu. Pozwala on zwizualizować możliwe kombinacje ryzyka i zwrotu dla różnych portfeli. Górna lewa granica zbioru punktów wyznacza najlepsze dostępne rozwiązania – najwyższy zwrot przy danym poziomie ryzyka – i właśnie to jest efektywna granica.
Do stworzenia tego wykresu skorzystamy z najnowszej daty ze słownika covariances, który powstał kilka ćwiczeń wcześniej. Daty pełnią tu rolę kluczy, więc posortujemy je za pomocą sorted() i .keys(), a ostatni element pobierzemy przez indeksowanie w Pythonie ([-1]). Na koniec użyjemy matplotlib, aby wykreślić na wykresie punktowym wariancję względem stóp zwrotu i zobaczyć efektywną granicę dla najnowszej daty w danych.
To ćwiczenie jest częścią kursu
Uczenie maszynowe w finansach z Pythonem
Instrukcje do ćwiczenia
- Pobierz najnowszą datę ze słownika
covariances– pamiętaj, że daty są kluczami. - Na wykresie punktowym wykreśl zmienność względem stóp zwrotu (
portfolio_returns) dla najnowszej daty, ustawiając wartośćalpha(przezroczystość) na0.1.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Get latest date of available data
date = sorted(covariances.____)[____]
# Plot efficient frontier
# warning: this can take at least 10s for the plot to execute...
plt.scatter(x=portfolio_volatility[date], y=____, alpha=____)
plt.xlabel('Volatility')
plt.ylabel('Returns')
plt.show()