Monatliche S&P-500-Renditen erkunden
In den nächsten Übungen untersuchst du die monatliche Performance des S&P 500. Ein Bild sagt oft mehr als tausend Worte. Deshalb beginnt die Performanceanalyse in der Regel mit dem Zeitreihendiagramm des Werts einer Anlage.
Rechts siehst du einen Plot des S&P 500 für den Zeitraum von 1986 bis August 2016. Jede Beobachtung in diesem Plot ist ein End-of-Day-Wert. Das Diagramm zeigt mehrere Boom- und Crashphasen. Wirf einen Blick darauf: Siehst du, warum die 2000er oft als das verlorene Jahrzehnt des Investierens bezeichnet werden?
Die Pakete PerformanceAnalytics und xts sind bereits geladen, und die täglichen Kurse des S&P 500 stehen dir in deinem Workspace als Variable sp500 zur Verfügung. Diese Variable ist vom Zeitreihen-Typ xts. Das bedeutet, jede Beobachtung hat einen Zeitstempel. Deine Aufgabe ist es, die monatliche Performance des S&P 500 zu beschreiben. Dazu musst du zunächst die täglichen Kursreihen zu Monatsendkursen aggregieren. Anschließend berechnest du die monatlichen Renditen und stellst sie in einer Tabelle dar.
Diese Übung ist Teil des Kurses
<Kurs>Einführung in die Portfolioanalyse in R</Kurs>Übungsanweisungen
- Verwende die Funktion to.monthly() mit dem Argument
sp500und weise das Ergebnissp500_monthlyzu. - Gib die ersten sechs Zeilen von
sp500_monthlyaus. Achte darauf, wie die Aggregation zu einer Tabelle mit vier Spalten geführt hat: Eröffnungs-, Tiefst-, Höchst- und Schlusskurs vonsp500für jeden Monat. - Erzeuge
sp500_returns, indem duReturn.calculate()aufsp500_monthlymit den Schlusskursen (vierte Spalte insp500_monthly) anwendest. - Verwende
plot.zoo(), um die Zeitreihe vonsp500_returnszu plotten. - Nutze die Funktion table.CalendarReturns() aus PerformanceAnalytics, um die monatlichen Renditen in Tabellenform anzuzeigen, gruppiert nach Jahr und Monat.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Convert the daily frequency of sp500 to monthly frequency: sp500_monthly
sp500_monthly <-
# Print the first six rows of sp500_monthly
# Create sp500_returns using Return.calculate using the closing prices
sp500_returns <-
# Time series plot
# Produce the year x month table