Weź pod uwagę, że mamy dzienne szeregi czasowe kursów akcji (powiedzmy indeks FTSE). Chcemy obliczyć dzienne, miesięczne i roczne zwroty.Agregacja szeregów czasowych do danych rocznych
Aby obliczyć miesięczne i roczne zwroty, musimy agregować dane szeregów czasowych na miesiące i lata. W pakiecie "zoo" mamy funkcję agregującą, która może nam pomóc w agregowaniu danych do częstotliwości miesięcznych. Poniżej linii kodu przy użyciu klasę as.yearmon:
# 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
nie znalazłem równoważne klasy jako as.yearmon dla danych miesięcznych lub kwartalnych danych dla as.yearqtr do agregowania danych rocznie. Czy masz jakieś wskazówki na ten temat?
Funkcja periodReturn wymaga "obiektu ceny stanu lub obiektu typu OHLC", jak przekonwertować obiekt zoo na wymaganą klasę obiektu? –
@LorenzoRigamonti: możesz użyć 'allReturns (as.xts (zoo_object))'. –