通达信转wh6 (文华财经随身行Android   5.4.1(236))

投资者咨询:通达信转wh6 (文华财经随身行Android   5.4.1(236))
来源:文华财经  日期:2018-7-17 14:45
 请帮转换文华格式的。谢谢您
SHORT:=12;
LONG:=26;
MID:=9;
DIF:100*(EMA(CLOSE,SHORT)-EMA(CLOSE,LONG));
DEA:EMA(DIF,MID);
MACD:(DIF-DEA)*2,COLORSTICK;
{底部结构预警}
死叉:=CROSS(DEA,DIF);
N1:=BARSLAST(死叉),NODRAW;{最近一次死叉的位置}
N2:=REF(BARSLAST(死叉),N1+1),NODRAW;{倒数第二次死叉与倒数第一次死叉的区间}
N3:=REF(BARSLAST(死叉),N2+N1+2),NODRAW;{倒数第三次死叉与倒数第二次死叉的区间}
CL1:=LLV(C,N1+1),NODRAW;{最近一次死叉后,最低收盘价}
DIFL1:=LLV(DIF,N1+1),NODRAW;
CL2:=REF(CL1,N1+1),NODRAW;{倒数第二次死叉与倒数第一次死叉之间的最低收盘价}
DIFL2:=REF(DIFL1,N1+1),NODRAW;
CL3:=REF(CL2,N1+1),NODRAW;{倒数第三次死叉与倒数第二次死叉之间的最低收盘价}
DIFL3:=REF(DIFL2,N1+1),NODRAW;
PDIFL2:=IF(DIFL2>0,INTPART(LOG(DIFL2))-1,INTPART(LOG(-DIFL2))-1);
MDIFL2:=INTPART(DIFL2/POW(10,PDIFL2));
PDIFL3:=IF(DIFL3>0,INTPART(LOG(DIFL3))-1,INTPART(LOG(-DIFL3))-1);
MDIFL3:=INTPART(DIFL3/POW(10,PDIFL3));
MDIFB2:=INTPART(DIF/POW(10,PDIFL2));
MDIFB3:=INTPART(DIF/POW(10,PDIFL3));
直接底背离:=(CL1<CL2 ) AND (MDIFB2>MDIFL2) AND (MACD<0 AND REF(MACD,1)<0) AND MDIFB2<=REF(MDIFB2,1);
隔峰底背离:=(CL1<CL3 AND CL3<CL2 ) AND (MDIFB3>MDIFL3) AND (MACD<0 AND REF(MACD,1)<0) AND MDIFB3<=REF(MDIFB3,1);
B:直接底背离 OR 隔峰底背离,NODRAW;
BG:((MDIFB2>REF(MDIFB2,1))*REF(直接底背离,1)) OR ((MDIFB3>REF(MDIFB3,1))*REF(隔峰底背离,1)),NODRAW;
底背离消失:=(REF(直接底背离,1) AND DIFL1<=DIFL2 ) OR (REF(隔峰底背离,1) AND DIFL1<=DIFL3);
DRAWTEXT(TFILTER(B,MACD>0,1),(DIF+MACD),'钝化'),COLORRED;
STICKLINE(B OR BG,DIF,DEA,1,0),COLORRED;
DRAWTEXT(TFILTER(底背离消失,B,1),(DIF+MACD),'消失'),COLORYELLOW;
DRAWTEXT(TFILTER(BG,MACD>0,1),DIF*1.1,'结构形成'),COLORMAGENTA;
{顶部结构预警}
金叉:=CROSS(DIF,DEA);
M1:=BARSLAST(金叉),NODRAW;{最近一次金叉的位置}
M2:=REF(BARSLAST(金叉),M1+1),NODRAW;{倒数第二次金叉与倒数第一次金叉的区间}
M3:=REF(BARSLAST(金叉),M2+M1+2),NODRAW;{倒数第三次金叉与倒数第二次金叉的区间}
CH1:=HHV(C,M1+1),NODRAW;{最近一次金叉后,最高收盘价}
DIFH1:=HHV(DIF,M1+1),NODRAW;
CH2:=REF(CH1,M1+1),NODRAW;{倒数第二次金叉与倒数第一次金叉之间的最高收盘价}
DIFH2:=REF(DIFH1,M1+1),NODRAW;
CH3:=REF(CH2,M1+1),NODRAW;{倒数第三次金叉与倒数第二次金叉之间的最高收盘价}
DIFH3:=REF(DIFH2,M1+1),NODRAW;
PDIFH2:=IF(DIFH2>0,INTPART(LOG(DIFH2))-1,INTPART(LOG(-DIFH2))-1);
MDIFH2:=INTPART(DIFH2/POW(10,PDIFH2));
PDIFH3:=IF(DIFH3>0,INTPART(LOG(DIFH3))-1,INTPART(LOG(-DIFH3))-1);
MDIFH3:=INTPART(DIFH3/POW(10,PDIFH3));
MDIFT2:=INTPART(DIF/POW(10,PDIFH2));
MDIFT3:=INTPART(DIF/POW(10,PDIFH3));
直接顶背离:=(CH1>CH2 ) AND (MDIFT2<MDIFH2) AND (MACD>0 AND REF(MACD,1)>0) AND MDIFT2>=REF(MDIFT2,1);
隔峰顶背离:=(CH1>CH3 AND CH3>CH2 ) AND (MDIFT3<MDIFH3) AND (MACD>0 AND REF(MACD,1)>0) AND MDIFT3>=REF(MDIFT3,1);
T:直接顶背离 OR 隔峰顶背离,NODRAW;
TG:((MDIFT2<REF(MDIFT2,1))*REF(直接顶背离,1)) OR ((MDIFT3<REF(MDIFT3,1))*REF(隔峰顶背离,1)),NODRAW;
顶背离消失:=(REF(直接顶背离,1) AND DIFH1>=DIFH2 ) OR (REF(隔峰顶背离,1) AND DIFH1>=DIFH3);
DRAWTEXT(TFILTER(T,MACD<0,1),(DIF+MACD),'钝化'),COLORGREEN;
DRAWTEXT(TFILTER(顶背离消失,T,1),(DIF+MACD),'消失'),COLORYELLOW;
STICKLINE(T OR TG,DIF,DEA,1,0),COLORGREEN;
DRAWTEXT(TFILTER(TG,MACD<0,1),DIF*1.02,'结构形成'),COLORMAGENTA;
 
技术人员回复
日期:2018-7-17 14:55

不同软件函数机制不同,加载效果会有差异,请理解。

 

请参考。

 

SHORT:=12;
LONG:=26;
MID:=9;
DIF:100*(EMA(CLOSE,SHORT)-EMA(CLOSE,LONG));
DEA:EMA(DIF,MID);
MACD:(DIF-DEA)*2,COLORSTICK;
//底部结构预警
死叉:=CROSS(DEA,DIF);
N1:=BARSLAST(死叉),NODRAW;//{最近一次死叉的位置}
N2:=REF(BARSLAST(死叉),N1+1),NODRAW;//{倒数第二次死叉与倒数第一次死叉的区间}
N3:=REF(BARSLAST(死叉),N2+N1+2),NODRAW;//{倒数第三次死叉与倒数第二次死叉的区间}
CL1:=LLV(C,N1+1),NODRAW;//{最近一次死叉后,最低收盘价}
DIFL1:=LLV(DIF,N1+1),NODRAW;
CL2:=REF(CL1,N1+1),NODRAW;//{倒数第二次死叉与倒数第一次死叉之间的最低收盘价}
DIFL2:=REF(DIFL1,N1+1),NODRAW;
CL3:=REF(CL2,N1+1),NODRAW;//{倒数第三次死叉与倒数第二次死叉之间的最低收盘价}
DIFL3:=REF(DIFL2,N1+1),NODRAW;
PDIFL2:=IF(DIFL2>0,INTPART(LOG(DIFL2))-1,INTPART(LOG(ABS(DIFL2)))-1);
MDIFL2:=INTPART(DIFL2/POW(10,PDIFL2));
PDIFL3:=IF(DIFL3>0,INTPART(LOG(DIFL3))-1,INTPART(LOG(ABS(DIFL3)))-1);
MDIFL3:=INTPART(DIFL3/POW(10,PDIFL3));
MDIFB2:=INTPART(DIF/POW(10,PDIFL2));
MDIFB3:=INTPART(DIF/POW(10,PDIFL3));
直接底背离:=(CL1<CL2 ) AND (MDIFB2>MDIFL2) AND (MACD<0 AND REF(MACD,1)<0) AND MDIFB2<=REF(MDIFB2,1);
隔峰底背离:=(CL1<CL3 AND CL3<CL2 ) AND (MDIFB3>MDIFL3) AND (MACD<0 AND REF(MACD,1)<0) AND MDIFB3<=REF(MDIFB3,1);
B:直接底背离 OR 隔峰底背离,NODRAW;
BG:((MDIFB2>REF(MDIFB2,1))*REF(直接底背离,1)) OR ((MDIFB3>REF(MDIFB3,1))*REF(隔峰底背离,1)),NODRAW;
底背离消失:=(REF(直接底背离,1) AND DIFL1<=DIFL2 ) OR (REF(隔峰底背离,1) AND DIFL1<=DIFL3);
DRAWTEXT(CROSS(B,0.5),(DIF+MACD),'钝化'),COLORRED;
STICKLINE(B OR BG,DIF,DEA,1,0),COLORRED;
DRAWTEXT(CROSS(底背离消失,0.5),(DIF+MACD),'消失'),COLORYELLOW;
DRAWTEXT(CROSS(BG,0.5),DIF*1.1,'结构形成'),COLORMAGENTA;
//{顶部结构预警}
金叉:=CROSS(DIF,DEA);
M1:=BARSLAST(金叉),NODRAW;//{最近一次金叉的位置}
M2:=REF(BARSLAST(金叉),M1+1),NODRAW;//{倒数第二次金叉与倒数第一次金叉的区间}
M3:=REF(BARSLAST(金叉),M2+M1+2),NODRAW;//{倒数第三次金叉与倒数第二次金叉的区间}
CH1:=HHV(C,M1+1),NODRAW;//{最近一次金叉后,最高收盘价}
DIFH1:=HHV(DIF,M1+1),NODRAW;
CH2:=REF(CH1,M1+1),NODRAW;//{倒数第二次金叉与倒数第一次金叉之间的最高收盘价}
DIFH2:=REF(DIFH1,M1+1),NODRAW;
CH3:=REF(CH2,M1+1),NODRAW;//{倒数第三次金叉与倒数第二次金叉之间的最高收盘价}
DIFH3:=REF(DIFH2,M1+1),NODRAW;
PDIFH2:=IF(DIFH2>0,INTPART(LOG(DIFH2))-1,INTPART(LOG(ABS(DIFH2)))-1);
MDIFH2:=INTPART(DIFH2/POW(10,PDIFH2));
PDIFH3:=IF(DIFH3>0,INTPART(LOG(DIFH3))-1,INTPART(LOG(ABS(DIFH3)))-1);
MDIFH3:=INTPART(DIFH3/POW(10,PDIFH3));
MDIFT2:=INTPART(DIF/POW(10,PDIFH2));
MDIFT3:=INTPART(DIF/POW(10,PDIFH3));
直接顶背离:=(CH1>CH2 ) AND (MDIFT2<MDIFH2) AND (MACD>0 AND REF(MACD,1)>0) AND MDIFT2>=REF(MDIFT2,1);
隔峰顶背离:=(CH1>CH3 AND CH3>CH2 ) AND (MDIFT3<MDIFH3) AND (MACD>0 AND REF(MACD,1)>0) AND MDIFT3>=REF(MDIFT3,1);
T:直接顶背离 OR 隔峰顶背离,NODRAW;
TG:((MDIFT2<REF(MDIFT2,1))*REF(直接顶背离,1)) OR ((MDIFT3<REF(MDIFT3,1))*REF(隔峰顶背离,1)),NODRAW;
顶背离消失:=(REF(直接顶背离,1) AND DIFH1>=DIFH2 ) OR (REF(隔峰顶背离,1) AND DIFH1>=DIFH3);
DRAWTEXT(CROSS(T,0.5),(DIF+MACD),'钝化'),COLORGREEN;
DRAWTEXT(CROSS(顶背离消失,0.5),(DIF+MACD),'消失'),COLORYELLOW;
STICKLINE(T OR TG,DIF,DEA,1,0),COLORGREEN;
DRAWTEXT(CROSS(TG,0.5),DIF*1.02,'结构形成'),COLORMAGENTA;

投资者咨询:通达信转wh6 (文华财经随身行Android   5.4.1(236))
来源:文华财经  日期:2018-7-17 14:45
老师请帮把两个指标叠加在一起但,还得显示蓝丝,和粉线。

第一个
 SHORT:=12;
LONG:=26;
MID:=9;
DIF:100*(EMA(CLOSE,SHORT)-EMA(CLOSE,LONG));
DEA:EMA(DIF,MID);
MACD:(DIF-DEA)*2,COLORSTICK;
//底部结构预警
死叉:=CROSS(DEA,DIF);
N1:=BARSLAST(死叉),NODRAW;//{最近一次死叉的位置}
N2:=REF(BARSLAST(死叉),N1+1),NODRAW;//{倒数第二次死叉与倒数第一次死叉的区间}
N3:=REF(BARSLAST(死叉),N2+N1+2),NODRAW;//{倒数第三次死叉与倒数第二次死叉的区间}
CL1:=LLV(C,N1+1),NODRAW;//{最近一次死叉后,最低收盘价}
DIFL1:=LLV(DIF,N1+1),NODRAW;
CL2:=REF(CL1,N1+1),NODRAW;//{倒数第二次死叉与倒数第一次死叉之间的最低收盘价}
DIFL2:=REF(DIFL1,N1+1),NODRAW;
CL3:=REF(CL2,N1+1),NODRAW;//{倒数第三次死叉与倒数第二次死叉之间的最低收盘价}
DIFL3:=REF(DIFL2,N1+1),NODRAW;
PDIFL2:=IF(DIFL2>0,INTPART(LOG(DIFL2))-1,INTPART(LOG(ABS(DIFL2)))-1);
MDIFL2:=INTPART(DIFL2/POW(10,PDIFL2));
PDIFL3:=IF(DIFL3>0,INTPART(LOG(DIFL3))-1,INTPART(LOG(ABS(DIFL3)))-1);
MDIFL3:=INTPART(DIFL3/POW(10,PDIFL3));
MDIFB2:=INTPART(DIF/POW(10,PDIFL2));
MDIFB3:=INTPART(DIF/POW(10,PDIFL3));
直接底背离:=(CL1<CL2 ) AND (MDIFB2>MDIFL2) AND (MACD<0 AND REF(MACD,1)<0) AND MDIFB2<=REF(MDIFB2,1);
隔峰底背离:=(CL1<CL3 AND CL3<CL2 ) AND (MDIFB3>MDIFL3) AND (MACD<0 AND REF(MACD,1)<0) AND MDIFB3<=REF(MDIFB3,1);
B:直接底背离 OR 隔峰底背离,NODRAW;
BG:((MDIFB2>REF(MDIFB2,1))*REF(直接底背离,1)) OR ((MDIFB3>REF(MDIFB3,1))*REF(隔峰底背离,1)),NODRAW;
底背离消失:=(REF(直接底背离,1) AND DIFL1<=DIFL2 ) OR (REF(隔峰底背离,1) AND DIFL1<=DIFL3);
DRAWTEXT(CROSS(B,0.5),(DIF+MACD),'钝化'),COLORRED;
STICKLINE(B OR BG,DIF,DEA,1,0),COLORRED;
DRAWTEXT(CROSS(底背离消失,0.5),(DIF+MACD),'消失'),COLORYELLOW;
DRAWTEXT(CROSS(BG,0.5),DIF*1.1,'结构形成'),COLORMAGENTA;
//{顶部结构预警}
金叉:=CROSS(DIF,DEA);
M1:=BARSLAST(金叉),NODRAW;//{最近一次金叉的位置}
M2:=REF(BARSLAST(金叉),M1+1),NODRAW;//{倒数第二次金叉与倒数第一次金叉的区间}
M3:=REF(BARSLAST(金叉),M2+M1+2),NODRAW;//{倒数第三次金叉与倒数第二次金叉的区间}
CH1:=HHV(C,M1+1),NODRAW;//{最近一次金叉后,最高收盘价}
DIFH1:=HHV(DIF,M1+1),NODRAW;
CH2:=REF(CH1,M1+1),NODRAW;//{倒数第二次金叉与倒数第一次金叉之间的最高收盘价}
DIFH2:=REF(DIFH1,M1+1),NODRAW;
CH3:=REF(CH2,M1+1),NODRAW;//{倒数第三次金叉与倒数第二次金叉之间的最高收盘价}
DIFH3:=REF(DIFH2,M1+1),NODRAW;
PDIFH2:=IF(DIFH2>0,INTPART(LOG(DIFH2))-1,INTPART(LOG(ABS(DIFH2)))-1);
MDIFH2:=INTPART(DIFH2/POW(10,PDIFH2));
PDIFH3:=IF(DIFH3>0,INTPART(LOG(DIFH3))-1,INTPART(LOG(ABS(DIFH3)))-1);
MDIFH3:=INTPART(DIFH3/POW(10,PDIFH3));
MDIFT2:=INTPART(DIF/POW(10,PDIFH2));
MDIFT3:=INTPART(DIF/POW(10,PDIFH3));
直接顶背离:=(CH1>CH2 ) AND (MDIFT2<MDIFH2) AND (MACD>0 AND REF(MACD,1)>0) AND MDIFT2>=REF(MDIFT2,1);
隔峰顶背离:=(CH1>CH3 AND CH3>CH2 ) AND (MDIFT3<MDIFH3) AND (MACD>0 AND REF(MACD,1)>0) AND MDIFT3>=REF(MDIFT3,1);
T:直接顶背离 OR 隔峰顶背离,NODRAW;
TG:((MDIFT2<REF(MDIFT2,1))*REF(直接顶背离,1)) OR ((MDIFT3<REF(MDIFT3,1))*REF(隔峰顶背离,1)),NODRAW;
顶背离消失:=(REF(直接顶背离,1) AND DIFH1>=DIFH2 ) OR (REF(隔峰顶背离,1) AND DIFH1>=DIFH3);
DRAWTEXT(CROSS(T,0.5),(DIF+MACD),'钝化'),COLORGREEN;
DRAWTEXT(CROSS(顶背离消失,0.5),(DIF+MACD),'消失'),COLORYELLOW;
STICKLINE(T OR TG,DIF,DEA,1,0),COLORGREEN;
DRAWTEXT(CROSS(TG,0.5),DIF*1.02,'结构形成'),COLORMAGENTA;


第二个
DIFF:EMA(CLOSE,12)-EMA(CLOSE,26);//收盘价与N周期最低值做差,N周期最高值与N周期最低值做差,两差之间做比值。
K:DIFF,COLORGRAY;//RSV的移动平均值

REFLINE:2,0,-2;

B1:=BARSLAST(CROSS(K,2))+1,NODRAW;
B2:=BARSLAST(CROSSDOWN(K,2))+1,NODRAW;

A1:=BARSLAST(CROSS(K,0))+1,NODRAW;
A2:=BARSLAST(CROSSDOWN(K,0))+1,NODRAW;

D1:=BARSLAST(CROSS(K,-2))+1,NODRAW;
D2:=BARSLAST(CROSSDOWN(K,-2))+1,NODRAW;

AH:VALUEWHEN(A2=1&&A1<B2,HV(H,A1)),NODRAW;
AHN:=BACKSET(A2=1&&A1<B2,REF(HHVBARS(H,A1),1)+2);
BH:VALUEWHEN(A2=1&&A1<B2,REF(HHV(H,B1),B2)),NODRAW;
BHN:=BACKSET(A2=1&&A1<B2,REF(HHVBARS(H,B1),B2)+B2+1);
DRAWLINE1(CROSS(BHN,0.5)&&AH<BH,K,CROSS(AHN,0.5),K,0),COLORBLUE;

CL:VALUEWHEN(A1=1&&A2<D1,LV(L,A2)),NODRAW;
CLN:=BACKSET(A1=1&&A2<D1,REF(LLVBARS(L,A2),1)+2);
DL:VALUEWHEN(A1=1&&A2<D1,REF(LLV(L,D2),D1)),NODRAW;
DLN:=BACKSET(A1=1&&A2<D1,REF(LLVBARS(L,D2),D1)+D1+1);
DRAWLINE1(CROSS(DLN,0.5)&&CL>DL,K,CROSS(CLN,0.5),K,0),COLORMAGENTA;

投资者咨询:通达信转wh6 (文华财经随身行Android   5.4.1(236))
来源:文华财经  日期:2018-7-17 14:45
好好
技术人员回复
日期:2018-7-18 8:17

分别保存成两个指标,叠加到一个副图上显示就可以了。



图片点击可在新窗口打开查看
投资者咨询:通达信转wh6 (文华财经随身行Android   5.4.1(236))
来源:文华财经  日期:2018-7-17 14:45
 线,重影,能把这些线,规成两条线吗????

技术人员回复
日期:2018-7-18 9:16
 是希望有些线不显示,您想留下哪两条线?请具体说明下。
投资者咨询:通达信转wh6 (文华财经随身行Android   5.4.1(236))
来源:文华财经  日期:2018-7-17 14:45
 要第一组的两条线和条件,要第二组的蓝线,和粉线
技术人员回复
日期:2018-7-18 9:34

您的指标加载效果如5楼的截图,第一个指标是两条画线加macd红绿柱和一些标注。

 

第二个指标只有一条画线和另外的紫红和蓝色连线。

 

如果是去掉第二个指标的那条画线,参考:

 

DIFF:=EMA(CLOSE,12)-EMA(CLOSE,26);//收盘价与N周期最低值做差,N周期最高值与N周期最低值做差,两差之间做比值。
K:=DIFF,COLORGRAY;//RSV的移动平均值
REFLINE:2,0,-2;
B1:=BARSLAST(CROSS(K,2))+1,NODRAW;
B2:=BARSLAST(CROSSDOWN(K,2))+1,NODRAW;
A1:=BARSLAST(CROSS(K,0))+1,NODRAW;
A2:=BARSLAST(CROSSDOWN(K,0))+1,NODRAW;
D1:=BARSLAST(CROSS(K,-2))+1,NODRAW;
D2:=BARSLAST(CROSSDOWN(K,-2))+1,NODRAW;
AH:VALUEWHEN(A2=1&&A1<B2,HV(H,A1)),NODRAW;
AHN:=BACKSET(A2=1&&A1<B2,REF(HHVBARS(H,A1),1)+2);
BH:VALUEWHEN(A2=1&&A1<B2,REF(HHV(H,B1),B2)),NODRAW;
BHN:=BACKSET(A2=1&&A1<B2,REF(HHVBARS(H,B1),B2)+B2+1);
DRAWLINE1(CROSS(BHN,0.5)&&AH<BH,K,CROSS(AHN,0.5),K,0),COLORBLUE;
CL:VALUEWHEN(A1=1&&A2<D1,LV(L,A2)),NODRAW;
CLN:=BACKSET(A1=1&&A2<D1,REF(LLVBARS(L,A2),1)+2);
DL:VALUEWHEN(A1=1&&A2<D1,REF(LLV(L,D2),D1)),NODRAW;
DLN:=BACKSET(A1=1&&A2<D1,REF(LLVBARS(L,D2),D1)+D1+1);
DRAWLINE1(CROSS(DLN,0.5)&&CL>DL,K,CROSS(CLN,0.5),K,0),COLORMAGENTA;