Aggregation der Zeitreihe zur jährlichen Daten
Überlegen, wir haben tägliche Zeitreihen von Aktienkursen (sagen wir, der FTSE-Index). Wir wollen berechnen, tägliche, monatliche und jährliche Renditen.
Zur Berechnung der monatlichen und jährlichen Renditen, die wir haben, um aggregierte Zeitreihen-Daten in Monaten und Jahren. Im Paket "zoo" haben wir die aggregate-Funktion whoch kann uns helfen, die Aggregation der Daten auf eine monatliche Frequenz. Unter dem code-Zeilen mit der als.yearmon Klasse:
# Computing simple returns
FTSERet = diff(FTSE)/lag(FTSE,k=-1)
# Monthly simple returns
MonRet <- aggregate(FTSERet+1, as.yearmon, prod)-1
# Quarterly simple returns
QuartRet <- aggregate(FTSERet+1, as.yearqtr, prod)-1
Ich habe nicht gefunden, eine gleichwertige Klasse wie.yearmon für die monatlichen Daten oder so.yearqtr für die vierteljährlichen Daten für die Aggregation auf Jahres-Daten. Haben Sie irgendeinen Hinweis über das Zeug?
Du musst angemeldet sein, um einen Kommentar abzugeben.
"yearmon"
und"yearqtr"
Klassen repräsentieren Daten, die als Jahr + Fraktion so:Beachten Sie auch diese Konstruktion:
diff(x, arithmetic = FALSE) - 1
Check-out-Zeit-Serie Paket hier und suchen Sie nach 'Saisonalität' Optionen irgendwo in der Dokumentation. Ich denke, für vierteljährliche Daten, die Sie suchen, in Zeitreihen mit saisonalen 4, wenn man sich in den monatlichen Daten - Sie sind auf der Suche in Zeitreihen mit saisonalen Schwankungen des 12.
Vielleicht möchten Sie sich an der
allReturns
Funktion in der quantmod Paket.Berechnen, jährliche Rendite mit
aggregate.zoo
, nur extrahieren Sie das Jahr aus dem index.allReturns(as.xts(zoo_object))
.