DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);//短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA : =EMA(DIFF,9);//DIFF的M个周期指数平滑移动平均
MACD:=2*(DIFF-DEA),COLORSTICK;//DIFF减DEA的2倍画柱状线
PB1:MA(CLOSE,M1)
CON1:CROSSDOWN(MACD,0);
N1:SUMBARS(CON1,1);
CON2:CROSS(DIFF,DEA)&&EVERY(C>PB1,BARSLAST(CON1)+1)&&SUM(CON1,BARSLAST(CROSS(C,PB1)))=1;
CON3:CROSS(DIFF,DEA);
CON4:CROSSDOWN(MACD,0)&&EVERY(C<PB1,BARSLAST(CON3)+1)&&SUM(CON3,BARSLAST(CROSSDOWN(C,PB1)))=1;
DRAWICON(CON2,H,1);
DRAWICON(CON4,H,2);
这个公式现在是:收盘价上穿pb1出红柱,然后出绿柱,收盘价不下穿pb1的情况下再次出红柱,给个多单买进信号。空单反之
现在我想改成:1:收盘价上穿pb1出红柱,然后出绿柱(这里多一个要求就是绿柱面积要等于或小于之前的红柱),收盘价不下穿pb1的情况下再次出红柱,给个多单买进信号。空单反之
2:收盘价上穿pb1出红柱,然后红柱缩短到等于或小于最长的哪根红柱的三分之一的时候,收盘价不下穿pb1的情况下红柱再次变长,给个多单买进信号。空单反之

文件名:赢顺截图20180606104111.jpg参考:
DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);//短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA : =EMA(DIFF,9);//DIFF的M个周期指数平滑移动平均
MACD:=2*(DIFF-DEA),COLORSTICK;//DIFF减DEA的2倍画柱状线
PB1:MA(CLOSE,M1);
CON1:CROSSDOWN(MACD,0);
N1:SUMBARS(CON1,1);
N2:SUMBARS(CROSS(MACD,0),1);
CON2:CROSS(DIFF,DEA)&&EVERY(C>PB1,BARSLAST(CON1)+1)&&SUM(CON1,BARSLAST(CROSS(C,PB1)))=1&&SUM(ABS(MACD),N1)<=REF(SUM(MACD,N2),N1);
CON3:CROSS(DIFF,DEA);
CON4:CROSSDOWN(MACD,0)&&EVERY(C<PB1,BARSLAST(CON3)+1)&&SUM(CON3,BARSLAST(CROSSDOWN(C,PB1)))=1&&SUM(ABS(MACD),N2)<=REF(SUM(MACD,N1),N2);
COND5:EVERY(C>PB1,BARSLAST(CON1)+1)&&SUM(CON1,BARSLAST(CROSS(C,PB1)))=1&&MACD>REF(MACD,1)&&REF(MACD<=HHV(MACD,N2)/3,1);
COND6:EVERY(C<PB1,BARSLAST(CON3)+1)&&SUM(CON3,BARSLAST(CROSSDOWN(C,PB1)))=1&&MACD<REF(MACD,1)&&REF(MACD>=LLV(MACD,N2)/3,1);
DRAWICON(CON2||COND5,H,1);
DRAWICON(CON4||COND6,H,2);
1楼条件2对应的COND5 COND6这样修改一下
如果还有疑问,还需要您具体说明一下对应的放大如何判断:
COND5:EVERY(C>PB1,BARSLAST(CON1)+1)&&SUM(CON1,BARSLAST(CROSS(C,PB1)))=1&&CROSS(MACD>REF(MACD,1),0.5)&&EXIST(MACD<=HHV(MACD,N2)/3,N2);
COND6:EVERY(C<PB1,BARSLAST(CON3)+1)&&SUM(CON3,BARSLAST(CROSSDOWN(C,PB1)))=1&&CROSS(MACD<REF(MACD,1),0.5)&&EXIST(MACD>=LLV(MACD,N1)/3,N1);
参考:
DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);//短周期与长周期的收盘价的指数平滑移动平均值做差。
DEA : =EMA(DIFF,9);//DIFF的M个周期指数平滑移动平均
MACD:=2*(DIFF-DEA),COLORSTICK;//DIFF减DEA的2倍画柱状线
PB1:MA(CLOSE,M1);
CON1:=CROSSDOWN(MACD,0);
N1:=SUMBARS(CON1,1);
N2:=SUMBARS(CROSS(MACD,0),1);
CON2:=CROSS(DIFF,DEA)&&EVERY(C>PB1,BARSLAST(CON1)+1)&&SUM(CON1,BARSLAST(CROSS(C,PB1)))=1&&SUM(ABS(MACD),N1)<=REF(SUM(MACD,N2),N1);
CON3:=CROSS(DIFF,DEA);
CON4:=CROSSDOWN(MACD,0)&&EVERY(C<PB1,BARSLAST(CON3)+1)&&SUM(CON3,BARSLAST(CROSSDOWN(C,PB1)))=1&&SUM(ABS(MACD),N2)<=REF(SUM(MACD,N1),N2);
COND5:=EVERY(C>PB1,BARSLAST(CON1)+1)&&SUM(CON1,BARSLAST(CROSS(C,PB1)))=1&&CROSS(MACD>REF(MACD,1),0.5)&&EXIST(MACD<=HHV(MACD,N2)/3,N2);
COND6:=EVERY(C<PB1,BARSLAST(CON3)+1)&&SUM(CON3,BARSLAST(CROSSDOWN(C,PB1)))=1&&CROSS(MACD<REF(MACD,1),0.5)&&EXIST(MACD>=LLV(MACD,N1)/3,N1);
AA11:CROSS(MACD<REF(MACD,1),0.5)&&EXIST(MACD>=LLV(MACD,N1)/3,N1),NODRAW;
NN:=SUMBARS(CROSS(C,PB1),1);
NNX:=SUMBARS(CROSSDOWN(C,PB1),1);
AA:=COUNT(CON2||COND5,NN)=1 && (CON2||COND5);
BB:=COUNT(CON4||COND6,NNX)=1 && (CON4||COND6);
DRAWICON(AA,H,1);
DRAWICON(BB,H,2);
不是这样的
跟我说的完全不是一回事




