【发布时间】:2023-03-05 11:11:01
【问题描述】:
我是 R 新手,在项目中使用 quantmod() 包。以下代码块有效:
require(quantmod)
stocks<-c("MMM", "MSFT", "BP")
for(i in 1:length(stocks)){
getSymbols(stocks[i], from= "2013-07-01")
s<-get(stocks[i])
dr<-dailyReturn(s)
print(paste(dr))
}
但是,我需要参考特定的列来计算 TTR 包中的一些技术分析指标。例如:
open<-MMM$MMM.Open
RSI(open, n=14)
当我检查时:
identical(s, BP) #TRUE
这很有效:
BP$BP.Open
但是,这不起作用:
s$s.Open #NULL
为了提供足够的上下文,我的目标是遍历股票向量,检查 ] 条件,然后计算当天的一些技术分析和时间序列数据,并将其复制到 ARFF 文件中,用作训练示例机器学习环境(Weka)。谢谢。
【问题讨论】:
-
s$s.Open不起作用,因为列名称基于对象中存储的数据的股票代码,而不是基于对象名称本身。如果您考虑一下,getSymbols无法知道您将其输出分配给的对象的名称。
标签: r get finance quantmod trading