因此,我想下载索引的数据,但无法获取数据。问题在于Yahoo.finance认为索引的代码在它们前面有一个^,例如,^ VIX而不是VIX。不幸的是,我的代码不喜欢那样。我找不到任何函数或替代方法来调用此数据。另外,我真的不想更改从中获取数据的平台,对于其余的代码,这将是一个巨大的麻烦。
我尝试将^和资产一起放入,它不会下载数据。我还尝试了不使用^调用数据,并且给出了错误的数据。
asset <- "VIX"
ticker <- "VIX"
start.date <- as.Date('2009-09-01')
getSymbols(ticker, src='yahoo', from=start.date)
Adj.Close <- get(ticker)[,6]
当我把它放进去时,我最终得到以下消息:
Error in get(ticker) : object '^VIX' not found
感谢您的时间,无论您是否知道解决方案。
答案 0 :(得分:0)
我无法确认您的问题。此处不需要前导"^"
符号。
运行
library(quantmod)
ticker <- "VIX"
start.date <- as.Date('2009-09-01')
getSymbols(ticker, src='yahoo', from=start.date)
将自动将输出存储在名为xts
的{{1}}对象中
VIX
请注意,如果避免将head(get(ticker))
# VIX.Open VIX.High VIX.Low VIX.Close VIX.Volume VIX.Adjusted
#2014-12-04 28200.4 30096.9 27953.0 28447.7 811330 28447.7
#2014-12-05 26551.2 27540.7 25974.0 26056.5 377529 26056.5
#2014-12-08 25231.9 26056.5 23582.8 23582.8 367585 23582.8
#2014-12-09 23582.8 23582.8 21274.0 21274.0 570963 21274.0
#2014-12-10 19789.7 20202.0 19212.5 19295.0 539795 19295.0
#2014-12-11 18635.3 19295.0 17398.5 17728.3 1053637 17728.3
的输出自动分配给当前环境,可以避免执行get
步骤:
getSymbols
答案 1 :(得分:0)
我假设Maurits正在寻找VIX指数的数据,在这种情况下,我发现有必要将置克拉纳入克拉克。在上一个答案的基础上,我们可以看到使用“ ^ VIX”行情自动收录器时会返回有效对象。
library(quantmod)
start.date <- as.Date('2009-09-01')
ticker <- "^VIX"
getSymbols(ticker, src='yahoo', from=start.date)
[1] "^VIX"
但是,get
无法找到该对象:
head(get(ticker))
Error in get(ticker) : object '^VIX' not found
但是,在get
中使用“ VIX”而不是“ ^ VIX”会返回所需的结果:
head(get("VIX"))
VIX.Open VIX.High VIX.Low VIX.Close VIX.Volume VIX.Adjusted
2009-09-01 26.01 29.23 26.00 29.15 0 29.15
2009-09-02 29.14 29.57 28.41 28.90 0 28.90
2009-09-03 28.90 28.90 26.98 27.10 0 27.10
2009-09-04 26.98 26.98 24.86 25.26 0 25.26
2009-09-08 25.26 26.15 25.26 25.62 0 25.62
2009-09-09 25.66 25.93 24.23 24.32 0 24.32