比如一分钟图DIFF金叉DEA 并且15分钟MACD大于0,怎么写模型,谢谢
CROSS(DIFF,DEA) and STKINDI('','macd.MACD',3,-1);
这个CROSS(DIFF,DEA)不是未通过引用。
小周期引用大周期为避免闪烁,所以向前引用了一根数据
DIFF :=EMA(CLOSE,S) - EMA(CLOSE,P);
DEA :=EMA(DIFF,M);
MACD :=2*(DIFF-DEA);
diff1:=STKINDI('','macd.diff',0,1,-1);
dea1:=STKINDI('','macd.diff',0,1,-1);
macd15:=STKINDI('','macd.macd1',0,3,-1);
aa:=CROSS(diff1,dea1) and macd15>0;
bb:=cross(dea1,diff1) and macd15<0;
KD:=aa;
PD:=diff<dea;
KK:=bb;
PK:=diff>dea;
平空:SELLSHORT(PK,2,THISCLOSE); //平空信号
开多:BUY(KD AND HOLDING=0,2,THISCLOSE); //开多信号
平多:SELL(PD,2,THISCLOSE); //平多信号
开空:BUYSHORT(KK AND HOLDING=0,2,THISCLOSE); //开空信号
没有信号出来 怎么回事
抱歉,之前笔误写错了。第5行改为了,dea1:=STKINDI('','macd.dea',0,1,-1);
[此贴子已经被作者于2016-11-9 13:25:16编辑过]
DIFF :=EMA(CLOSE,S) - EMA(CLOSE,P);
DEA :=EMA(DIFF,M);
MACD :=2*(DIFF-DEA);
diff1:=STKINDI('','macd.diff',0,1,-1);
dea1:=STKINDI('','macd.diff',0,1,-1);
macd15:=STKINDI('','macd.dea1',0,3,-1);
aa:=CROSS(diff1,dea1) and macd15>0;
bb:=cross(dea1,diff1) and macd15<0;
KD:=aa;
PD:=diff1<dea1;
KK:=bb;
PK:=diff1>dea1;
平空:SELLSHORT(PK,2,THISCLOSE); //平空信号
开多:BUY(KD AND HOLDING=0,2,THISCLOSE); //开多信号
平多:SELL(PD,2,THISCLOSE); //平多信号
开空:BUYSHORT(KK AND HOLDING=0,2,THISCLOSE); //开空信号