getSymbols("2222.SR")
[1] "2222.SR"
OPEN1<-Op(2222.SR)
Error: unexpected symbol in "OPEN1<-Op(2222.SR"
我期待 R 给我开盘价,但由于某种原因它给了我这个错误,尽管它能够从 yahoo 获取该数据。顺便说一句,我正在使用 quantmod。
我是这方面的初学者,所以我不知道出了什么问题:(。这是雅虎金融在沙特股票市场上的一只股票。我用另一只沙特股票试过同样的方法,但仍然没有用我还尝试了收盘价等其他功能,得到了相同的结果:
getSymbols("7010.SR")
[1] "7010.SR"
Warning message:
7010.SR contains missing values. Some functions will not work if objects contain missing values in the middle of the series. Consider using na.omit(), na.approx(), na.fill(), etc to remove or replace them.
OPEN2<-Op(7010.SR)
Error: unexpected symbol in "OPEN2<-Op(7010.SR"
我也用美国交易的股票试过它,它奏效了。
最佳答案
您遇到的问题是,如果您使用 getSymbols("2222.SR")
,它会在您的环境中创建一个名为 2222.SR 的对象。但是因为它在对象名称中以数字开头,所以您不能只用 Op("2222.SR")
调用它。那会给你这个错误。您需要使用反引号来访问此对象或告诉 getSymbols 不要自动分配对象名称。
带反引号的代码:
library(quantmod)
# with the use of backticks
getSymbols("2222.SR")
OPEN1 <- Op(`2222.SR`)
head(OPEN1)
2222.SR.Open
2019-12-11 29.09091
2019-12-12 31.98347
2019-12-15 30.66116
2019-12-16 30.99173
2019-12-17 31.44628
2019-12-18 30.99173
没有反引号的代码:
aramco <- getSymbols("2222.SR", auto.assign = FALSE)
OPEN1 <- Op(aramco)
head(OPEN1)
2222.SR.Open
2019-12-11 29.09091
2019-12-12 31.98347
2019-12-15 30.66116
2019-12-16 30.99173
2019-12-17 31.44628
2019-12-18 30.99173
关于r - 无法使用 quantmod 显示来自雅虎的开盘价数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74272576/