【问题标题】:Working with multiple xts objects - getSymbols in R使用多个 xts 对象 - R 中的 getSymbols
【发布时间】:2020-07-20 16:48:28
【问题描述】:

如何处理来自 Yahoo Finance 的多个数据集(xts 格式)?

tickers <- c('^GSPC','JSE.JO')

getSymbols(tickers, from = "2008-01-01", to = "2011-12-31")

我现在必须对每个数据集应用技术分析技术吗? 我从两只股票开始,但最终想将计划扩大到 100 只股票。 我正在寻找一个简单的“for”循环来应用于每个数据集。

谢谢! :)

【问题讨论】:

  • 欢迎堆栈溢出。 lapply(tickers, function(ticker) getSymbols(tickers, from = "2008-01-01", to = "2011-12-31")) 可能会完成这项工作。我建议花一些时间学习RThis 可能是一个好的开始。请阅读guidelines 以发布好的问题。

标签: r finance quantmod yahoo-finance technical-indicator


【解决方案1】:

对于批处理符号,除了 quantmod 之外,您还可以使用包 BatchGetSymbols,或者您可以使用 tidyquant 包。请参阅下面的示例。

BatchGetSymbols 将提取所有数据并创建一个包含条目的列表。 1 包含检索到的股票的概述以及是否成功,以及 1 个包含所有数据的 data.frame。

tickers <- c('^GSPC','JSE.JO')

library(BatchGetSymbols)

ticker_list <- ticker_list <- BatchGetSymbols(tickers, first.date = "2008-01-01", last.date = "2011-12-31")

或者打包 tidyquant 以获取整洁格式的数据。如果有无法检索的数据,这也会返回一条消息。:

library(tidyquant)
ticker_tidy <- tq_get(tickers, from = "2008-01-01", to = "2011-12-31")

或者只是 quantmod,但随后所有内容都会在列表中。

tickers_data <- lapply(tickers, getSymbols, from = "2008-01-01", to = "2011-12-31", auto.assign = FALSE)
names(tickers_data) <- tickers

只需选择您的偏好。

【讨论】:

    猜你喜欢
    • 2015-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-06
    • 2012-08-05
    相关资源
    最近更新 更多