M:EMA(CLOSE,99);
M2:=ref(m,2);
M3:=ref(m,3);
舵手:=M,LINETHICK2,COLORGREEN;
FF1:=REF(M,5);
STICKLINE(cross(FF1,M),LOW,HIGH,5,0),COLORGREEN;
STICKLINE(cross(M,FF1),LOW,HIGH,5,0),COLORRED;
kdd:=M>FF1 and M2>M3;
KKk:=M<FF1 and M2<M3;
KD:=kdd ; //开多条件
PD:=KKk ; //平多条件
KK:=KKk ; //开空条件
PK:=kdd ; //平空条件
平空:SELLSHORT(PK,2,THISCLOSE); //平空信号
开多:BUY(KD AND HOLDING=0,2,THISCLOSE); //开多信号
平多:SELL(PD,2,THISCLOSE); //平多信号
开空:BUYSHORT(KK AND HOLDING=0,2,THISCLOSE); //开空信号
//止盈
IF C-AVGENTERPRICE>50*MINDIFF THEN BEGIN
SELL(1,HOLDING,MARKET);//请教老师,在这里,减去一半的仓位,怎么写,平一半的仓位,它还符合进场的条件,马上又会开仓,我不想再开,只留那一半仓位,怎么写?谢谢老师
END
///////////////////////
请教老师
减半仓,只要HOLDING/2就行了。
SELL(1,HOLDING/2,MARKET);
且系统会自动取整下单。
但是你逻辑要完整点。你这里平一半,剩下一半什么情况平呢。如果没有一个全平的语句,逻辑上是不完整的。
“平一半的仓位,它还符合进场的条件,马上又会开仓,我不想再开”这个不会的啊。你开仓是要仓位=0,有一半仓位情况下,开仓条件也触发不了的。