我的问题是两个:1、如下的BUY函数,回测时显示当前BAR就开仓了,这显然是不切实际的,肯定是当前BAR之后的BAR才能开仓,这个如何解决?
2、如下的SELL函数,回测时还有当前BAR低点买入,接下来高点卖出的情况,所以我在想最少需要当前BAR不允许开仓和平仓,并且最好开仓BAR不允许平仓才比较契合实际吧?这个如何解决?求老师指导,谢谢!
后面我会附公式和出问题的截屏。
附公式:
BUY(COND,5,LIMITR,CLOSE-1*MINDIFF);
IF HIGH-AVGENTERPRICE>3*MINDIFF THEN BEGIN
SELL(HOLDING>0,100%,LIMITR,ENTERPRICE+4*MINDIFF);
END
IF AVGENTERPRICE-CLOSE>4*MINDIFF THEN BEGIN
SELL(HOLDING>0,100%,MARKET);
END
此主题相关图片如下:1.png

[此贴子已经被作者于2021/2/4 22:23:42编辑过]
1、回测时要下个周期开仓可以把LIMITR 改成 LIMIT ,比如 :BUY(COND,5,LIMITR,CLOSE-1*MINDIFF);
2、在平仓条件中加上开仓历时函数ENTERBARS ,作为平仓的条件之一即可实现当根K开仓不平仓
老师你好,是不是用LIMIT,图表中显示的是当前·bar开仓的,但是在回测是下一周期开始的是吗?