期指开仓后如果我要固定2点止损(如3000点买入开仓,当指数为2998点就止损),
1、如果盈利1点,止盈位就保0.2个点(3000点买入开仓,当指数为3001点就止盈位跳到3000.2)。
2、如果盈利3点,止盈位就保1.4个点(3000点买入开仓,当指数为3003点就止盈位跳到3001.4)。
请老师帮忙解决
,谢谢!
//以多头为例
if ENTERPRICE-l>=2 then
sell(holding>0,holding,market);
if h-ENTERPRICE>=1 then
sell(holding>0,holding,limit,ENTERPRice+0.2);
if h-ENTERPRICE>=3 then
sell(holding>0,holding,limit,ENTERPRICE+1.4);
有多头,空头,完整的代码吗?
//多头
if ENTERPRICE-l>=2 then
sell(holding>0,holding,market);
if h-ENTERPRICE>=1 then
sell(holding>0,holding,limit,ENTERPRice+0.2);
if h-ENTERPRICE>=3 then
sell(holding>0,holding,limit,ENTERPRICE+1.4);
//空头
if h-ENTERPRICE>=2 then
sellshort(holding<0,holding,market);
if ENTERPRICE-l>=1 THEN
sellshort(holding<0,holding,limit,ENTERPRICE-0.2);
if ENTERPRICE-l>=3 THEN
sellshort(holding<0,holding,limit,ENTERPRICE-1.4);
改成专业版带后台,测试,怎么不行呢?
这是图表交易代码,您自己改成后台了?
模拟交易测试不行?
程序1:
MACD_1:stkindi('','MACD.macd1',0,1,0);
MACD_DEA1:stkindi('','MACD.DEA',0,1,0);
MACD_DIFF1:stkindi('','MACD.DIFF',0,1,0);
TT:cross(MACD_DIFF1,MACD_DEA1);
程序2:
v1_min1:=stkindi('','程序1.TT',0,1);
v2_min1:=stkindi('','程序1.TT',0,1);
if v1_min1 and tholding=0 then begin tbuy(tbuyholding(0)=0,1,mkt);
if v2_min1 and tholding=0 then begin tbuyshort(tsellholding(0)=0,1,mkt);
if h-ENTERPRICE>=2 then tsellshort(1,0,mkt);
if ENTERPRICE-l>=2 then tsell(1,0,mkt);
if ENTERPRICE-l>=1.2 THEN tsellshort(1,0,mkt);
if h-ENTERPRICE>=1.2 then tsell(1,0,mkt);
if ENTERPRICE-l>=1.4 THEN tsellshort(1,0,mkt);
if h-ENTERPRICE>=1.4 then tsell(1,0,mkt);
if v1_min1 and tholding=0 then begin tbuy(tbuyholding(0)=0,1,mkt);
if v2_min1 and tholding=0 then begin tbuyshort(tsellholding(0)=0,1,mkt);
这两行少了end
enterprice 是图表函数,需要换成 tENTERPRICE