【发布时间】:2016-10-16 02:02:05
【问题描述】:
我有一段代码(如下)正在尝试纠正。目标是检查是否有连续 7 个积极的日子(收盘价高于开盘价)。然后,如果这是真的,我们将在第 8 天放置一个二进制值,即如果为真,则为 1,如果为假,则为 0。
seven.bar.buy = function(open,close,n){
seven.bar.buy = rep(0, length(open))
for(i in (n+2):length(open)){
for(j in (i-n-1):(i-1)){
if(open[(i-n-1):(i-1)]<close[(i-n-1):(i-1)]){
seven.bar.buy[i] == 1
}
}
}
return(seven.bar.buy)
}
seven.bar.buy(open = Op(EURUSD.st1), close = Cl(EURUSD.st1), n = 7)
上面的代码运行没有错误,但是输出的是一个 0 的向量。
我认为错误来自第 5 行,我试图在单个 if 语句中比较 7 个连续关闭和打开,然后将二进制值分配为真/假。
我知道一个事实,即欧元/美元的样本 OHLC 数据中确实存在连续 7 天的上涨,因此它不应该是 0 的向量。
有没有办法解决这个问题?这是唯一的错误吗?
【问题讨论】:
标签: quantmod financial trading