arbuzovv / rusquant

Official version of rusquant package for R
http://rusquant.ru
GNU General Public License v3.0
45 stars 20 forks source link

Ошибка в `[.data.frame`(fr, , (5:6)) :undefined columns selected #6

Closed Ranlod closed 4 years ago

Ranlod commented 5 years ago

Добрый день.

При использовании примера

library(rusquant)
getSymbols("SBER", from=Sys.Date()-2, src="Finam", period="tick")

Выдаёт ошибку: Ошибка в [.data.frame(fr, , (5:6)) :undefined columns selected Я смотрел похожий закрытый issues, там вы указывали на то что это был выходной день, но сейчас это получается понедельник и там данные у финама за 21.01 есть.

Traceback

9. stop("undefined columns selected") 
8. `[.data.frame`(fr, , (5:6)) at getSymbols.R#449
7. fr[, (5:6)] at getSymbols.R#449
6. as.matrix(fr[, (5:6)]) at getSymbols.R#449
5. apply(as.matrix(fr[, (5:6)]), 2, as.numeric) at getSymbols.R#449
4. xts(apply(as.matrix(fr[, (5:6)]), 2, as.numeric), as.POSIXct(strptime(paste(fr[, 
    3], fr[, 4]), "%Y%m%d %H%M%S")), src = "finam", updated = Sys.time()) at getSymbols.R#449
3. getSymbols.Finam(Symbols = "SBER", env = <environment>, verbose = FALSE, 
    warnings = TRUE, auto.assign = TRUE, from = structure(17916, class = "Date"), 
    period = "tick") 
2. do.call(paste("getSymbols.", symbol.source, sep = ""), list(Symbols = current.symbols, 
    env = env, verbose = verbose, warnings = warnings, auto.assign = auto.assign, 
    ...)) 
1. getSymbols("SBER", from = Sys.Date() - 2, src = "Finam", period = "tick") 

Ругается на 449 строку в файле getSymbols.R

Версия пакета rusquant 0.4.0, установлена из вашего гита, версия на r-forge выдаёт такую же ошибку :(

Спасибо.

arbuzovv commented 4 years ago

Основная проблема была в том, что теперь с Финама можно выгружать тики только за один день. getSymbols("SBER", from=Sys.Date(), src="Finam", period="tick") При такой записи должно выгружать, версия обновлена, поэтому лучше установить свежую, чтобы уж точно раборало