我一直在使用 Quantmod 的 NewTa 函数创建一些技术指标。我一直在尝试创建一个自定义指标,理想情况下应该使用ChartSeries
. 该指标应显示调整后收盘价的 50 天 EMA 线的斜率。
getSymbols("NOVO-B.CO")
p <- na.omit('NOVO-B.CO')
FiftyEMA <- function(x){
MA <- removeNA((EMA(p[,6],n=50)))
}
SlopeFiftyEMA <- function(x){
run=(FiftyEMA(y)/FiftyEMA(x))
}
Slope.Indicator <- newTA(SlopeFiftyEMA,legend.name = "50 Day EMA Slope of Line Indicator")
Slope.Indicator()
这给了我错误:get.current.chob() 中的错误:设置不正确或缺少图形设备
我还尝试了一个新代码,它给了我一个实际的指标!请让我知道您的想法(如果您认为它看起来正确与否):
首先我将数据导出到excel:(股票数据仍然表示为p
)
write.csv(p,"data")
导入数据
x <- data[,1]
y <- data[,7]
MA <- removeNA(EMA(y,n=50))
length(MA)
MA 的长度 = 1923
l=1:1923
SlopeFiftyEMA <- function(x){
(diff(MA)/diff(l))
}
Slope.Indicator <- newTA(SlopeFiftyEMA,legend.name = "50 Day EMA Slope of Line Indicator")
twelvemonths="last 12 months"
chartSeries(p,subset = twelvemonths,theme = 'white',up.col = 'blue',dn.col = 'grey',name ="Custom Indicators")
Slope.Indicator()
任何输入任何人?我上次发帖时没有指标
提前致谢!