1
我有下面的代碼,它的目的是下載一個選擇股票,然後計算這些股票的月度回報。一切順利,直到我使用lapply
函數。此示例爲每個股票返回相同的結果。其他嘗試也是錯誤的與quantmod lapply使用獲得的月度回報
NB符號,也可以像symbols <- c("AAPL", "GOOG", "GE")
tickerlist <- "sp5001.csv" #CSV containing tickers on rows
startDate = as.Date("2013-10-01") #Specify what date to get the prices from
endDate = as.Date("2016-09-30")
stocksLst <- read.csv("sp5001.csv", header = F, stringsAsFactors = F)
symbols <- read.csv("sp5001.csv", header = F)$V1
symbols <-as.character(symbols)
nrstocks = length(stocksLst[,1])
data.env <- new.env()
getSymbols(symbols, env = data.env ,from= startDate ,to= endDate)
dataX <-do.call(merge, eapply(data.env, Ad)[symbols])
Temp <- lapply(symbols, function(symbols) {monthlyReturn(dataX)})
What_I_need <- do.call(merge.xts,Temp)
的What_I_need
data.frame/XTS看起來是這樣的 - 這是錯誤的。
monthly.returns monthly.returns.1 monthly.returns.2
2013-10-31 0.071194294 0.071194294 0.071194294
2013-11-29 0.070052705 0.070052705 0.070052705
2013-12-31 0.008901793 0.008901793 0.008901793
2014-01-31 -0.107696737 -0.107696737 -0.107696737
非常感謝您的幫助。與R的方式一樣,我升級到3.3.1,並且qmao在此版本中尚未提供。我想我將不得不得到一個老版本的R –
對不起,只需要加載一些其他的軟件包,但現在都很好。 –