
01 福利分享
今天要和大家分享的,是我工具箱里一个用了很久的"宝藏"指标 💎
我叫它【年度多空强弱主图】。源码已经整理好了,如果你想把它添加到自己的软件里,照着文末的操作就行。
02 指标原理
这个指标到底"画"了些什么?
老话说,站得高才能看得远。看股票也一样,天天盯着那几根K线上下翻飞,容易"一叶障目" 👀
这个指标做的第一件事,就是帮你"拉高视野"。
它的核心逻辑,是先把今年以来的最高价和最低价给找出来,在图上画上两条最粗的线:
一条是黄色的"天花板"(天)☀️
一条是绿色的"地板"(地)🌿
有了这"顶天立地"的两条线,你一眼就能看出,现在股价是在山腰、山脚,还是快摸到山顶了。
光有天地线还不够,它接着在这"天地"之间,均匀地划分出三个区域,用"强、中、弱"三条线来标注 📏
这相当于给跑道划了分界线:
股价运行在"强"区之上,说明它处在年度里的强势区间 📈
如果跌到"弱"区之下,那今年整体就偏弱势了 📉
这能帮你快速给股票"定性"。

它怎么帮我感知"多空力量"的变化?
如果说上面是"划地盘",那下面就是"看打架" 🤼
指标用了一种能自己调整速度的均线算法(KMA线),并结合了另一条中期均线,来刻画"多空动能"。
最直观的,是图上那些彩色柱子 🌈
这些柱子的长短和颜色,直接反映了多空力量博弈的结果:
🔴 红色粗柱子:代表多头力量占优,而且还在增强,这是比较健康的上涨状态
🟣 紫红色细柱子:虽然多头占优,但力量在减弱,提示你要留意上涨会不会乏力
🟡 暗黄色粗柱子:代表空头力量占优,但抛压在减弱,可能跌不动了
🟢 绿色细柱子:空头占优,且抛压还在加大,这时候就要多一分警惕了
说白了,柱子长短看谁强谁弱,柱子颜色看力量是增是减 ✨
这不比你单纯看K线是红是绿更有意思?
指标还把这种"多空动能"的数值,用类似布林带的通道形式表现出来(图上黄色的"上""下"线)📊
当动能线上穿通道上沿,会提示"▲",可能预示短期过热;
下穿通道下沿出现"▲",则可能预示反弹机会。
星星"★"则是反向信号。
这等于给动能的极端状态加了"温度计" 🌡️
此外,指标还用亮黄色标出"年度天量"的K线,用特殊颜色标记涨跌停。这些都是重要的盘面语言 💬
总结一下 📝
这个指标就像一个"盘面翻译器" 🗣️
它通过"年度框架"帮你定位,通过"强弱分区"帮你定性,再通过"彩色动能柱"和通道,把抽象的多空力量博弈视觉化。
用好了,它能帮你更好地理解股价运行的位置和状态,辅助你做出决策。
记住,工具是帮你"看见"的,决策还得靠你自己的逻辑 🧠
完整指标源码:
年:=1+(BARSLAST(YEAR!=REF(YEAR,1) OR DATETODAY(DATE)=1));
天数:=IF(PERIOD=5,年,DRAWNULL);
高1:=HHV(H,天数);
低1:=LLV(L,天数);
高低:(C-低1)/(高1-低1)*100,,NODRAW,COLORFFFF00;
振幅:(高1-低1)/低1*100,NODRAW,COLORWHITE;
天:CONST(高1),NODRAW,COLORYELLOW;
地:CONST(低1),NODRAW,COLOR00FF00;
强:CONST(高1-(高1-低1)*1/3),NODRAW,COLORFFFF00;
中:CONST(高1-(高1-低1)*1/2),NODRAW,COLORWHITE;
弱:CONST(高1-(高1-低1)*2/3),NODRAW,COLOR0099FF;
STICKLINE(C>0,CONST(高1-(高1-低1)*1/4),CONST(高1-(高1-低1)*1/4),2,0),COLORFF00FF;
STICKLINE(C>0,CONST(高1-(高1-低1)*3/4),CONST(高1-(高1-低1)*3/4),2,0),COLORFF00FF;
STICKLINE(C>0,天,天,10,0),COLORYELLOW;
STICKLINE(C>0,地,地,10,0),COLOR00FF00;
STICKLINE(C>0,强,强,10,0),COLORFFFF00;
STICKLINE(C>0,中,中,10,0),COLORWHITE;
STICKLINE(C>0,弱,弱,10,0),COLOR0099FF;
N:=12;
DP:=(H+L+2*C)/4;
DN:=ABS(CLOSE-REF(CLOSE,N));
VY:=SUM(ABS(CLOSE-REF(CLOSE,1)),N);
ER:=DN/VY;
FSC:=2/(2+1);
SSC:=2/(N+1);
SC:=ER*(FSC-SSC)+SSC;
SCSQ:=SC*SC;
KMA:DMA(DP,SCSQ),COLOR00FF00,LINETHICK2;
多空:EMA(DP,50),COLORFFFF00,LINETHICK2;
RC:=地;
DK:=(EMA(DP,12)-多空);
STICKLINE(DK>0 AND DK>REF(DK,1),RC,RC+DK,1,0),COLOR006699;
STICKLINE(DK>0 AND DK<=REF(DK,1),RC,RC+DK,1,1),COLORFF00AA;
STICKLINE(DK<0 AND DK>REF(DK,1),RC,RC+DK,1,0),COLOR998800;
STICKLINE(DK<0 AND DK<=REF(DK,1),RC,RC+DK,1,1),COLOR009900;
BUY:=KMA>EMA(KMA,3);
DRAWKLINE(H,O,L,C);
【量H】:=IF((AMOUNT/C)/(HHV(AMOUNT,21)/HHV(C,21))*100>100,100,(AMOUNT/C)/(HHV(AMOUNT,21)/HHV(C,21))*100);
STICKLINE(【量H】=100,L,H,0.4,0),COLORYELLOW;
STICKLINE(【量H】=100 AND C>=O,C,O,4,1),COLORYELLOW;
STICKLINE(【量H】=100 AND C<O,C,O,4,0),COLORYELLOW;
ZDF:=(C-REF(C,1))/REF(C,1)*100;
STICKLINE(ZDF>9.8,O,C,2,0),COLORRED;
STICKLINE(ZDF<-9.8,O,C,2,0),COLORBLUE;
Q43:CONST(高1-(高1-低1)*1/4),NODRAW;
Q41:CONST(高1-(高1-低1)*3/4),NODRAW;
DK1:=DK+RC;
M20:=MA(DK1,20);
S:=STD(DK1,20);
高:=M20+2*S;
低:=M20-2*S;
【上】: 高,COLORFFFF00;
【下】: 低,COLORFFFF00;
DRAWTEXT(CROSS(高,DK1),高,'★'),COLOR00FF00;
DRAWTEXT(CROSS(DK1,高),高,'▲'),COLORYELLOW;
DRAWTEXT(CROSS(DK1,低),低,'▲'),COLOR00FF00;
DRAWTEXT(CROSS(低,DK1),低,'★'),COLORYELLOW;
IF(多空>MA(DP,50),多空,DRAWNULL),COLOR00FF00,LINETHICK2;
IF(BUY=1,KMA,DRAWNULL),COLORRED,LINETHICK2;
