r软件包,Quantmod似乎在使用stocksymbols((函数时从Google访问公司时很难。
这是我从纽约证券交易所追随的公司的列表,只是前30个:
NYSE
[1] "A" "AA" "AAC" "AAN" "AAP" "AAT" "AAV" "AB" "ABB"
[10] "ABBV" "ABC" "ABEV" "ABG" "ABM" "ABR" "ABR-PA" "ABR-PB" "ABR-PC"
一切正常工作,直到到达ABR-PA然后返回错误消息。
我以为可以解决这个问题的一种方法是通过在它上运行GSUB来替代某些语言,这有所帮助,但我仍然缺少〜3500列表中的1%的公司。
这是GSUB:
NYSE <- gsub("-PK","-K",gsub("-PJ","-J",gsub("-PI","-I",gsub("-PH","-H",gsub("-PG","-G",gsub("-PF","-F",gsub("-PE","-E",gsub("-PD","-D",gsub("-PC","-C",gsub("-PB","-B",gsub("-PA","-A",NYSE)))))))))))
如果有人在渴望听到一些想法之前就解决了这个问题。
您可以尝试以下两个可能的解决方案:
getSymbols("ABR-PA", auto.assign=FALSE)
和/或
getSymbols(`ABR-PA`)
下载多个股票的数据:
NYSE = c("A", "AA", "AAC", "AAN", "AAP", "AAT", "AAV", "AB", "ABB",
"ABBV", "ABC", "ABEV", "ABG", "ABM", "ABR", "ABR-PA", "ABR-PB",
"ABR-PC")
data = lapply(NYSE, function(x) {
getSymbols(x, from="2007-01-01", auto.assign=FALSE)
})
df = do.call(merge, data)
df