IF HOLDING=0 THEN BEGIN //如果当前是没有持仓的状态
IF KDTJ=1 THEN //且满足开多条件
BUY(HOLDING=0,30%,LIMITR,HH20),ignorecheckprice;//开多单
TIMES=1;
WHILE C>ENTERPRICE+ATR*0.5 AND TIMES<4 DO BEGIN
BUYP:=MAX(H,ENTERPRICE+ATR*0.5);
BUY(HOLDING>0,10%,LIMITR,BUYP),ignorecheckprice;
TIMES:=TIMES+1;
END
END
请教老师,帮忙看看,怎么没有加仓动作,错误出现在哪?还是写法上有错误?怎么修改?
[此贴子已经被作者于2017/12/11 9:05:07编辑过]
代码中的times需要用全局变量标记,放在if的上面进行定义全局变量,如:variable:times=1
可以在图表上分别输出c>enterprice+atr*0.5、times和holding,看下这三个条件的值分别是多少,满足了才会触发加仓的动作。
图表程序化调试参考链接:http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=1246