【发布时间】:2017-02-07 19:00:46
【问题描述】:
社区,这是我的代码。它运行时没有错误或警告。 顺便说一句,如果您查看 x.df(最终数据库),SMA 和布林带列有问题。 它们都是“NA”填充的。然后,BBands 在合并后删除了一些列。 怎么了?
library(quantmod)
stockData <- new.env() #Make a new environment for quantmod to store data in
tickers <- c("AAPL","GOOG","YHOO","FB") # choose Symbols
start_date <- as.Date("2014-01-01") #Set start date
getSymbols(tickers, src="yahoo", env=stockData, from=start_date) # get data
x <- list()
# loop on tickers
for (i in 1:length(tickers)) {
x[[i]] <- get(tickers[i], pos=stockData) # get data from stockData environment
colnames(x[[i]]) <- c("Open", "High", "Low", "Close","Volume", "Adjusted") # rename Header for all tables in list
x[[i]]$gl <-((Cl(x[[i]])-Op(x[[i]]))/Op(x[[i]]))*100 # Daily gain loss percentage
SMA.n10 <- SMA(x[[i]][,4],n = 10) # Calculate moving averages (MA) on "Close Price" <-column(4)
BBands<- BBands(x[[i]][,2:4])
x[[i]]$Symbol<- 0 # create "0" vector for Symbol name
x[[i]]$Symbol<- tickers[[i]] # add Symbol name
x[[i]]<-data.frame(x[[i]],SMA.n10[[i]],BBands[[i]]) # merge data
}
x.df<- do.call(rbind, x) # call rbind to merge all xts objs in a single dataframe
谢谢
编辑: 我的目标是获得具有以下列的单个数据框 (x.df):
“开盘”、“高”、“低”、“收盘”、“成交量”、“调整”、符号、“SMA10”、“dn”、“mavg”、“上”、“pctB”。
但是,如果您运行代码,您可以在 SMA 列上看到 NA 值。 然后没有关于“dn”、“mavg”、“up”、“pctB”(布林带值)的痕迹。
【问题讨论】:
-
描述更多...