对于下面代码
// 建议周期:>5M
// 基本思想:入场条件:
// 分别计算昨天高点,低点,收盘;根据昨天的高低收和今天的开盘计算上下轨道
// 开多条件:突破上轨;
// 开空条件:突破下轨;
//初始参数:
//LMULT:0.3;1;0.8
//SMULT:0.3;1;0.8
//=========================程序代码==========================
INPUT:LMULT(0.8,0.3,1,0.1);
INPUT:SMULT(0.8,0.3,1,0.1);
//前期定义
N:=BARSLAST(DATE<>REF(DATE,1));//开盘到现在的bar数
OLAST:REF(O,REF(N,N+1)+N+1);//昨天的开盘价
CLAST:=REF(C,N+1);//昨天的收盘价
HLAST:=REF(HHV(H,N+1),1+N);//昨天的最高价
LLAST:=REF(LLV(L,N+1),1+N);//昨天的最低价
OTODAY:=VALUEWHEN(DATE<>REF(DATE,1),O);//今天的开盘价
SPREADVALUE1:=MAX(HLAST-CLAST,CLAST-LLAST);
SPREADVALUE2:=MIN(CLAST-LLAST,HLAST-CLAST);
UPLINE:=IFELSE(CLAST>OLAST,SPREADVALUE2,SPREADVALUE1);
DOWNLINE:=IFELSE(CLAST<OLAST,SPREADVALUE2,SPREADVALUE1);
//入场
IF H>OTODAY+LMULT*UPLINE THEN BEGIN
SELLSHORT(HOLDING<0,1,LMT,MAX(OPEN,OTODAY+LMULT*UPLINE));
BUY(HOLDING=0,1,LMT,MAX(OPEN,OTODAY+LMULT*UPLINE));
END
IF L<OTODAY-SMULT*DOWNLINE THEN BEGIN
SELL(HOLDING>0,1,lmt,MIN(OPEN,OTODAY-SMULT*DOWNLINE));
BUYSHORT(HOLDING=0,1,lmt,MIN(OPEN,OTODAY-SMULT*DOWNLINE));
END
在操盘训练营中训练格式下,时间选择为: