漂亮趋势主图指标源码主要实现以下功能:
信息标注:在图表固定位置显示股票所属风格和概念板块,用不同颜色区分文字(紫色标注标题,黄色显示具体内容)。
趋势分析:通过计算10日周期内的最高成交量位置、资金动向和均线成本,判断短期趋势强度。
买卖信号:
当日涨幅接近涨停(9.5%-10.5%或19.5%-20.5%等)且收盘价等于最高价时,用紫色柱状标出建仓条件。
结合筹码分布、换手率等条件,筛选出底部形态(筹码集中且价格低位)和强势突破(短期涨幅超4%)的个股,标记为短线买点。
辅助线:绘制5日均线(白色虚线)和34日加权均线(红色粗线),帮助观察中期趋势。
操作策略:
当出现紫色建仓柱或黄色买点提示时,可关注短线机会;
红色粗线(中线)向上且筹码高度集中时,视为趋势买点;
需配合非科创板、换手率低于20%等条件过滤风险。
{主图源码如下}
DRAWTEXT_FIX(1,0.005,0,0,'所属风格:'),COLORMAGENTA;
DRAWTEXT_FIX(1,0.06,0,0,FGBLOCK),COLORYELLOW;
DRAWTEXT_FIX(1,0.005,0.05,0,'所属概念:'),COLORMAGENTA;
DRAWTEXT_FIX(1,0.06,0.05,0,GNBLOCK),COLORYELLOW;
趋势周期10:=10;
趋势均成本:=CONST(HHVBARS(V,10)),COLOR0000FF,LINETHICK1;
趋势资金:=-20;
趋势趋势:=40;
建仓条件:=CLOSE/REF(CLOSE,1)>=1.095 AND CLOSE/REF(CLOSE,1)<=1.105 OR (CLOSE/REF(CLOSE,1)>=1.195 AND CLOSE/REF(CLOSE,1)<=1.205)OR (CLOSE/REF(CLOSE,1)>=1.295 AND CLOSE/REF(CLOSE,1)<=1.305)AND CLOSE=HIGH;
STICKLINE(建仓条件,OPEN,CLOSE,1,0),COLORMAGENTA;
DRAWTEXT(建仓条件,H*1.026,''),COLORYELLOW;
趋势仓位水平:=(3*CLOSE+OPEN+HIGH+LOW)/6;
趋势偏离:= (EMA(趋势仓位水平,12)-REF(EMA(趋势仓位水平,36),1))/REF(EMA(趋势仓位水平,36),1)*100+50,NODRAW;
均13成本:=0.01*EMA(AMOUNT,13)/EMA(VOL,13);
控盘情况:=(CLOSE-均13成本)/均13成本*1000,NODRAW;
换手率:=VOL/CAPITAL*100;
非科创板:=IF(CODELIKE('688'),0,1);
趋势控盘度:=COST(85);
仓位升水:=COST(15);
趋势宽度:=趋势控盘度-仓位升水;
趋势均值:=(趋势控盘度+仓位升水)/2;
趋势集30:=趋势宽度/趋势均值*100< 30,LINETHICK0;
趋势支撑位:=HHV(HIGH,250);
趋势突破位:=LLV(LOW,250);
趋势建仓位:=趋势支撑位-趋势突破位;
最佳买点:=(趋势均值-趋势突破位);
筹均低位:=趋势均值< (趋势建仓位*0.4+趋势突破位),LINETHICK0;
底部形态:=趋势集30 AND 筹均低位;
涨超4%:=C/REF(C,1)>1.04;
强势支撑:=EMA(100*(CLOSE-LLV(LOW,30))/(HHV(HIGH,30)-LLV(LOW,30)),3);
高位收阳:=强势支撑>=75 AND C>0 AND CLOSE>OPEN;
短线趋势:=FILTER(高位收阳 AND 底部形态 AND 最佳买点 AND WINNER(C)>=0.90 AND 涨超4% AND C/REF(C,1)>1.092 AND C=H AND C< 40 AND 非科创板 AND 换手率< 20,10),NODRAW;
短线:EMA(CLOSE,5),LINETHICK1,COLORWHITE DOTLINE;
均值持仓:=(3*C+L+O+H)/6;
加权均值:=(20*均值持仓+19*REF(均值持仓,1)+18*REF(均值持仓,2)+17*REF(均值持仓,3)+16*REF(均值持仓,4)+15*REF(均值持仓,5) +14*REF(均值持仓,6)+13*REF(均值持仓,7)+12*REF(均值持仓,8)+11*REF(均值持仓,9)+10*REF(均值持仓,10)+9*REF(均值持仓,11) +8*REF(均值持仓,12)+7*REF(均值持仓,13)+6*REF(均值持仓,14)+5*REF(均值持仓,15)+4*REF(均值持仓,16) +3*REF(均值持仓,17)+2*REF(均值持仓,18)+REF(均值持仓,20))/210;
中线:EMA(加权均值,34),LINETHICK2,COLORRED;
STICKLINE(短线趋势,O,C,1,0),COLORFF0080;
高度控盘:=BARSLASTCOUNT(控盘情况>0 AND 控盘情况>=50)=1;
STICKLINE(高度控盘,C,O,2,0),COLORRED;
DRAWICON(高度控盘,L*1.002,9);
DRAWTEXT(高度控盘,L*0.93,' ↖趋势买点'),COLORYELLOW;
{副图源码如下}
DI1F:=(EMA(OBV,12) - EMA(OBV,26));
DE1A:=EMA(DI1F,9);
MACD:(2 * (DI1F - DE1A)),NODRAW,COLORFF8000;
0;
STICKLINE(MACD< REF(MACD,1) AND MACD>0,0,MACD,3,1),COLOR0080FF,LINETHICK2;
STICKLINE(MACD>=REF(MACD,1) AND MACD>0,0,MACD,3,1),COLOR0000FF,LINETHICK2;
STICKLINE(MACD>REF(MACD,1) AND MACD< 0,0,MACD,3,1),COLORFF8000,LINETHICK2;
STICKLINE(MACD<=REF(MACD,1) AND MACD< 0,0,MACD,3,1),COLORFFFF00,LINETHICK2;
DIF:(EMA(OBV,12) - EMA(OBV,26)),COLORFFFFFF,LINETHICK3;
DEA:EMA(DIF,9),COLOR00FFFF,LINETHICK3;
趋势:=MACD>0;
T:=MACD< 0;
DRAWTEXT(BARSLAST(趋势)=5,0.03,'5'),COLORYELLOW;
DRAWTEXT(BARSLAST(趋势)=8,0.03,'8'),COLORYELLOW;
DRAWTEXT(BARSLAST(趋势)=13,0.03,'13'),COLORYELLOW;
DRAWTEXT(BARSLAST(趋势)=21,0.03,'21'),COLORYELLOW;
DRAWTEXT(BARSLAST(趋势)=34,0.03,'34'),COLORYELLOW;
DRAWTEXT(BARSLAST(趋势)=55,0.03,'55'),COLORYELLOW;
DRAWTEXT(BARSLAST(T)=5,-0.03,'5'),COLORGREEN;
DRAWTEXT(BARSLAST(T)=8,-0.03,'8'),COLORGREEN;
DRAWTEXT(BARSLAST(T)=13,-0.03,'13'),COLORGREEN;
DRAWTEXT(BARSLAST(T)=21,-0.03,'21'),COLORGREEN;
DRAWTEXT(BARSLAST(T)=34,-0.03,'34'),COLORGREEN;
DRAWTEXT(BARSLAST(T)=55,-0.03,'55'),COLORGREEN;
趋势4:=CROSS(DIF,0);
趋势5:=CROSS(0,DIF);
趋势6:=BARSLAST(趋势4);
趋势7:=BARSLAST(趋势5);
趋势8:=REF(趋势4,1);
趋势9:=REF(趋势5,1);
DIF0:=BARSLAST(趋势8);
DIF1:=BARSLAST(趋势9);
DIF2:=IF((DIF0 < DIF1),REF(HHV(HIGH,2),DIF0),REF(LLV(LOW,2),DIF1));
DIF3:=(((REF(OBV,1) <= REF(DIF2,1)) AND (OBV > DIF2)) AND (趋势6 < 趋势7));
DIF33:=(((REF(OBV,1) >= REF(DIF2,1)) AND (OBV < DIF2)) AND (趋势7 < 趋势6));
DIF4:=(DIF3 AND (COUNT(DIF3,趋势6) = 1));
DIF5:=(DIF33 AND (COUNT(DIF33,趋势7) = 1));
DIF6:=(DIF4 AND (REF(BARSLAST(DIF5),1) < REF(BARSLAST(DIF4),1)));
DIF7:=(DIF5 AND (REF(BARSLAST(DIF5),1) > REF(BARSLAST(DIF4),1)));
DIF8:=(DIF4 AND (REF(BARSLAST(DIF5),1) > REF(BARSLAST(DIF4),1)));
DIF9:=(DIF5 AND (REF(BARSLAST(DIF5),1) < REF(BARSLAST(DIF4),1)));
BSLINE:=IF((BARSLAST(DIF6) < BARSLAST(DIF7)),IF(REF(CROSS(0,MACD),1),LLV(LOW,2),REF(LLV(LOW,2),BARSLAST(REF(CROSS(0,MACD),1)))),IF(REF(CROSS(MACD,0),1),HHV(HIGH,2),REF(HHV(HIGH,2),BARSLAST(REF(CROSS(MACD,0),1)))));
DEA3:=BARSLAST(CROSS(MACD,0));
DEA5:=BARSLAST(CROSS(0,MACD));
DEA4:=IF((MACD >= 0),HHV(MACD,(DEA3 + 1)),REF(HHV(MACD,(DEA3 + 1)),(DEA5 + 1)));
DEA6:=IF((MACD < 0),LLV(MACD,(DEA5 + 1)),REF(LLV(MACD,(DEA5 + 1)),(DEA3 + 1)));
DEA7:=REF(DEA4,(DEA3 + 1));
DEA8:=REF(DEA6,(DEA5 + 1));
零下金叉:CROSS(DIF,DEA) AND DIF< 0,NODRAW,COLOR0000FF;
零上金叉:CROSS(DIF,DEA) AND DIF>=0 AND DIF< 0.25 ,NODRAW,COLOR4080FF;
DRAWICON(零上金叉,DEA,1) ;
DRAWICON(零下金叉,DEA,1) ;
JCCOUNT:=COUNT(CROSS(DIF,DEA),BARSLAST(DEA>=0));
二次金叉:CROSS(DIF,DEA) AND DEA< 0 AND COUNT(JCCOUNT=2,21)=1,NODRAW,COLOR00FFFF;
DRAWTEXT(二次金叉,DEA*0.4,'★二金'),COLORYELLOW;
A1:=BARSLAST(REF(CROSS(DIF,DEA),1));
底背离:=REF(OBV,A1+1)>OBV AND DIF>REF(DIF,A1+1) AND CROSS(DIF,DEA);
底背:DRAWLINE(A1=0,DEA,底背离,DEA,0),COLORRED,POINTDOT;
DRAWTEXT(底背离,DEA*0.6,'底背离'),COLORRED;
A2:=BARSLAST(REF(CROSS(DEA,DIF),1));
顶背离:=REF(OBV,A2+1)< OBV AND REF(DIF,A2+1)>DIF AND CROSS(DEA,DIF);
顶背:DRAWLINE(A2=0,DEA,顶背离,DEA,0),COLORGREEN,POINTDOT;
DRAWTEXT(顶背离,DEA*1.3,'顶背离'),COLORGREEN;
DRAWTEXT(零下金叉 AND 二次金叉 AND 底背离,DIF*-1,'★底现★'),COLORFFFFFF;
趋势哥19:=HHVBARS(MACD,BARSLAST(MACD< 0)+1);
趋势哥20:=CROSS(BACKSET(CROSS(0,MACD),REF(趋势哥19,1)+2),0.5);
趋势哥22:=DRAWLINE(趋势哥20,MACD,REF(趋势哥20,1),REF(MACD,1),1);
趋势哥23:=LLVBARS(MACD,BARSLAST(MACD>0)+1);
趋势哥24:=CROSS(BACKSET(CROSS(MACD,0),REF(趋势哥23,1)+2),0.5);
趋势哥25:=BARSLAST(FILTERX(CROSS(0,MACD),BARSCOUNT(OBV)));
趋势哥26:=DRAWLINE(趋势哥24,MACD,REF(趋势哥24,1),REF(MACD,1),1);
MACD0:=BACKSET(ISLASTBAR,BARSLAST(趋势哥20)+1);
MACD1:=MACD0>REF(MACD0,1);
前1高:REF(MACD,BARSLAST(MACD1)),COLORYELLOW,LINETHICK2;
STICKLINE(MACD>趋势哥22,MACD,趋势哥22,2,0),COLORYELLOW;
STICKLINE(MACD< 0 AND MACD< 趋势哥26 AND 趋势哥26< 0,MACD,趋势哥26,1,0),COLORFFFFFF;
H7:=BARSLASTCOUNT(DIF>DEA );
DRAWNUMBER(ISLASTBAR,0,H7),COLORFFFFFF,LINETHICK9;
IF(DIF>REF(DIF,1),DIF,DRAWNULL),COLORRED;
STICKLINE(DIF< 0 AND CROSS(DIF,DEA),DEA,0,0,0),COLORRED;
STICKLINE(DIF>0 AND CROSS(DEA,DIF),DEA,0,0,0),COLORGREEN;
STICKLINE(DIF< 0 AND CROSS(DIF,DEA),DEA,0,0,0),COLORRED;
STICKLINE(DIF>0 AND CROSS(DEA,DIF),DEA,0,0,0),COLORGREEN;
DRAWTEXT(DIF< 0 AND CROSS(DIF,DEA),DEA/2,'—');
DRAWTEXT(DIF>0 AND CROSS(DEA,DIF),DEA/2,'—');
ZYG1:=MACD.DIF#WEEK(12,26,9);
ZYG2:=MACD.DEA#WEEK(12,26,9);
ZYG3:=MACD.MACD#WEEK(12,26,9);
ZYG4:=CROSS(ZYG1,ZYG2);
0,COLOR00FF00;
IF(ZYG3>0,0,DRAWNULL),COLOR0000FF;
DRAWTEXT(ZYG4,DIF/2*-1,'周金叉'),COLORRED;
DRAWTEXT(CROSS(ZYG2,ZYG1),DIF/2*-1,'周死叉'),COLORFFFF00;