-1

R に日次の株価収益率を示すパネル データ セットがあります。データは次のようになります。

company code  company name          date   daily return
           1             A    1990-09-01            0.1
           1             A    1990-09-02           0.05
           2             B    1990-09-01           0.01
           2             B    1990-09-02           0.05

このデータを各企業の毎年の年間株式リターンに変換するにはどうすればよいですか? xtsデータをオブジェクトに変換してReturn.annualized関数を使用しようとしましたが、うまくいきませんでした。

4

1 に答える 1

0

これにより、各企業の毎年の年間収益が得られます (サンプル データ フレームと呼んでいますdat)。

library(lubridate) 
library(dplyr)

dat$date = as.Date(dat$date)
dat$year = year(dat$date)

dat %>% group_by(company_name, year) %>%
  summarise(annual_return = prod(1 + daily_return, na.rm=TRUE) - 1)

  company_name year annual_return
1            A 1990        0.1550
2            B 1990        0.0605
于 2015-04-03T04:54:11.477 に答える