当前价格大于上一根K线收盘价时,就用当前价格买入,出现信号闪烁提示!
if(close>close[1]) {
Buy(0,close);
}
在1分钟周期上如何取当前价格?是用close吗?怎样写才不会提示闪烁?
if(high>close[1]) {
Buy(0,max(o,close[1] + minmove * pricescale));
}
你这样写是可以不闪烁,但是楼主要的就是收盘价比前收高。你这样写是改了楼主原本的策略逻辑
没有改变逻辑。运行结果符合要求的
为何没有?楼主是buy(1,close),就是用当根K线收盘价作为交易价,您这个写法是当当根K线突破上根K线收盘价就做多吧,相当于是用上根K线收盘价close[1]作为交易价,不是一个价格。而且楼主希望的是收盘价确认高于上一根收盘价才做多,您这种写法是但凡当根K线有价格高于close[1]就做多?
你理解错了,楼主的策略需求是
当前bar如果最新价超过前一根收盘价,立即以当前最新价报单
close对于历史数据是收盘价,对于盘中k线,指的最新成交价
看清楚文字描述,当前价格,不是bar收盘价,两回事
可是这位楼主的条件是需要close>close[1],即用当根K线收盘价确认大于close[1]作为触发条件对吧,也就是说必须当根K线走完,这个交易信号才成立对吧。如果写成high>close[1],那就是突破前收即做多,和收盘价确认高于前收做多是两回事
楼主白纸黑字说的很清楚把
当前价格大于上一根K线收盘价时,就用当前价格买入
当前价格,不是收盘!
当前价格,不是收盘!
当前价格,不是收盘!
你把人家的描述都改了?哪里说了要走完?就用当前价格买入这几个字是走完的意思?这个阅读理解不对吧?
那按他中文文字的意思确实是应该写成high>close[1]。我看代码的理解就是收盘价确认高于前收。不过二者回测下来结果必然是有差异的
人家是写错了把错误写法发上来,求助正确写法,你把人家的错误写法当成正确写法质疑了半天。
看不懂这是什么操作
那我说两种写法的计算结果不一样没有问题吧?二者逻辑本就有差异啊