MACD 信号发生器 R

MACD signal generator R

简单的循环题。试图找到一个循环(不是首选)或其他任何东西来为 stoch 发出信号。如果差异 <1、>-1、1,否则为 0。

library(quantmod)

getSymbols("SPY", src="yahoo", from="2013-01-01", to="2015-05-01")

y <- na.omit(merge(SPY, SMI(Cl(SPY))))

y$diff <- y$SMI - y$signal

# if Diff <1, >-1, then 1, else 0. 

如果关于您对@MrFlick 的评论的问题是您想要将差值 (y$diff) 映射到低于 -1 的值到 -1,高于 1 的值映射到 1,其余值映射到 0,此行将这样做:

y$diff.map <- ifelse(y$diff>1,1,ifelse(y$diff< -1,-1,0))

在回复您更新的评论时,下面的行会将 -1 和 +1 之间的值映射到 1,并将此范围之外的值映射到零。

y$diff.map <- ifelse(y$diff >= -1 & y$diff <= 1,1,0)