У меня есть сценарий ниже, который показывает исторические цены акций просто отлично, но я не могу получить список тикеров по дате с корректированными ценами.Я получаю 25 акций и заголовки, которые выглядят следующим образом: $ df.tickers, price.open, price.high, price.low, price.close, объемная цена.Я не понимаю, что когда я набираю 'out', я получаю набор данных, но когда я печатаю dim (out), я получаю ноль.Это не имеет никакого смысла.В любом случае, я пытаюсь запустить код по ссылке ниже.
http://programmingforfinance.com/2017/10/portfolio-optimization-with-r/
Вот код, с которым я работаю.
library(BatchGetSymbols)
library(sqldf)
library(dplyr)
# set dates
first.date <- Sys.Date() - 360
last.date <- Sys.Date()
# set tickers
tickers <- c('MMM','ABT','ABBV','ABMD',
'ACN','ATVI','AYI','ADBE','AMD','AAP',
'AES','AET','AMG','AFL','A','APD','AKAM',
'ALK','ALB','ARE','ALXN','ALGN','ALLE','AGN','ADS')
out <- BatchGetSymbols(tickers = tickers,
first.date = first.date,
last.date = last.date,
cache.folder = file.path(tempdir(),
'BGS_Cache') ) # cache in tempdir()
# dim(out$df.tickers)
# 6175 10
# After downloading the data, we can check the success of the process for each ticker.
# Notice that the last ticker does not exist in yahoo finance or google and therefore
# results in an error. All information regarding the download process is provided in the dataframe df.control:
# print(out$df.control)
price_adjusted <- as.data.frame(out)
price_final <- subset(price_adjusted, select = c(df.control.ticker, df.tickers.price.adjusted, df.tickers.ref.date))
# df_final <- subset(price_final, df.control.ticker == 'MMM', select = c("df.control.ticker","df.tickers.price.adjusted","df.tickers.ref.date"))
Я считаю, что API Google был отключен в прошлом году, и поэтому вы больше не можете получать исторические цены акций от Google.Есть мысли о том, как заставить это работать?Спасибо!