老师能不能帮我把这个改成我文化那个模式?
RSV:= (CLOSE-LLV(LOW,N1))/(HHV(HIGH,N1)-LLV(LOW,N1))*100;
K:=SMA(RSV,M1,1);
D:=SMA(K,M2,1);
J:=3*K-2*D;
手数:=ss;
//交易条件
开多平空条件:=CROSS(K,D) ;
开空平多条件:=CROSS(D,K) ;//开空平多条件
平空条件:=CROSS(K,D);
平多条件:=CROSS(D,K);//开空平多条件
//交易系统
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(开多平空条件,手数,MARKET);
开空:BUYSHORT(平多条件,手数,MARKET);
当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;
RSV:= (CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
FASTK:=SMA(RSV,N3,1);
K:SMA(FASTK,N1,1);
D:SMA(K,N2,1);
A:=TIME>=0920&&TIME<1600;//每天开盘后9点20以后开始交易1600点之前开仓
CROSS(K,D)&&A,BK;
CROSSDOWN(K,D),SP;
CROSSDOWN(K,D)&&A,SK;
CROSS(K,D),BP;
TIME>=1600&&TIME<2100,CLOSEOUT;//16点前全部平仓不留过夜
CHECKSIG(CLOSEOUT,'A',0,'C',0,0);//全部平仓
AUTOFILTER;
T1:time>=32000 and time<100000;//金字塔下有金字塔时区和北京时区区分,这里用的是金字塔时区,对应的北京时间是9点20到下午四点。
T2:time>100000 and time<150000;
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(开多平空条件
AND T1,手数,MARKET);
开空:BUYSHORT(平多条件
AND T1,手数,MARKET);
IF T2 then //4点之后平仓
begin
SELLSHORT(1,holding,MARKET);
SELL(1,holding,MARKET);
end
其实就是计算一个time判断值加入到开平仓条件里面就行了,只是需要注意time在不同时区下返回值差异,。你可以把time值输出到图表上看下就行了。我从你代码里面判断你这个是用在外盘的代码,因此这里的time判断是对应外盘下的time输出。