AlphaVantager 时间序列集 YYYY MM DD HH MM SS

AlphaVantager Time series set YYYY MM DD HH MM SS

我已经使用 R 中的 alphavantager 包下载了数据。我正在尝试将分钟数据设置为时间序列 xts 对象。

rm(list = ls())

library(alphavantager)

AlphaKey <- av_api_key("YOUR API Key (Free) - (obtainable here: https://www.alphavantage.co/support/#api-key)  ")
print(AlphaKey)

args(av_get)

GOOG <- av_get(symbol = "GOOG", av_fun = "TIME_SERIES_INTRADAY", interval = "1min", outputsize = "full")
plot(GOOG$close)   

close_price <- GOOG$close

times <- as.POSIXct(GOOG$timestamp, format="%d/%m/%Y %H:%M")
times
times <-format(GOOG$timestamp, format="%H:%M:%S")
df <- cbind(times, close_price)

当我 运行 is.xts(df) 时,我得到一个输出 FALSE。我正在尝试将 GOOG$timestamp 设置为具有以下格式的 xts 对象:YYYY MM DD HH MM SS 这样我就可以 运行 chartSeries 来自 quantmod 包。

head(GOOG$timestamp)

[1] "2017-10-30 09:30:00 UTC"
[2] "2017-10-30 09:31:00 UTC"
[3] "2017-10-30 09:32:00 UTC"
[4] "2017-10-30 09:33:00 UTC"
[5] "2017-10-30 09:34:00 UTC"
[6] "2017-10-30 09:35:00 UTC"

How can I go about doing this in R?

编辑:我从 chartSeries 函数得到的错误:

chartSeries(df, TA=NULL)

> Error in try.xts(x, error = "chartSeries requires an xtsible object") : 
  chartSeries requires an xtsible object

quantmod不同,alphavantager不会将数据转换为xts对象。因此,您必须自己动手。这应该有效:

df <- xts(GOOG[,-1], order.by = as.POSIXct(GOOG$timestamp))