等级: 专业版
- 注册:
- 2024-6-21
- 曾用名:
|
楼主 |
发表于 2024-10-9 12:25
|
显示全部楼层
看不太明白,我举个例子(假如有下面两套策略),帮我看看stkindi在哪个策略里编写?需要再新建一个策略专门写么?
策略1
//中间变量
MA1:=MA(CLOSE,10);
MA2:=MA(CLOSE,30);
手数:=1;
//交易条件
开多条件:=CROSS(MA1,MA2);//开多条件
开空条件:=CROSS(MA2,MA1);//开空条件
平多条件:=C<MA2; //平多条件
平空条件:= C>MA2;//平空条件
//交易系统
if HOLDING=0 THEN BEGIN
TBUY(开多条件,手数,MKT);
BUY(开多条件,手数,MARKET);
TBUYSHORT(开空条件,手数,MKT);
BUYSHORT(开空条件 ,手数,MARKET);
END
if HOLDING>0 THEN BEGIN
TSELL(平多条件,手数,MKT);
SELL(平多条件,手数,MARKET);
END
if HOLDING<0 THEN BEGIN
TSELLSHORT(平空条件,手数,MKT);
SELLSHORT(平空条件,手数,MARKET);
END
策略2
MA25:=EMA(CLOSE,25);
DIFF:=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA:=EMA(DIFF,9);
MACD:=2*(DIFF-DEA);
手数:=1;
//交易条件
开多条件:=CROSS(MACD,0);//开多条件
开空条件:=CROSS(0,MACD);//开空条件
平多条件:=C<MA25; //平多条件
平空条件:= C>MA25;//平空条件
//交易系统
if HOLDING=0 THEN BEGIN
TBUY(开多条件,手数,MKT);
BUY(开多条件,手数,MARKET);
TBUYSHORT(开空条件,手数,MKT);
BUYSHORT(开空条件 ,手数,MARKET);
END
if HOLDING>0 THEN BEGIN
TSELL(平多条件,手数,MKT);
SELL(平多条件,手数,MARKET);
END
if HOLDING<0 THEN BEGIN
TSELLSHORT(平空条件,手数,MKT);
SELLSHORT(平空条件,手数,MARKET);
END
|
|