
等级: 专业版
- 注册:
- 2022-8-5
- 曾用名:
|

楼主 |
发表于 2023-8-14 15:41
|
显示全部楼层
老师您好!我希望flag来标记是否已经执行策略指令,执行策略指令之后符合条件的都不再重复执行,但几乎没起到作用,总是每次符合条件就再次下单,一直到资金用完,被证券公司风控发警示。甚至不按设置“信号执行固定间隔”300秒,随意在1秒钟内连续重复下单2次甚至达4次。恳请老师帮我解决。
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
diff:=EMA(CLOSE,12)-EMA(CLOSE,26);;
Kd:= cross(diff,0);
Pd:=cross(0,diff);
P60FZ:cross(d,k);
//用flag来标记是否已经执行策略指令,执行策略指令之后符合条件的都不再重复执行
GLOBALVARIABLE:flag=0;
if kd and flag=0 and tbuyholding(1)<50 then
begin
tbuy(1,30-tbuyholding(1),lmt,DYNAINFO(34));
flag=1; //用flag来标记是否执行开仓,符合条件只能执行一次,之后符合条件的都不再执行
END
if pd and tbuyholding(1)>0 then
begin
tsell(1,tbuyholding(1),lmt,DYNAINFO(28));
flag=0;
END
if P60FZ and tbuyholding(1)>0 then
begin
tsell(1,50%,lmt,DYNAINFO(28)),PERTRADER;
flag:=1; //用flag来标记是否减过半仓,减仓行为只能进行一次,之后符合条件的都不再执行
END |
|