用图表来开仓 用后台来平仓 平仓思路: 以买多为例,持仓50手的时候,立刻在持仓价加2个价位挂20手卖单,在持仓价加3个价位挂15手卖单,在持仓价价加4点挂15手卖单 全部挂单挂完等待成交,如不成交或部分成交,在持仓价减去3个价位 全部撤挂单并市价平仓 谢谢
GLOBALVARIABLE:mark:=0;
if THOLDING=50 then
BEGIN
tsell(1,20,LMT,TAVGENTERPRICE+2*MINDIFF);
tsell(1,15,LMT,TAVGENTERPRICE+3*MINDIFF);
tsell(1,15,LMT,TAVGENTERPRICE+4*MINDIFF);
end
KL:TSUBMIT(2 );//未成交单历时
if KL>N then //N自行设置值
begin
mark:=1;
TCANCELEX(1 ,2 ,'' ,'' );//执行撤单动作
end
if mark then
begin
tsell(tholding>0 and mark,tholding,MKT);//市价平仓
mark:=0;
end
麻烦再修改一下 未成交或部分成交撤单再平仓问题 不是时间控制,是价格来控制,当价格掉头向下跌到成交价减三个价位时,未成交部分全部撤单并挂市价平掉 感谢
稍微改下
GLOBALVARIABLE:mark:=0;
if THOLDING=50 then
BEGIN
tsell(1,20,LMT,TAVGENTERPRICE+2*MINDIFF);
tsell(1,15,LMT,TAVGENTERPRICE+3*MINDIFF);
tsell(1,15,LMT,TAVGENTERPRICE+4*MINDIFF);
end
KL:TSUBMIT(2 );//未成交单历时
if KL>0 and c<TENTERPRICE-3*MINUTE then //用未成交单历时间接判断是否有未成交委托
begin
mark:=1;
TCANCELEX(1 ,2 ,'' ,'' );//执行撤单动作
end
if mark then
begin
tsell(tholding>0 and mark,tholding,MKT);//市价平仓
mark:=0;
end
KL:TSUBMITex(2,'','' );//未成交单历时
完善下这句。
if tholding>0 and mark then
begin
tsell(1,tholding,MKT);//市价平仓
mark:=0;
end