r - 无法使用 quantmod 显示来自雅虎的开盘价数据

标签 r quantmod

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/

相关文章:

r - install.packages 安装远远超过 package_dependencies

r - Quandl、Quantmod 或 TrueFX 每小时数据

r - 如何从雅虎(使用 Quantmod)获取 ETF 财务信息(例如 NAV)?

r - 使用 ChartSeries 对日内数据进行子集化

r - 从 R 中的每日价格计算月 yield

r - 如何更改 flexdashboard 值框中的 fa-icon 大小?

r - 使用R Shiny整合时间序列图和传单 map

r - 返回单个条形的堆积条形图

r - 在 R xmlGetAttr 的一条语句中选择多个元素?

r - 将日内数据加载到 R 中以使用 quantmod 进行处理