1. 量能饱和度解决了VOL柱状图的哪些痛点1.1 原始成交量的绝对值问题做交易看盘成交量这一关谁都躲不开。我用了很多年成交量柱状图心里始终有一个讲不出但很别扭的问题同样是一根放量阳线成交80万手和成交150万手放在不同个股、不同板块、不同流通盘面前根本没有可比性。80万手对一只流通盘1个亿的股票来说可能已经热得发烫对一只流通盘10个亿的大票来说却只是一次普通波动。很多朋友会在VOL指标旁边叠加一条均量线比如MA(VOL,5)或者MA(VOL,10)靠均量线的方向来判断量能趋势。这个办法有效但它只能告诉你“今天的量比过去几天的平均值大了还是小了”没办法告诉你“这个量在最近一个多月里到底处于什么水平”。说白了它是一个有方向、没有位置的量能描述。1.2 均量线滞后得让人难受均量线还有一个绕不开的毛病滞后。20日均量线要走平再拐头通常已经错过价格启动的第一段。我早期做量能分析时一直盯着5日均量上穿20日均量这个信号结果发现真正赚钱的股票往往在均量线金叉之前就已经拉出大阳线等金叉出现很多人已经开始考虑兑现利润了。后来我意识到问题不在于均量线本身而在于我们总想用一个“平均值”去预测“拐点”。成交量不像价格那样有明确的支撑压力位单日放量很多时候是消息刺激缩量也可能只是节前资金休息。想要从量能变化里找到稍微稳定一点的信号需要一个更接近“位置”而不是“方向”的观察工具。1.3 饱和度指标把“放量缩量”变成可比较的刻度这个“麟龙量能饱和度”指标正好解决了我上面说的两个痛点。它的核心思路是把当前量能放在一个可比的刻尺上先用短期均量代表当前量能水平再用一段时间内最高成交量和最低成交量组成一个“量能容量区间”最后算出当前均量在这个区间里的相对位置并且把结果压缩到0到1之间。这样一来不管股票是每天成交几十万手还是几百万手都能统一看成“当前量能离区间上限还有多远”。数值越接近1.00就表示量能越靠近近期区间的顶部差不多到了“饱和”的水平数值越接近0.20以下就表示量能接近近期地量区域。网上很多版本写成“量能饱合度”其实是“饱和度”的常见错别字但搜索的时候用“饱合”反而更容易找到各种历史帖子。用一个生活化的类比同样一壶水50度和90度给人的感觉完全不同但如果你只看“有没有在冒热气”就很难区分。饱和度这个刻度相当于给了温度计让量能从“有或没有”变成“高或低”。2. 麟龙量能饱和度公式源码逐段拆解2.1 完整源码副图版网上流传的麟龙量能饱和度版本非常多有的被加密过有的换了个变量名就成了新指标。我按通达信语法整理了一版我长期在用的保留了原始逻辑同时修掉了除数为零和一些冗余判断把它放在副图里用起来最直观。{麟龙量能饱和度 副图} M:5; T:34; VOLM:MA(VOL,M); HH:HHV(VOL,T); LL:LLV(VOL,T); RANGE:IF(HHLL,HH-LL,0.0001); RAW:(VOLM-LL)/RANGE; RAW:IF(RAW1,1,IF(RAW0,0,RAW)); SAT:EMA(RAW,3); 饱和度:SAT,COLORRED,LINETHICK2; 均线:MA(SAT,T),COLORYELLOW,LINETHICK1; 上轨:0.8,COLORWHITE; 下轨:0.2,COLORWHITE; DRAWICON(CROSS(SAT,0.8),0.9,1); DRAWTEXT(CROSS(0.8,SAT),0.72,量能回落),COLOR00FF00;这段代码可以直接复制到通达信的公式编辑器里使用下面我按顺序把每一行的意义讲清楚这样你不仅能粘贴还能自己调参。2.2 核心量的处理为什么用5日和34日窗口第一行M:5是短期均量的周期第二行T:34是量能容量窗口。为什么是5和34这两个数字5代表一周左右能够快速反映最近几个交易日真实的量能水平不至于被某一天异常放量完全带偏。34代表一个半月的交易周期刚好覆盖一波小级别趋势从启动到消化的过程用它来定义“量能容量区间”比较合理。VOLM:MA(VOL,M)这行算的是5日均量。直接拿单日成交量去比较容易因为停牌、突发利空、节前效应产生剧烈跳动所以先用均线把量的骨架提出来。这里我还要多说一句MA和EMA的区别要搞清楚MA是简单移动平均所有样本权重相同EMA是指数移动平均近期数据权重更大。在这版指标里计算初始RAW时用MA后面平滑再上EMA是一个“先看中期位置、再看近期变化”的组合设计。2.3 把量能压缩到0~1区间的核心计算逻辑后面三行是整个公式的灵魂HH:HHV(VOL,T); LL:LLV(VOL,T); RANGE:IF(HHLL,HH-LL,0.0001);HHV(VOL,T)取最近34日成交量最大值LLV(VOL,T)取最小值这两个值组成一个“量能活动区间”。RANGE是区间宽度也就是最大值减最小值。为了防止理想状态下成交量完全不变导致分母为零加了一个0.0001的保护值。接下来RAW:(VOLM-LL)/RANGE;这句是用“当前5日均量减去区间最低量”再除以“区间宽度”算出来的结果天然就落在0到1之间如果当前均量等于区间最低量RAW就是0如果当前均量等于区间最高量RAW就是1。这里有个容易被忽略的细节由于我们用5日均量去计算所以即使某天放天量经过均量平滑后也不会当场冲到1.00而是会连续几天拉高这正好符合“量能是逐步累积爆发”的实际情况。紧接着一行是截断处理RAW:IF(RAW1,1,IF(RAW0,0,RAW));这个是为了防止价格除权或者极端行情导致数值越界把最终计算稳定在0到1区间里。网上有些版本不做这步信号会飘到1.2甚至1.5画面上极其难看而且后期没法用固定阈值判断。2.4 画线、图标与文字提示的执行细节SAT:EMA(RAW,3); 饱和度:SAT,COLORRED,LINETHICK2; 均线:MA(SAT,T),COLORYELLOW,LINETHICK1; 上轨:0.8,COLORWHITE; 下轨:0.2,COLORWHITE;SAT是对RAW再做一次3日EMA平滑主要目的是过滤掉连续涨停板、跌停板造成的量能突变毛刺。然后正式输出两条曲线一条红色的是“饱和度”本身另一条黄色的是饱和度34日均线用来判断饱和度自己的趋势方向。白色0.8线和0.2线分别对应“量能过热区”和“量能低迷区”。DRAWICON(CROSS(SAT,0.8),0.9,1)这行很多人搜寻通达信图标代码时关心的就是这里。DRAWICON里的最后一个数字1表示使用1号图标在饱和度从下往上穿越0.8的位置画出一个圆点提示。这可以对应到热搜里说的“圆圈1.00”其实这是一个圆圈提示出现在副图0.9高度附近配合饱和度数值接近1.00就形成了“量能饱和”的视觉标记。DRAWTEXT(CROSS(0.8,SAT),0.72,量能回落)则是当饱和度从0.8上方跌下来时在0.72位置显示四个字提示“量能过热后滑落”。3. 通达信安装和调试全过程3.1 新建副图指标公式的具体步骤打开通达信软件按快捷键CtrlF打开公式管理器或者从菜单栏依次点击“功能—公式系统—公式管理器”。在弹出的窗口左侧看到“技术指标公式”目录右键选择“新建公式”。名称栏建议填麟龙量能饱和注意不要用纯中文括号通达信对名称里的特殊字符比较敏感。画线方法选择“副图”这是关键如果你选了“主图叠加”饱和度0到1的数值会被直接画在K线上图像会缩成一团没有实际参考价值。公式类型保持默认的“其他”或者“均线型”都可以不用特别改。然后把上面那一段完整源码粘贴到编辑区点击“测试公式”如果底部提示“测试通过”再点“确定”保存。3.2 坐标和显示效果的设置保存之后在任意个股K线界面输入麟龙量能饱和的首字母就能调到新建立的副图。如果副图显示成一条水平线或者数值被压扁需要检查坐标设置。进入指标副图后右键选择“指标坐标”把坐标类型换成“普通坐标”或者“百分比坐标”坐标范围建议手动设置成0到1这样0.2和0.8两条参考线才会稳定显示在同样的高度不同股票之间也方便横向对比。有一点我要特别提醒公式里的饱和度:SAT后面如果没加LINETHICK2有些通达信版本会把线画得特别细红线和白线看起来几乎黏在一起。修改的时候直接在输出语句后面补上,COLORRED,LINETHICK2即可。3.3 调试时最容易碰到的三种异常情况一是公式测试时报“缺少函数名”或者“变量重复定义”。这通常是因为复制源码时把中文注释和英文冒号搞混了通达信要求输出语句用英文冒号变量赋值用:注释用花括号{}括起来。建议先清空编辑器再重新粘贴。二是指标显示一直等于1.00整条线像一根直线贴在天花板上。出现这个情况绝大多数原因是股票上市时间还不到34个交易日HHV(VOL,34)用到的最早数据不足系统会把区间最大值当成当前值导致RAW算出来恒为1。遇到新股或者次新股不用硬套这个指标可以等上市满2个月后再参考。三是图标不显示。DRAWICON的编号在不同通达信版本中略有不同1号图标本身应该存在但如果你换了极简皮肤或者老版本可能会被吞掉。可以把DRAWICON(CROSS(SAT,0.8),0.9,1)中的1改成2、3试一下就能找到当前版本可用的图标编号。4. 实战信号怎么读三类情景和我的判断框架4.1 低量区掉头缩量到极致的备选观察先看低量区。当饱和度长期运行在0.2以下并且黄色均线也开始走平甚至微微上翘说明这只股票进入了一段相当萎靡的缩量期市场参与度极低。这种状态对应的典型K线形态是小阴小阳、上下影线都不长价格在狭窄区间里来回磨。我的做法是当饱和度从0.2以下第一次上穿0.2时不急着买入先把它放进自选股观察池。因为“地量见地价”是经常出现但不是每一次地量后面都立刻有行情很可能还会在低位继续震荡两三个星期。真正值得动手的是饱和度站上0.2之后不重新跌回0.2以下同时价格收盘价站上10日均线。这个组合意味着量能不再是“偶尔一放”而是开始有持续性。4.2 饱和线冲过0.8的有效启动信号饱和度从0.2到0.8这一段是量能积累的过程。最值得盯的是从0.4到0.8这一段的速度如果只花了5到8个交易日就快速穿过0.8同时价格同步站上20日均线我认为这是“量能充能完成”的启动信号出现这种情况时续涨的概率明显增加。反之如果饱和度用了二三十个交易日才从0.4磨到0.8说明多方力量不够集中这时候即便突破0.8也要多留个心眼结合K线看是不是在压力位附近放量滞涨。我给所有朋友的建议是把0.8突破当作一个“有条件信号”不能单独成立必须配合收盘价在均线上方、当天K线不是长上影线这两个条件同时满足才考虑操作。信号情景饱和度状态配合条件我的处理思路低量观察从0.2以下上穿0.2价格站稳10日均线进自选观察不急于交易启动确认快速冲过0.8收盘价在20日均线上方K线无长上影等待次日回踩不破再评估高位回落跌破0.8且黄线拐头价格同时跌破5日均线判断手中仓位是否需要减量这张表的逻辑本质是先给饱和度信号套上价格趋势的“过滤器”。我不认为量能饱和度信号可以脱离价格趋势单独使用这是我反复出货之后得到的最重要结论。4.3 高位量能背离价格新高而饱和度回落第三种情况最容易被忽视也最值得关注。当一只股票连续上涨价格K线不断创出阶段新高但你发现饱和度的高点一次比一次低比如第一波拉升时饱和度冲到0.95第二波拉升时只到0.85第三波甚至只有0.78这就形成了量能饱和度的顶背离。这种背离说明虽然价格还在创新高但推动价格上涨的成交量已经开始衰减已经没有前面那么“饱和”了。通俗点说参与行情的人还在但新加入的人变少了后续上涨的动能大概率会减弱。遇到这种情况我通常会降低仓位至少不再追加买入同时把止盈位收紧比如从原来的10日均线止盈改成5日均线止盈。5. 用了一个月后我发现的问题和补救方法5.1 一字板、停牌复牌对计算的干扰任何成交量指标都躲不开极端K线的影响。一字涨停板那天成交量往往极度萎缩甚至几乎无成交这个0量会被LLV(VOL,T)吸收导致区间最低值变成0复牌首日又可能放出历史级天量瞬间把区间最高值抬到天上饱和度被硬生生拉低到接近0。这种数据被“污染”的情况不是公式错了而是计算环境的天然缺陷。我的处理很简单看到一字板密集出现的股票先别急着用饱和度信号。等连续一字板打开、成交量恢复正常节奏之后再重新初始化观察窗口。如果你想要一个代码层面的补救可以用BARSCOUNT(CLOSE)T来判断上市时间不足配合DRAWNULL把无意义区间直接隐藏{过滤次新的修正版} M:5; T:34; VOLM:MA(VOL,M); HH:HHV(VOL,T); LL:LLV(VOL,T); RANGE:IF(HHLL,HH-LL,0.0001); RAW:(VOLM-LL)/RANGE; RAW:IF(RAW1,1,IF(RAW0,0,RAW)); SAT:EMA(RAW,3); 过滤:IF(BARSCOUNT(CLOSE)T,0,1); 饱和度:IF(过滤,SAT,DRAWNULL),COLORRED;5.2 低成交品种的毛刺问题小盘股、冷门股每天的成交量可能只有几千手这种极低的基数会导致HHV和LLV之间的差值很小RANGE接近于零RAW轻微变动就被放大成0到1之间的大起大落。饱和度线会变成一根疯狂抖动的锯齿根本没法看。针对这种情况我推荐在计算之前先给成交量加一个换手率门槛。通达信里CAPITAL代表流通股本换手率大约等于VOL/CAPITAL*100。当一只股票的5日平均换手率小于0.3%时说明它实在太太太清淡指标这时候输出的值谈不上参考意义。你可以把这个逻辑加进过滤里让低换手期间不画线换手:VOL/CAPITAL*100; 过滤:IF(换手0.3,1,0);这里的0.3是我个人的经验值不是永恒真理。对于不同市值的股票这个阈值可以适当调整。大金融股的低换手和题材小盘股的低换手不是一回事用的时候一定结合个股历史数据去看。5.3 除权除息后成交量也需要“复权思维”很多朋友知道价格要复权却忽略了除权那几天成交量的失真。高送转之后股票单价变低同等资金买到的股数变多成交量在数字上会自动放大。这时候如果直接用原始VOL数据算饱和度除权本身就会造成一次虚假的“量能猛增”。我的经验是研究长周期走势时把K线切换到前复权或者后复权模式再载入这个指标。通达信的复权功能会自动修正除权日的价格和成交量口径虽然不能百分之百还原真实情况但至少能让饱和度指标在除权日前后的曲线看起来连贯一些。要特别声明的是软件版本和复权方式会影响最终数值所以看指标时最好固定用一种复权设置不要今天前复权、明天后复权地换不然你积累的阈值经验会全部失真。6. 从副图到选股量能饱和度进阶改造6.1 一版可用的选股公式源码如果你不只是想在副图里看信号还想每天收盘后批量筛选出“量能饱和度从低往高突破”的股票可以把完整源码精简成选股公式{麟龙量能饱和度选股} M:5; T:34; VOLM:MA(VOL,M); HH:HHV(VOL,T); LL:LLV(VOL,T); RANGE:IF(HHLL,HH-LL,0.0001); RAW:(VOLM-LL)/RANGE; SAT:EMA(IF(RAW1,1,IF(RAW0,0,RAW)),3); CROSS(SAT,0.8) AND CLOSEMA(CLOSE,20) AND MA(CLOSE,20)REF(MA(CLOSE,20),1);选股公式的逻辑很直白饱和度上穿0.8同时收盘价在20日均线上方并且20日均线方向向上。使用的时候打开通达信的“功能—选股器—条件选股”把这段复制到新建条件公式里然后选择需要扫描的板块执行选股即可。6.2 构建自己的“量能饱和趋势”组合如果你坚持看到这里会发现我的整套思路越来越像“用饱和度做量能确认用均线做趋势过滤”。其实你也可以换成别的过滤器比如MACD水下金叉、突破60日均线压力位都可以和饱和度信号交叉验证。我个人的进阶组合是这样的先用选股公式跑出“饱和度上穿0.8且站上20日线”的股票再人工打开K线图排除掉三种情况——一是距离前高压力位太近、上方明显有套牢盘二是连续涨停后第一次开板出现的假突破三是市值过小、日均换手率长期不足0.2%的极度冷门股。这个流程看起来不复杂但能过滤掉至少一半的杂波信号。还有一个扩展思路把这个指标改成主图叠加版本把饱和度:SAT显示在K线图下方会挤占空间所以我一般只在主图保留DRAWICON提示。代码如下{主图提示版} T:34; VOLM:MA(VOL,5); HH:HHV(VOL,T); LL:LLV(VOL,T); RANGE:IF(HHLL,HH-LL,0.0001); RAW:(VOLM-LL)/RANGE; SAT:EMA(IF(RAW1,1,IF(RAW0,0,RAW)),3); DRAWICON(CROSS(SAT,0.8),L*0.98,1);6.3 我的使用习惯和风险提示最后聊一聊心态层面的东西。量能饱和度指标本质上是把成交量历史区间换算成位置它不会预测未来只是把已经发生的量能状态摆得更清楚。数据窗口、平滑周期、阈值大小每一个改动都会直接影响信号数量。参数越小信号越频繁假信号也越多参数越大信号越稀会错过一些早段行情。不要指望用一个固定参数通吃所有周期所有股票这是不现实的。我目前看盘时会同时打开三个副图第一个是麟龙量能饱和度第二个是MACD第三个是KDJ。饱和度负责告诉我“量能处于什么位置”MACD负责告诉我“趋势动能是否完整”KDJ负责提供短期的超买超卖参考。三者信号共振的时候才是我认为最稳妥的观察时点。说到底任何指标都只是工具真正起作用的是你对工具背后逻辑的理解。量能饱和度把“放量缩量”变成“0到1的位置”让我在看盘时少了很多模棱两可但交易决策还是要落在价格、风控和仓位上。我的体会是用指标先问它“想说什么”再问它“在哪种行情下会失灵”这样它才能真正成为你体系里可靠的一环。