代码:
FUND := 10000000; //资金
LOTS := INTPART(FUND*0.4/(C*MARGIN*UNIT+FEE));//计算开仓手数
KTIME:CLOSEMINUTE>15;
//定义常规K线
KXST:=ABS(O-C);
SYXCD:=H-MAX(O,C);//上影线长度
XYXCD:=MIN(O, C)-L;//下影线长度
YXCD:=H-L;//影线长度
BT:=KXST>YXCD*0.5;//棒体
//定义十字星
SZXST:=KXST<ATR*0.1;//十字星的实体
SZX:=SZXST AND SYXCD>0 AND XYXCD>0;//十字星定义
//早晨之星
//第三天的上涨棒体
ZCZX1:=BT AND YXCD>0.5*ATR AND C=HHV(C,3) AND H>=HHV(H,2);
//第二天的十字星
ZCZX2:=REF(SZX,1) AND REF(L,1)=LLV(L,3) AND REF(H,1)<REF(H,2) ;//早晨之星第二根是星线,最低价为形态最低价
//第一天的下跌棒体
ZCZX3:=REF(BT,2) AND REF(C,2)<REF(C,3) AND REF(YXCD,2)>0.5*ATR;
//定义早晨之星
ZCZX:=ZCZX1 AND ZCZX2 AND ZCZX3;
//黄昏之星
//第三天的下跌棒体
HHZX1:=BT AND YXCD>0.5*ATR AND C<=LV(L,1);
//第二天的十字星
HHZX2:=REF(SZX,1) AND REF(H,1)=HHV(H,3) AND REF(L,1)>REF(L,2);
//第一天的上涨棒体
HHZX3:=REF(BT,2) AND REF(C,2)>REF(C,3) AND REF(YXCD,2)>0.5*ATR;
//定义黄昏之星
HHZX:=HHZX1 AND HHZX2 AND HHZX3 ;
//定义三根阳棒体
SGHBT1:=EVERY(ISUP,3);//三根都是阳线
SGHBT2:=EVERY(BT,3);//三根都是棒体
SGHBT:=SGHBT1 AND SGHBT2;
//定义三根阴棒体
SGYBT1:=EVERY(ISDOWN,3);//三根都是阴线
SGYBT2:=EVERY(BT,3);//三根都是棒体
SGYBT:=SGYBT1 AND SGYBT2;
KKXH:=SGHBT OR ZCZX;
KDXH:=SGYBT OR HHZX;
KKXH AND KTIME,SK(LOTS);//以收盘价卖出
BARSSK=1,BP(SKVOL);//第二天收盘价,买入
KDXH AND KTIME,BK(LOTS);//以收盘价买入
BARSBK=1,SP(BKVOL);//第二天,以收盘价卖出
|