【发布时间】:2017-06-08 22:17:25
【问题描述】:
当我调用 periodReturns 函数时,我从 Xts 包中收到以下错误。我已经从 github 升级了 Quantmod 和 Xts 包,但错误仍然存在。 谁能建议如何解决这个问题?
谢谢,
getSymbols('AAPL', src = 'yahoo', from = '2016-01-01', auto.assign = T)
> periodReturn(AAPL,by=years,from='2003-01-01')
Error in lag.xts(x1, K.) :
INTEGER() can only be applied to a 'integer', not a 'double'
> sessionInfo()
R version 3.4.0 (2017-04-21)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 8.1 x64 (build 9600)
Matrix products: default
locale:
[1] LC_COLLATE=English_Australia.1252 LC_CTYPE=English_Australia.1252 LC_MONETARY=English_Australia.1252
[4] LC_NUMERIC=C LC_TIME=English_Australia.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] PerformanceAnalytics_1.5.1 quantmod_0.4-9 TTR_0.23-1 xts_0.10-0
[5] zoo_1.8-0
loaded via a namespace (and not attached):
[1] Rcpp_0.12.10 lattice_0.20-35 codetools_0.2-15 IKTrading_1.0
[5] foreach_1.4.4 grid_3.4.0 curl_2.6 boot_1.3-19
[9] blotter_0.11.3 iterators_1.0.8 FinancialInstrument_1.2.0 compiler_3.4.0
[13] quantstrat_0.10.0
【问题讨论】:
-
这看起来与xts issue #180 中讨论的内容非常相似。尝试从 GitHub 重新安装 xts 和/或重新启动 RStudio。另请注意,
by不是periodReturn的参数,因此被忽略...这很好,因为by = years可能会返回错误否则(您可能是指by = "years")。