下面的示例在股票 (IBM) 的每日跌幅超过 10% 时创建买入信号 (1)。
然后它会创建一个额外 4 天的保持信号。如果保留天数增加,代码将变得更加不守规矩。有没有办法使用 apply 函数或类似效率的东西(即,不是 for 循环)重写 holdig 代码?
library(quantmod)
getSymbols("IBM")
buysig <- Lag(ifelse(dailyReturn(IBM) < -.10,1,0))
holdsig <- ifelse( Lag(sig) == 1 | Lag(sig, k=2) == 1 | Lag(sig, k=3) == 1 | Lag(sig, k=4) == 1, 1, 0)
每次我觉得自己在应用方面变得更好时,我都会后退两步。