下载所有标准普尔 500 指数公司每日最高市场价格数据
download all S&P 500 companies daily highest market price data
我想通过 R 下载所有标准普尔 500 指数公司的每日最高市场价格数据。我能做到这一点的最简单方法是什么。数据会是这样
Date MSFT AAPL GOOGL
25-01-05 21.03 4.87 88.56
26-01-05 21.02 4.89 94.62
27-01-05 21.10 4.91 94.04
28-01-05 21.16 5.00 95.17
31-01-05 21.24 5.20 97.81
quantmod 提供了该功能。
require(quantmod)
getSymbols(c("MSFT", "AAPL", "GOOGL"), auto.assign = TRUE, from = "2005-01-05",src="google")
然后,只需获取收盘价,即每个 table 的第二列。它将为您提供 3 种资产收盘价的列表。
high = lapply(list(AAPL, GOOGL, MSFT), function(x) x[,2])
如果您需要矩阵:
df = data.matrix(as.data.frame(high))
我设法使用下一个代码做了类似于这个问题的事情。
library(BatchGetSymbols)
library(qmao)
library(tidyr)
library(xts)
library(Quandl)
library(quantmod)
first.date <- ("2018/03/01")
last.date <- ("2019/03/31")
df.SP500 <- GetSP500Stocks()
tickers <- df.SP500$company
getSymbols(tickers, auto.assign = TRUE, from =first.date, to= last.date )
rm(first.date,last.date,df.SP500,tickers)
nt<-ls()
ClosePrices <- do.call(merge, lapply(nt, function(x) Cl(get(x))))
rm(list=setdiff(ls(), "ClosePrices"))# be carefull this line delets all other objects from enviroment
希望对您有所帮助
我想通过 R 下载所有标准普尔 500 指数公司的每日最高市场价格数据。我能做到这一点的最简单方法是什么。数据会是这样
Date MSFT AAPL GOOGL
25-01-05 21.03 4.87 88.56
26-01-05 21.02 4.89 94.62
27-01-05 21.10 4.91 94.04
28-01-05 21.16 5.00 95.17
31-01-05 21.24 5.20 97.81
quantmod 提供了该功能。
require(quantmod)
getSymbols(c("MSFT", "AAPL", "GOOGL"), auto.assign = TRUE, from = "2005-01-05",src="google")
然后,只需获取收盘价,即每个 table 的第二列。它将为您提供 3 种资产收盘价的列表。
high = lapply(list(AAPL, GOOGL, MSFT), function(x) x[,2])
如果您需要矩阵:
df = data.matrix(as.data.frame(high))
我设法使用下一个代码做了类似于这个问题的事情。
library(BatchGetSymbols)
library(qmao)
library(tidyr)
library(xts)
library(Quandl)
library(quantmod)
first.date <- ("2018/03/01")
last.date <- ("2019/03/31")
df.SP500 <- GetSP500Stocks()
tickers <- df.SP500$company
getSymbols(tickers, auto.assign = TRUE, from =first.date, to= last.date )
rm(first.date,last.date,df.SP500,tickers)
nt<-ls()
ClosePrices <- do.call(merge, lapply(nt, function(x) Cl(get(x))))
rm(list=setdiff(ls(), "ClosePrices"))# be carefull this line delets all other objects from enviroment
希望对您有所帮助