简介这份通达信副图指标源码文档面向股票技术分析爱好者与公式编写初学者围绕“跟庄擒牛”思路整合均线差、强弱与波动等多类信号帮助使用者在通达信软件中自行导入、观察主力与散户情绪变化并据此辅助判断买卖时机。压缩包仅含 1 个 doc 文件整体约 179KB内容以指标公式源码为主可直接查阅、复制到公式管理器中进行调试与二次改写。文件涵盖 DIFF 与 DEA 带状趋势、RSI1 相对强弱、AR 波动幅度以及卖点雷达、买点雷达、主力控盘、小股民、BT1/BT2/BT 等组件并对顶底提示、天知底、天知升等信号做了图形化标记。目前已有 974 人学习下载适合希望从源码层面理解副图指标结构、学习条件选股与信号组合逻辑的读者参考。1. 副图里那条曲线才是主力留下的指纹很多人把通达信副图当装饰主图看形态副图随手挂个 MACD 就算完事。真做起短线来会发现K 线能骗人成交量也能骗人但资金在盘口留下的痕迹很难同时抹干净。跟庄擒牛副图指标源码要处理的就是把「主力在不在、是在吸筹还是已经拉升、量能放到什么程度算饱和」这三件事压缩成一条可读的曲线加一个信号标记挂到副图里去。它适合有一定看盘经验、愿意自己动手改公式参数的人不做全自动交易只做主图信号的二次确认。通达信公式语言的门槛并不高SUM、EMA、CROSS这些函数翻来覆去就那几个真正决定这套指标能不能用的是判定条件的组合方式和参数取值而不是那几十行代码本身。所以下面不打算只贴一段源码了事而是从副图该显示什么、主力资金怎么用价量近似、信号阈值怎么定一路写到装进公式管理器之后怎么验证和排错。2. 跟庄擒牛副图指标盯的是资金、量能与筹码三个维度2.1 副图指标与主图指标的分工边界主图负责价格结构均线、形态、缺口、平台这些东西都在主图上它是「结果」。副图负责成因量能、资金、动量这些都在副图它是「过程」。把资金线画到主图上会出现一个很实际的问题资金净流入的数值动辄是几万到几十万和股价 8.5 元、12.3 元完全不在一个量级叠在一张图里要么股价被压成一条直线要么资金线被压成一条平线。所以跟庄擒牛这一类指标天然属于副图。常见做法是让副图同时承载三样东西一条主力资金线判断方向、一个量能饱和度数值判断力度、一个信号点判断时机。三者量纲不同但可以共享同一套逻辑判断只是绘制时把量能饱和度藏进条件里不直接画出来。提示如果一定要把量能饱和度画成曲线先用VOLSAT/100归一化否则它会把你副图里其他线全部压扁。2.2 用典型价和量能估算主力净流入通达信普通行情里拿不到真正的逐笔资金流只有 Level-2 才有主力大单数据。所以绝大多数「主力追踪」类副图指标源码走的都是价量近似路线用典型价代表当日成交重心用收盘价相对前一日的变化代表方向用成交量代表力度三者相乘得到单日资金流的近似值。{单日资金净流入近似值} TP:(HIGHLOWCLOSE)/3; {典型价当日成交重心的近似} DIR:IF(CLOSEREF(CLOSE,1),1, IF(CLOSEREF(CLOSE,1),-1,0)); {方向涨记正、跌记负、平记零} FLOW:TP*VOL*DIR/10000; {除以10000把单位压到万元级}TP用最高、最低、收盘三个价格的算术平均比直接用收盘价更贴近当日真实成交成本DIR是一个三值开关平盘日直接归零避免把横盘误判成资金流入FLOW末尾除以 10000 纯粹是为了让副图上的数值落在几十到几百这个可视区间不改也行只是数字会很长。这套近似的局限要提前说清楚它无法区分一笔成交是主动买入还是被动成交遇到尾盘拉抬、对倒放量这类手法会产生误判。所以它只能做趋势性参考不能当成精确的资金数据用。2.3 量能饱和度把「放量」变成可比较的数字大盘股放 2 个亿和小盘股放 2 个亿意义完全不同绝对成交量没法横向比较。量能饱和度的思路是把当日成交量除以自身的中期均量得到一个百分比VOLMA:MA(VOL,M); {M日平均成交量} VOLSAT:VOL/VOLMA*100; {量能饱和度100表示与均量持平}当VOLSAT等于 100说明今天的量和过去 M 天的平均水平一致达到 150 就是放量五成飙到 300 以上通常是异动。把阈值设在 80 意味着「量能刚刚越过均量线」这类条件适合做信号的早期触发设在 120 以上则过滤得更狠信号会明显变少。市面上叫「量能饱和度圆圈」的同类公式本质都是这一步的变体只是把阈值做成了可调的圆圈标记。指标构成计算公式反映内容在副图中的角色主力资金线SUM(TP*VOL*DIR,N)后做EMA平滑资金进出方向与力度柱状主线量能饱和度VOL/MA(VOL,M)*100相对自身均量的放量倍数触发条件不绘制价格强度CLOSEMA(CLOSE,M)是否处在多头结构里过滤条件2.4 通达信公式语言里几个必须先搞懂的符号有两个符号必须分清:是赋值但不输出:是赋值并输出。写成A:CLOSEREF(CLOSE,1)时A 只是个中间变量副图上看不到它写成B:MA(CLOSE,5)时副图上会真的画出一条五日均线。很多从 .doc 文档里复制过来的源码跑不出效果第一步就该检查冒号。A:CLOSEREF(CLOSE,1); {中间变量不画线} B:MA(CLOSE,5); {输出变量会在副图画出五日线}其余常用的几个REF(X,N)取 N 周期前的值SUM(X,N)求 N 周期累加EMA(X,N)是加权平滑CROSS(A,B)判断 A 上穿 BHHV/LLV取区间最高最低。这六个函数足够支撑一版完整的跟庄擒牛副图。3. 从零写一版可编译的跟庄擒牛副图源码3.1 参数定义与中间变量命名参数不要写死在源码里。通达信公式管理器的参数页支持给每个变量设默认值、最小值和最大值写死之后每次改动都要进编辑器非常低效。下面这版源码假定已经在参数页填好三个参数N默认 10、M默认 30、TH默认 80。源码里直接引用变量名不再重复声明。变量命名建议带上含义ZLLINE比A1好读VOLSAT比B2好排查。通达信对变量名长度不敏感但对全角字符极其敏感后面会专门讲这个坑。3.2 吸筹段与拉升段的判定代码主力行为在副图上至少分两段看吸筹段量能温和、价格区间收敛拉升段价格站上中期均线、资金线持续走高。把这两段分开判断可以避免把震荡期的横盘误当成启动信号。{吸筹段价格区间收敛 量能温和放大 资金线抬高} RANGE:HHV(HIGH,N)-LLV(LOW,N); {N周期内的价格振幅} XICHOU:RANGE/LLV(LOW,N)0.10 {振幅小于10%横盘特征} AND VOLSATMA(VOLSAT,5) {饱和度高于自身5日均值} AND ZLLINEREF(ZLLINE,1); {资金线较前一日抬高} {拉升段价格站上中期均线 资金线为正} LASHENG:CLOSEMA(CLOSE,M) AND ZLLINE0;RANGE/LLV(LOW,N)0.10这个 0.10 是可以调的越小越严格越小也越容易漏掉那种缓慢抬升的窄幅爬坡形态。VOLSATMA(VOLSAT,5)是拿饱和度跟自己的短期均值比而不是跟绝对数值比这样在不同活跃度的股票上表现更一致。3.3 擒牛信号的触发条件与副图绘制信号不要只用一个条件。单靠量能触发横盘股天天给信号单靠资金线触发滞后太严重。两个一起用再叠一层价格结构过滤误报会明显下降。{擒牛信号量能上穿阈值 资金线为正 价格在中线之上} QN:CROSS(VOLSAT,TH) AND ZLLINE0 AND CLOSEMA(CLOSE,M); {副图绘制资金线画柱正红负绿} STICKLINE(ZLLINE0,0,ZLLINE,3,0),COLORRED; STICKLINE(ZLLINE0,0,ZLLINE,3,0),COLORGREEN; ZERO:0,COLORGRAY; {零轴参考线} DRAWICON(QN,ZLLINE,1); {信号点标箭头} DRAWTEXT(QN,ZLLINE*1.15,擒牛),COLORYELLOW; {文字标注}STICKLINE(COND,PRICE1,PRICE2,WIDTH,EMPTY)的五个参数分别是条件、起点、终点、柱宽和是否空心柱宽 3 属于中等偏细副图线多的时候不容易糊成一片。DRAWICON的第三个参数是图标编号1 通常是向上箭头不同版本通达信的编号略有差异可以换成 2、3 试。DRAWTEXT里ZLLINE*1.15是把文字抬高 15% 避免压住柱子因为信号触发时ZLLINE0已经保证不会出现负数坐标。3.4 从 .doc 复制源码到公式管理器的完整步骤以 .doc 格式流传的指标源码复制过程本身就是一个高频故障点。中文 Word 会自动把半角标点替换成全角:变成;变成通达信编译时直接报错。打开 .doc先全选复制到记事本Windows 记事本或 VS Code 都行不要直接粘进公式编辑器。在记事本里用查找替换把全角换成半角:全角换成半角;全角 换成半角。逗号尤其容易混全角逗号在函数参数里必挂。检查是否有 Word 自动换行留下的软回车这类换行粘进去会变成非法字符。打开通达信快捷键CtrlF调出公式管理器选择「技术指标公式」→「新建」。公式名称填跟庄擒牛填写中文描述画线方法选「副图」。切到参数页依次填入N、M、TH三个参数的默认值、最小值、最大值。切回公式编辑页粘贴处理过的源码点「测试公式」没有报错再点「确定」。回到任意个股 K 线图在副图区域右键选择跟庄擒牛观察信号是否符合预期。注意测试公式报「语法错误」但又看不出问题八成是某处藏了一个全角空格。全选后用记事本的「显示所有字符」或者 VS Code 的不可见字符渲染一眼就能找出来。4. 参数怎么调周期、阈值与量能饱和度的取值4.1 三个必调参数与默认值的来历N10是资金累计窗口取 10 是因为 A 股一周五个交易日两周正好 10 天能覆盖一个完整的短线小周期M30是中期均线周期一个月约 21 个交易日取 30 是留出缓冲避免月末月初的量能跳变影响判断TH80是量能饱和度的触发门槛低于 80 意味着当日成交还没到均量水平谈不上「放量」。参数默认值可调范围作用调大之后调小之后N105~20资金净流求和周期曲线更平滑信号滞后更灵敏噪声明显增加M3020~60均量/均线周期过滤短期波动偏向中长线捕捉短线容易假突破TH8050~150量能饱和度触发阈值信号少而精可能漏掉启动点信号多而杂需要人工二次筛调参不要三个一起动。正确顺序是先固定 M 和 TH只调 N 观察资金线的平滑程度资金线形状满意后再调 TH 控制信号密度最后调 M 去匹配你习惯的持仓周期。三个参数同时改出问题根本定位不到是哪个引起的。4.2 用条件选股和历史回放验证信号副图上肉眼看着挺准一选股就发现信号满天飞这是最常见的情况。把副图源码改造成选股公式用数据验证一下信号密度比盯图靠谱得多。{跟庄擒牛选股公式 - 与副图共用同一套判定} TP:(HIGHLOWCLOSE)/3; DIR:IF(CLOSEREF(CLOSE,1),1,IF(CLOSEREF(CLOSE,1),-1,0)); FLOW:TP*VOL*DIR/10000; ZLLINE:EMA(SUM(FLOW,10),5); VOLSAT:VOL/MA(VOL,30)*100; XG:CROSS(VOLSAT,80) AND ZLLINE0 AND CLOSEMA(CLOSE,30);注意副图源码里ZLLINE和VOLSAT用的是参数变量N、M、TH选股公式里必须写成具体数值因为选股公式的参数传递方式和副图不完全一样。两边数值保持一致验证结果才有意义。XG:这个冒号表示输出选股结果通达信会把它当布尔值处理。运行选股后看结果数量如果每天全市场选中超过一百只说明条件太松如果一周只有一两只说明太严。合理区间通常是每天十到三十只再叠一层人工筛选。4.3 信号钝化、假信号和参数过拟合的区分信号钝化指的是某一段时间信号完全不出通常发生在市场整体缩量的阶段VOLSAT始终在 60 上下晃永远碰不到 80。这时候不要急着把 TH 降到 60先确认大盘成交量是不是整体萎缩如果是那说明指标本身没错是市场环境不适合这个参数。假信号是信号出了但后续走势不配合典型表现是信号当天放量上攻第二天缩量回落。这类情况单看副图解决不了需要叠加一层价格结构过滤比如要求信号出现时CLOSEMA(CLOSE,M)且MA(CLOSE,M)本身是向上走的也就是均线多头排列。参数过拟合是最隐蔽的问题。用历史数据反复调参调到「看起来每个启动点都抓住了」往往意味着参数只对那段历史有效。判断方法很简单把参数拿到最近三个月完全没参与调参的行情里跑一遍胜率和信号密度如果掉了一大截那就是过拟合了。5. 进阶技巧避免未来函数与提高跟庄信号胜率5.1 未来函数的识别与无漂移替换跟庄擒牛副图里最容易混进来的未来函数是ZIG、PEAK、TROUGH、BACKSET、REFX这几个。它们的共同特征是引用了当前周期之后的数据回测时看着无比精准实盘用起来信号会漂移甚至消失。判断方法很粗暴把副图拖到最后一根 K 线记下信号位置然后刷新行情再回看如果信号挪位置了源码里就有未来函数。替换思路是把「事后找拐点」改成「事前定窗口」。ZIG找的是局部极值点但局部极值要在拐点确认之后才能知道用HHV(HIGH,N)和LLV(LOW,N)回看固定窗口虽然不会那么精准地标在最低点但至少不会漂。{有漂移风险事后才知道的极值} 高拐点:PEAK(1,10,1); {无漂移替换固定窗口回看信号不会变} 高拐点:HHV(HIGH,10);5.2 多周期共振与副图联动的写法单一周期的信号胜率有限可以用CALLSTOCK把周线数据引进来做共振。日线副图触发擒牛信号时顺带判断周线级别的资金线是否也为正两个周期同向的信号质量通常比单周期高一个档次。{引用周线收盘价与成交量} 周收:CALLSTOCK(,VTCLOSE,7,0); {7表示周线周期} 周量:CALLSTOCK(,VTVOL,7,0); 周均线:MA(周收,10); 共振:CLOSEMA(CLOSE,30) AND 周收周均线;CALLSTOCK的第三个参数是周期代码7 代表周线6 代表月线跨周期引用会明显拖慢公式计算速度副图上挂一两条就够了不要大面积用。共振这个条件叠加到QN后面信号数量会砍掉一半左右但留下来的信号明显更干净。5.3 源码版本管理与跨平台文本化很多人在公式管理器里改了几十版最后自己都记不清哪一版是能用的。养成一个习惯每次调参或改逻辑之前先在公式管理器里导出一次源码备份命名带上日期和参数比如跟庄擒牛_20240612_N10M30TH80。通达信支持把公式导出成文本文件这一步比截图管用得多。副图源码的跨版本兼容也要留意。老版本里能编译的DRAWICON参数编号换到新版本可能对应另一个图标STICKLINE的柱宽在不同分辨率下表现也不完全一致。如果发现换机器之后图形变了先检查公式管理器版本再对照源码逐行核对函数参数别急着怀疑逻辑写错了。本文还有配套的精品资源点击获取