开多条件:=REF(CROSS(-2,K2),1) ;
平多条件:REF(CROSS(K2,0),1);
开空条件:=REF(CROSS(K2,0),1);
平空条件:=REF(CROSS(-2,K2),1);
//交易系统
平空:SELLSHORT(平空条件,0,MARKET);
平多:SELL(平多条件,0,MARKET); 这里开仓后不平仓什么原因呢????
开多:BUY(开多条件,手数,MARKET);
开空:BUYSHORT(开空条件,手数,MARKET);
//止损止盈,实时出场
//多头
止盈1:SELL(H-ENTERPRICE>=15 AND HOLDING>0,1,LIMITR,ENTERPRICE+3);//盈利15个点止盈1手
止盈2:SELL(H-ENTERPRICE>=20 AND HOLDING>0,1,LIMITR,ENTERPRICE+5);//盈利20个点止盈1手
这里止盈1会执行好几次而不是仅仅平一手啥原因呢?
//空头
止盈3:SELLSHORT(ENTERPRICE-L>=15 AND HOLDING<0,1,LIMITR,ENTERPRICE-3);//盈利15个点止盈
止盈4:SELLSHORT(ENTERPRICE-L>=20 AND HOLDING<0,1,LIMITR,ENTERPRICE-5);//盈利20个点止盈
1.你把各个开平仓条件在图表上输出下,看下条件是否成立。不知道K2具体情况,可能是平仓条件有问题。
2.图表的语句有个原则:先平后开。你开仓语句那个地方的语句规范下。
3.你模拟交易用的什么模式,固定轮询?
没平仓就是没有满足平仓条件
如果止盈一次没有全平,后边再达到条件是会继续平才,
如果你要止盈一次要用全局变量记录的。
信号满足了开空的同时就该全平多单,全局变量编该如何写
“信号满足了开空的同时就该全平多单”要平仓反手的话要把平仓条件写在前边。
VARIABLE:n=0;
if n=0 and 止盈条件 then begin
sell();
n:=1; //n=0时才可以止盈,止盈后n赋值为1
end
if 开多条件 then begin
buy();
n:=0; //开仓后把n重置为0
end
[此贴子已经被作者于2017/8/15 14:55:47编辑过]
pyd老师麻烦您帮我把这个写出来我才会比葫芦画瓢编写最好加上那个止赢的全局变量的谢谢了
比如上面的开仓公式,开多我再加个上穿10日线平多还是那个,开空也在加个下穿10日线平空也还是那个,再加上止赢条件这个公式用老师的那个if,then的全局变量的模版应该怎样写?老师您帮写下吧我折腾好几天了