-- 作者:clant
-- 发布时间:2013/6/18 15:30:58
-- [求助]在副图中, 如何在两个不同的坐标点之间画横线。而不是连线。非常感谢!!
在副图中, 如何在两个不同的 坐标之间画横线。而不是连线。非常感谢!!
如图:如何在两个 “前高” 之间画横线。谢谢
此主题相关图片如下:图像.jpg
-----------------源码如下-----------------------
DIF:EMA((CLOSE+h+l)/3,12)-EMA((CLOSE+h+l)/3,26); DEA:EMA(DIF,9); MACD:DIF; STICKLINE(MACD>=0,MACD,0 ,5,0) ,COLORred; STICKLINE(MACD<0,MACD,0 ,5,0 ),COLORGREEN; STICKLINE(MACD>0 AND MACD<REF(MACD,1),MACD,0,5,0),COLORYELLOW; STICKLINE(MACD<0 AND MACD<REF(MACD,1),MACD,0,5,0),COLORBLUE; VA1:=HHVBARS(MACD,BARSLAST(MACD<0)+1); VA2:=CROSS(BACKSET(CROSS(0,MACD),REF(VA1,1)+2),0.5); QG:=CROSS(BACKSET(CROSS(0,MACD) OR (ISLASTBAR AND MACD>0),REF(VA1,1)+2),0.5);
///
前高:DRAWLINE(MACD>0.5 AND VA2,MACD,REF(VA2,1),REF(MACD,1),1),COLORMAGENTA;
///
VA3:=LLVBARS(MACD,BARSLAST(MACD>0)+1); VA4:=CROSS(BACKSET(CROSS(MACD,0),REF(VA3,1)+2),0.5); BD:=BARSLAST(FILTERX(CROSS(0,MACD),BARSCOUNT(C))); 前低:DRAWLINE(MACD<-0.5 AND VA4,MACD,REF(VA4,1),REF(MACD,1),1); BDTJ:=IF(MACD<0,FILTERX(MACD=LLV(MACD,BARSLAST(MACD>0)), BARSCOUNT(C)),DRAWNULL); TSBDTJ:=BARSLAST(BDTJ); BDZH:=FILTERX(MACD<CONST(LLV(MACD,BD+1)),BARSCOUNT(C)); BDTS:=BARSLAST(BDZH); 本低:IF(BD+1>=1,CONST(LLV(MACD,BD+1)),DRAWNULL); BDCL:=CROSS(COUNT(CROSS(MACD>本低/2 AND MACD<0,0.5),TSBDTJ)=1,0.5) AND TSBDTJ>=0; 终点:=IF(ISLASTBAR AND MACD>0 AND MACD=HHV(MACD,BARSLAST(MACD<0)),1, IF(FILTERX(QG,BARSCOUNT(C)),2,DRAWNULL)); UU:=(终点=1 OR 终点=2) AND MACD>0; ZZ:=FILTERX(UU,BARSCOUNT(C)); 本高:DRAWLINE(ZZ,MACD,REF(ZZ,1),REF(MACD,1),1),COLORWHITE; 横线:=CONST(REF(MACD,BARSLAST(ZZ))); WW:=MACD>横线; 起始点:=FILTERX(REFX(BARSLAST(WW),1)=1,BARSCOUNT(C)); 天数:BARSLAST(起始点),COLORYELLOW,NODRAW; //上横线:DRAWLINE(起始点,横线,ZZ,横线,0),COLORGREEN,DOTLINE; //下横线:DRAWLINE(BDZH,CONST(LLV(MACD,BD+1)),BDTJ=1,MACD,0),COLOR8080FF,DOTLINE; //DRAWNUMBER(BDTJ,CONST(LLV(MACD,BD+1))*0.9,BDTS); //DRAWNUMBER(ZZ,上横线*1.1,天数); TJ:=IF(起始点,BARSsince(ZZ),DRAWNULL); 红柱数量:IF(天数>0 AND 天数<=REF(TJ,天数),SUM(MACD>0,天数),DRAWNULL),COLORWHITE,NODRAW; 横线起始价:REF(C,天数),NODRAW; 空间评估:(横线起始价-C)/C*100,NODRAW; TT:=BARSLAST(ZZ); WQG:=CROSS(COUNT(CROSS(MACD<本高/2 AND MACD>0,0.5),ZZ)=1,0.5) AND ZZ>=0; STICKLINE(MACD>前高 AND 本高>前高 AND BARSLAST(CROSS(MACD<本高/2,0.5))>0 AND MACD>(前高+本高)/2,MACD,前高,1,0),COLORYELLOW;
//前高本高二分位:IF(MACD>0 AND 本高<>前高,WQG,REF(WQG,1),REF((前高+本高)/2,1),1),DRAWNULL),COLORC0C000,DOTLINE; AA:=STRCAT(STRCAT(STRCAT(\'〖\',\'上升空间\'),\'〗\'),CONST(IF(空间评估,空间评估,DRAWNULL))); DRAWTEXT(WQG,MACD*1.1,\'本高成立\'),COLORWHITE; DRAWTEXT(BDCL,MACD*1.1,\'本低成立\'),COLORWHITE; STICKLINE(MACD>前高,MACD,前高,1,0),COLORYELLOW; STICKLINE(WQG,MACD,0,1,0),COLORGREEN; STICKLINE(MACD<0 AND MACD<前低 AND 前低<0,MACD,前低,1,0),COLORBLUE; B1:=IF(CROSS(MACD<0,0.5),BARSsince(BDTJ),DRAWNULL); TSB1:=BARSLAST(MACD>0)-1; STICKLINE(BARSLAST(BDCL)>=0 AND MACD<前低 AND MACD<0,MACD,前低,1,0),COLORGREEN; STICKLINE(BDCL,MACD,0,1,0),COLORWHITE; STICKLINE(MACD>前高 AND 本高>前高 AND BARSLAST(WQG)>0, MACD,前高,1,0),COLORRED; DRAWTEXT(MACD>0.5 AND VA2 AND VA2!=UU,(MACD/10)*9,\'前\'); DRAWTEXT(MACD>0.5 AND VA2 AND VA2!=UU,MACD/10,\'高\'); DRAWTEXT(MACD<-0.5 AND VA4 AND VA4!=UU,(MACD/10)*9,\'前\'); DRAWTEXT(MACD<-0.5 AND VA4 AND VA4!=UU,MACD/10,\'低\');
DRAWTEXT(ZZ,(MACD/10)*9,\'本\'),COLORWHITE; DRAWTEXT(ZZ,MACD/10,\'高\'),COLORWHITE; DRAWTEXT(BDTJ,(MACD/10)*9,\'低\'),COLORRED; DRAWTEXT(BDTJ,MACD/10,\'本\'),COLORRED; IF(BARSLAST(BDCL)>=0,本低/2,DRAWNULL),COLORRED,DOTLINE; //DRAWBAND(IF(DIF,DIF,DRAWNULL),RGB(250,250,250),DIF,RGB(0,0,0)); //DRAWBAND(IF(DEA,DEA,DRAWNULL),RGB(250,250,10),DEA,RGB(0,0,0));
[此贴子已经被作者于2013/6/18 15:32:08编辑过]
|