使用R quantmod getSymbols函数提示用户输入下载刻度数据

时间:2011-07-18 19:38:09

标签: r quantmod

我想提示用户输入股票代码的控制台输入(例如GOOG),然后使用R的quantmod包中的getSymbols函数下载给定股票代码的tick数据,并使用quantmod的barChart函数创建一个图表

我有

s1 <- readline("enter a symbol: ")
getSymbols(cat('"',s1,'"',sep=""),src="yahoo")
barChart(s1)

我收到以下错误消息“try.xts中的错误(x,错误=”chartSeries需要一个xtsible对象“):   chartSeries需要一个xtsible对象“

仅使用控制台(不提示输入)我得到以下工作:

> getSymbols("GOOG",src="yahoo")
[1] "GOOG"
> barChart(GOOG)

我错过了什么?

2 个答案:

答案 0 :(得分:3)

s1是一个字符串,它不是一个可以对xts强制的时间序列对象(作为错误状态)

尝试:

s1 <- "AAPL"
getSymbols(s1)
barChart(get(s1))

答案 1 :(得分:3)

您不需要cats1是一个字符向量。 @ Jeff解决方案的另一个选择是关闭自动分配:

s2 <- getSymbols(s1, auto.assign=FALSE)
barChart(s2)

图表的名称将为“s2”,但您可以使用name参数将其更改回股票代码:

barChart(s2, name = s1)