时间太少 发表于 2020-2-24 23:02

请高手帮忙修改下公式

请高手帮忙把KT交易师里的公式转换为通达信能用的。公式如下,谢谢啊
//////////////////////
//MACD实战
//////////////////////

INPUT:
LONGP(26, 20, 100, 1),
SHORTP(12, 5, 40, 1),
M(9, 2, 60, 0.0456);
DIFF:=EMA(CLOSE,SHORTP)-EMA(CLOSE,LONGP);
DEA:=EMA(DIFF,M);
MACD2:=2*(DIFF-DEA);
VERTLINE(CLOSE<0 AND CROSS(DIFF,0)), COLORBROWN;
VERTLINE(CLOSE<0 AND CROSS(MACD2,0)), COLORBROWN;
VERTLINE(CLOSE<0 AND CROSS(0,DIFF)), COLORGRAY;
VERTLINE(CLOSE<0 AND CROSS(0,MACD2)), COLORGRAY;
DU0:=CROSS(DIFF,0);
UD0:=CROSS(0,DIFF);
TDU0:=BARSLAST(DU0);
TUD0:=BARSLAST(UD0);
DU3:=REF(DU0,1);
UD3:=REF(UD0,1);
TDU3:=BARSLAST(DU3);
TUD3:=BARSLAST(UD3);
UDGLINE:=IF(TDU3<TUD3,REF(HHV(HIGH,2),TDU3),REF(LLV(LOW,2),TUD3));
JDU0:=REF(CLOSE,1)<=REF(UDGLINE,1) AND CLOSE>UDGLINE AND TDU0<TUD0;
JUD0:=REF(CLOSE,1)>=REF(UDGLINE,1) AND CLOSE<UDGLINE AND TUD0<TDU0;
JDU1:=JDU0 AND COUNT(JDU0,TDU0)=1;
JUD1:=JUD0 AND COUNT(JUD0,TUD0)=1;
JDU2:=JDU1 AND REF(BARSLAST(JUD1),1)<REF(BARSLAST(JDU1),1);
JUD2:=JUD1 AND REF(BARSLAST(JUD1),1)>REF(BARSLAST(JDU1),1);
JDU3:=JDU1 AND REF(BARSLAST(JUD1),1)>REF(BARSLAST(JDU1),1);
JUD3:=JUD1 AND REF(BARSLAST(JUD1),1)<REF(BARSLAST(JDU1),1);
BSLINE:=IF(BARSLAST(JDU2)<BARSLAST(JUD2),IF(REF(CROSS(0,MACD2),1),LLV(LOW,2),REF(LLV(LOW,2),BARSLAST(REF(CROSS(0,MACD2),1)))),IF(REF(CROSS(MACD2,0),1),HHV(HIGH,2),REF(HHV(HIGH,2),BARSLAST(REF(CROSS(MACD2,0),1)))));
DRAWICON(JDU1 OR BARSLAST(JDU1)<BARSLAST(JUD1),0,10), ALIGN4;
DRAWICON(JUD1 OR BARSLAST(JDU1)>BARSLAST(JUD1),0,11), ALIGN5;
STICKLINE(MACD2>=0,0,MACD2,6,1), COLORRED;
STICKLINE(MACD2>=0 AND MACD2<REF(MACD2,1),0,MACD2,6,0), COLORRED;
STICKLINE(MACD2<0,0,MACD2,6,0), COLORCYAN;
STICKLINE(MACD2<0 AND MACD2>REF(MACD2,1),0,MACD2,6,1), COLORCYAN;
DIF:DIFF, LINETHICK2, COLORYELLOW;
MACD:DEA, COLORGREEN;
DEF:MACD2, LINETHICK0, COLORCYAN;
STICKLINE(CLOSE>0,0,0,10,0), COLORGRAY;
DEFUT:=BARSLAST(CROSS(MACD2,0));
DEFDT:=BARSLAST(CROSS(0,MACD2));
DEFUL:=IF(MACD2>=0,HHV(MACD2,DEFUT+1),REF(HHV(MACD2,DEFUT+1),DEFDT+1));
DEFDL:=IF(MACD2<0,LLV(MACD2,DEFDT+1),REF(LLV(MACD2,DEFDT+1),DEFUT+1));
DEFU2L:=REF(DEFUL,DEFUT+1);
DEFD2L:=REF(DEFDL,DEFDT+1);
DRAWICON(LLV(MACD2,4)>0 AND MACD2<REF(MACD2,1) AND REF(MACD2,1)>REF(MACD2,2) AND REF(MACD2,2)>REF(MACD2,3),MACD2,5);
DRAWICON(HHV(MACD2,4)<0 AND MACD2>REF(MACD2,1) AND REF(MACD2,1)<REF(MACD2,2) AND REF(MACD2,2)<REF(MACD2,3),MACD2,4);
DRAWICON((JUD1 OR BARSLAST(JDU1)>BARSLAST(JUD1)) AND MACD2>=0 AND REF(MACD2,1)<REF(DEFU2L,1) AND MACD2>DEFU2L,MACD2,12);
DRAWICON((JDU1 OR BARSLAST(JDU1)<BARSLAST(JUD1)) AND MACD2<0 AND REF(MACD2,1)>REF(DEFD2L,1) AND MACD2<DEFD2L,MACD2,12);

EXPLAIN(JDU2,'注意长线趋势空转多');
EXPLAIN(JUD2,'注意长线趋势多转空');
EXPLAIN(JDU1 OR BARSLAST(JDU1)<BARSLAST(JUD1),'长线为多头趋势');
EXPLAIN(JUD1 OR BARSLAST(JDU1)>BARSLAST(JUD1),'长线为空头趋势');
EXPLAINEX(JDU1 OR BARSLAST(JDU1)<BARSLAST(JUD1),'MACD多头防守价',BSLINE,2,1);
EXPLAINEX(JUD1 OR BARSLAST(JDU1)>BARSLAST(JUD1),'MACD空头防守价',BSLINE,2,1);
EXPLAIN((JDU1 OR BARSLAST(JDU1)<BARSLAST(JUD1)) AND CLOSE<BSLINE,'防守价跌破:多头小心');
EXPLAIN((JUD1 OR BARSLAST(JDU1)>BARSLAST(JUD1)) AND CLOSE>BSLINE,'防守价突破:空头小心');
EXPLAIN((JUD1 OR BARSLAST(JDU1)>BARSLAST(JUD1)) AND CROSS(MACD2,0),'空头注意今明两日高点压力\n找日落K线放空,用线控盘');
EXPLAIN((JDU1 OR BARSLAST(JDU1)<BARSLAST(JUD1)) AND CROSS(0,MACD2),'多头注意今明两日低点支撑\n找日出K线做多,用线控盘');
EXPLAIN((JUD1 OR BARSLAST(JDU1)>BARSLAST(JUD1)) AND MACD2>=0 AND REF(MACD2,1)<REF(DEFU2L,1) AND MACD2>DEFU2L,'DEF柱状特殊研判\n空头注意今明两日高点压力');
EXPLAIN((JDU1 OR BARSLAST(JDU1)<BARSLAST(JUD1)) AND MACD2<0 AND REF(MACD2,1)>REF(DEFD2L,1) AND MACD2<DEFD2L,'DEF柱状特殊研判\n多头注意今明两日低点支撑');
EXPLAINEX(REF(JUD1 OR BARSLAST(JDU1)>BARSLAST(JUD1),1) AND CROSS(REF(MACD2,1),0),'空头注意压力',HHV(HIGH,2),2,1);
EXPLAIN(REF(JUD1 OR BARSLAST(JDU1)>BARSLAST(JUD1),1) AND CROSS(REF(MACD2,1),0),'找日落K线放空,用线控盘');
EXPLAINEX(REF(JDU1 OR BARSLAST(JDU1)<BARSLAST(JUD1),1) AND CROSS(0,REF(MACD2,1)),'多头注意支撑',LLV(LOW,2),2,1);
EXPLAIN(REF(JDU1 OR BARSLAST(JDU1)<BARSLAST(JUD1),1) AND CROSS(0,REF(MACD2,1)),'找日出K线进场,用线控盘');
EXPLAIN(LLV(MACD2,4)>0 AND MACD2<REF(MACD2,1) AND REF(MACD2,1)>REF(MACD2,2) AND REF(MACD2,2)>REF(MACD2,3),'请注意DEF柱状缩头');
EXPLAIN(HHV(MACD2,4)<0 AND MACD2>REF(MACD2,1) AND REF(MACD2,1)<REF(MACD2,2) AND REF(MACD2,2)<REF(MACD2,3),'请注意DEF柱状缩脚');


页: [1]
查看完整版本: 请高手帮忙修改下公式