昨天才跟朋友改成分析家用,但总觉得有些地方不如人意,尤其评论显示太乱: 不整齐不说,有的地方还重叠不能相认。现用了一些特殊的方法使得显示整齐 大方,也不会产生重叠。 MACD解盘(分折家) DIFF: EMA(CLOSE,12) - EMA(CLOSE,26),COLORYELLOW,LINETHICK2; DEA1:=EMA(DIFF,9); 0.10,pointdot; MACD: 2*(DIFF-DEA1),LINETHICK0; s1:=MACD<ref(MACD,1)and MACD>0; s2:=MACD<ref(MACD,1)/2 and MACD<0; STICKLINE(MACD>=0,MACD,0,8,1),COLORRED; STICKLINE(s1,0,MACD,8,1),COLOR00ffff; STICKLINE(s2,0,MACD,8,0),COLORffffff; STICKLINE(MACD>ref(MACD,1)and MACD<0,0,MACD,8,1),COLORffff00; DEA: EMA(DIFF,9),COLORGREEN; PARTLINE(DIFF,DIFF>DEA),COLORff11cc,LINETHICK2; PARTLINE(DIFF,DIFF>DEA AND DIFF<0),COLORred,LINETHICK2; DRAWICON(CROSS(DIFF,DEA),DIFF-0.01,4); DRAWICON(CROSS(DEA,DIFF),DIFF,10); MAC:3*DIFF-2*DEA1,LINETHICK1; Var1:=EMA(CLOSE,34)-EMA(CLOSE,5); Var2:=EMA(Var1,5); 趋势:=(-3)*(Var1-Var2); Var11:=ma((v/(h-l)),4); Var33:=abs(c-o); Var44:=v/(h-l); TR := SUM(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),14); HD := HIGH-REF(HIGH,1); LD := REF(LOW,1)-LOW; DMP:= SUM(IF(HD>0 AND HD>LD,HD,0),14); DMM:= SUM(IF(LD>0 AND LD>HD,LD,0),14); PDI:= DMP*100/TR; MDI:= DMM*100/TR; ADX:= MA(ABS(MDI-PDI)/(MDI+PDI)*100,6); ADXR:=(ADX+REF(ADX,6))/2; M周▲:DRAWTEXT(CROSS("MACD.DIFF#WEEK" ,"MACD.DEA#WEEK"),DEA1,'▲M周'),COLORred; M月个:DRAWTEXT(CROSS("MACD.DIFF#MONTH" ,"MACD.DEA#MONTH"),DEA1,'个M月'),COLORMAGENTA; W1:=C<=MA(C,5) AND C<=MA(C,10) ; W2:=O>MA(C,5) AND O>MA(C,10) ; W3:=MA(V,5)<=MA(V,10); W4:=diff<dea; W5:=vol/CAPITAl; DRAWTEXT(W1 AND W2 AND W3 AND W4,DIFF,'#'),colorFFFF10; LC := REF(CLOSE,1); RSI1:=SMA(MAX(CLOSE-LC,0),6,1)/SMA(ABS(CLOSE-LC),6,1)*100; RSI2:=SMA(MAX(CLOSE-LC,0),12,1)/SMA(ABS(CLOSE-LC),12,1)*100; psy:=COUNT(CLOSE>REF(CLOSE,1),12)/12*100; Aa:=(EMA(C,30)*2+MA(C,60))/3; Ra:=(VOL*CLOSE); VL1a:=EMA(Ra,13)/EMA(VOL,13); VL2a:=EMA(Ra,60)/EMA(VOL,60); VLa:=EMA((VL1a+VL2a)/2,3); 分水岭:ma((Aa+VLa)/2,1),LINETHICK0; BBI:=(MA(CLOSE,3)+MA(CLOSE,6)+MA(CLOSE,12)+MA(CLOSE,24))/4; UPR:=BBI+3*STD(BBI,10); DWN:=BBI-3*STD(BBI,10); var55:=(UPR-DWN)/UPR<0.03; var56:=(UPR-DWN)/UPR>0.18; var57:=(ma(c,60)-ma(c,5))/ma(c,60)>0.15; var58:=(ma(c,5)-ma(c,60))/ma(c,5)>0.15; s1:=趋势>0; s2:=趋势<0; s3:=cross(趋势,0); s4:=cross(0,趋势); s5:=cross(pdi,mdi); s6:=cross(mdi,pdi); s7:=adx>ref(adx,1); s8:=W1 AND W2; s9:=W1; s10:=W3; s11:=W4; s12:=W1 AND W2 AND W3 AND W4; s13:=W1 AND W3 AND W4; s14:=W5>0.075; s15:=RSI1>85; s16:=RSI1>80; s17:=RSI1<15; s18:=CROSS(RSI1,15); s19:=CROSS(RSI1,85); s20:=close>分水岭; s21:=close<分水岭; s22:=var55; s23:=var57 and var56; ss:s1+s2+s3+s4+s5+s6+s7+s8+s9+s10+s11+s12+s13+s14+s15+s16+s17+s18+s19+s20+s21 +s22+s23,LINETHICK0; if DISPSTATUS=2 then a:=BARPOS; if DISPSTATUS=1 then b:=BARPOS; d:=a-b; aa1:=if(mac>dea,mac,dea); e:=hhv(aa1,d); bb:=if(dea1<mac,dea,mac); e1:=LLV(bb,d); e2:(e-e1)/(ss+2),LINETHICK0; i:=1; if s1=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'Z线趋势上升中'); i:=i+1; END if s2=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'Z线趋势下降中'); i:=i+1; END if s3=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'Z线考虑买入'); i:=i+1; END if s4=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'Z线考虑卖出'); i:=i+1; END if s5=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'PDI突破MDI,有新多进场'); i:=i+1; END if s6=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'PDI跌破MDI,有新空进场'); i:=i+1; END if s7=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'ADX高于前一日,维持原趋势'); i:=i+1; END if s8=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'断头铡刀:,卖出'),colorgreen; i:=i+1; END if s9=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'5日死叉10均线,短线卖出'),coloryellow; i:=i+1; END if s10=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'5日死叉10日均量,卖出'),colorred; i:=i+1; END if s11=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'DIFF下穿DEA,空头形成,卖出'),colorff00ff; i:=i+1; END if s12=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'三死叉见顶,卖出'),coloryellow; i:=i+1; END if s13=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'多方溃败,卖出'),colorgreen; i:=i+1; END if s14=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'换手过大,小心主力出逃'); i:=i+1; END if s15=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'6日RSI超买,防止回挡'); i:=i+1; END if s15=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'6日RSI超买,防止回挡'); i:=i+1; END if s16=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'6日RSI向上突破85,超买'); i:=i+1; END if s17=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'6日RSI超卖,有可能反弹'); i:=i+1; END if s18=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'6日RSI向上突破15,买进信号'); i:=i+1; END if s19=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'6日RSI向下跌破85,卖出信号'); i:=i+1; END if s20=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'分水岭之上,多头,可积极做多'); i:=i+1; END if s21=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'分水岭之下,空头,只能抢反弹'); i:=i+1; END if s22=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'布林收敛中,有变盘可能'); i:=i+1; END if s23=1 THEN BEGIN DRAWTEXT(c>0 and BARSTATUS=2 ,e-i*e2,'布林乖离太大,有反弹可能'); i:=i+1; END ELSE; [ Last edited by 唐仁政 on 2005-4-11 at 19:45 ]股票论坛 www.55188.com |
|