INPUT:P(12,5,40,4),S(26,20,100,8),M(9,2,60,6);
DIFF:EMA(CLOSE,P) - EMA(CLOSE,S);
DEA:EMA(DIFF,M);
MACD := 2*(DIFF-DEA), COLORSTICK;
GOLD:=CROSS(DIFF,DEA);
DEAD:=CROSS(DEA,DIFF);
上面部分单独一个公式,公式名自己定义好,这里我定义的是mymacd。为下面的公式引用时使用。
这个是第二个公式。
hour_GOLD_cond:STKINDI('1A0001','mymacd.GOLD',0,5);//金叉
hour_DEAD_cond:STKINDI('1A0001','mymacd.DEAD',0,5);
week_GOLD_cond:STKINDI('1A0001','mymacd.GOLD',0,7);//金叉
week_DEAD_cond:STKINDI('1A0001','mymacd.DEAD',0,7);
if hour_GOLD_cond and week_GOLD_cond then BEGIN
SELLSHORT(1,HOLDING,THISCLOSE)
BUY(1, 5, THISCLOSE);
end
INPUT:P(12,5,40,4),S(26,20,100,8),M(9,2,60,6);
DIFF:EMA(CLOSE,P) - EMA(CLOSE,S);
DEA:EMA(DIFF,M);
MACD := 2*(DIFF-DEA), COLORSTICK;
GOLD:=CROSS(DIFF,DEA);
DEAD:=CROSS(DEA,DIFF);
上面部分单独一个公式,公式名自己定义好,这里我定义的是mymacd。为下面的公式引用时使用。
这个是第二个公式。
hour_GOLD_cond:STKINDI('1A0001','mymacd.GOLD',0,5);//金叉
hour_DEAD_cond:STKINDI('1A0001','mymacd.DEAD',0,5);
week_GOLD_cond:STKINDI('1A0001','mymacd.GOLD',0,7);//金叉
week_DEAD_cond:STKINDI('1A0001','mymacd.DEAD',0,7);
if hour_GOLD_cond and week_GOLD_cond then BEGIN
SELLSHORT(1,HOLDING,THISCLOSE)
BUY(1, 5, THISCLOSE);
end
朋友 谢谢你,不过不知道为什么我测了好多品种都没信号,是不是这个条件有点不合逻辑啊。
week_GOLD_cond:STKINDI('','mymacd.GOLD',0,7);//金叉
week_DEAD_cond:STKINDI('','mymacd.DEAD',0,7);
if hour_GOLD_cond and week_GOLD_cond then BEGIN
SELLSHORT(1,HOLDING,THISCLOSE)
BUY(1, 5, THISCLOSE);
end
补充足够的日线数据。
week_GOLD_cond:STKINDI('','mymacd.GOLD',0,7);//金叉
week_DEAD_cond:STKINDI('','mymacd.DEAD',0,7);
if hour_GOLD_cond and week_GOLD_cond then BEGIN
SELLSHORT(1,HOLDING,THISCLOSE)
BUY(1, 5, THISCLOSE);
end
补充足够的日线数据。
你确定这样写行么?得到的hour_GOLD_cond 值不是0或1哦,
金叉和死叉在第一个公式中已经做了。
引用时这个金叉死叉对应的周期上的条件。符合就1不符合就是0 。同时成交,就是你说的要求