资讯动态

通达信主力建仓指标源码解析与实战优化

发布时间:2026/9/17 14:52:32 来源:尧图企业网站定制
通达信源码这事儿我接触了快十年从最早在论坛爬帖子、挨个复制公式、天天盯着副图等信号到现在自己动手写主力建仓类指标中间踩过的坑确实不少。市面上的“主力建仓”源码版本很多但大多是把几个常见函数拼在一起真正能把逻辑讲清楚、能拿历史行情复盘验证的其实不多。这篇就把我常用的主力建仓指标完整源码、编写思路、安装步骤和优化方法一次说透适合刚入门想看明白公式在算什么的朋友也适合有一定基础、想改出自己的版本的人。先说清楚这个指标不是“点金术”它解决的核心问题是把主力资金在低位吸筹时留下的量、价、筹码痕迹用通达信公式语言翻译成肉眼可读的图形信号让你不用每天对着几百只股票翻来翻去。1. 主力建仓指标的底层逻辑为什么“建仓”能写成代码1.1 主力建仓在盘面上留下的四类痕迹“主力建仓”这个词听起来很玄但实际上它不是一个不可名状的抽象概念而是一系列可观察、可量化的市场行为。说得直白一点大资金想要建仓就不可能悄无声息地把几千万、几个亿的筹码买完。它只要真金白银进场盘面上一定会留下痕迹。第一类痕迹是股价位置。主力建仓通常发生在相对低位因为只有在低位才有足够便宜的筹码也才能在后续拉升中拉开利润空间。很少见到主力量在历史最高位附近大举吸筹那种位置更多是出货区。所以建仓类指标的第一个前置条件就是“股价处于过去一段时间比如250个交易日的相对低位区间”。第二类痕迹是量能特征。建仓阶段主力会在某个区域分批买入表现出来往往是间歇性的温和放量而不是持续的天量。你看一只长期缩量的票某几天突然成交量明显放大但股价没怎么大涨这种“量升价平”的现象往往是资金进场的信号。这就是为什么指标里通常会对比当前成交量和过去5日、10日、20日的均量。第三类痕迹是均线状态。主力建仓的时间周期通常不短少则一两周多则数月。在这个过程中股价围绕某个区间反复震荡5日、10日、20日均线会自然靠拢、粘合。均线粘合代表多空力量暂时均衡也代表持仓成本趋同这种“橡皮筋”状态越紧后面变盘的能量越大。所以指标里判断“横盘蓄势”的一个高效方法就是计算5日均线与20日均线之间的距离。第四类痕迹是筹码结构。同样一只股票如果上方全是套牢盘主力拉起来就会很费劲如果获利盘比例适中、筹码高度集中在当前价位附近说明洗盘比较充分、浮筹少后续拉升阻力小。通达信里有两个现成的函数可以量化这个信息——WINNER和COST一个看获利盘比例一个看成本分布组合起来就能评估筹码集中度。1.2 把盘面痕迹翻译成指标语言的思路既然知道主力建仓会留下以上四类痕迹那么指标编写思路就很简单了把每一类痕迹变成一个可计算的条件再让这些条件同时满足时给出信号。这就像做菜主料是价格和成交量筹码是调味品条件共振是最后的收汁步骤。但这里有一个免责声明必须先讲明白任何技术指标都是间接观察工具不可能100%确认某只股票里一定有主力在吸筹。我们能做的是从量价和筹码的统计学规律里找出“像极了主力建仓”的形态再通过仓位管理和严格止损去应对不确定性。指标提供的是观察框架不是确定性结论。我在设计这个“主力建仓”指标时特意没有把条件写得过于苛刻因为条件越多历史回测里的信号就越少使用价值反而下降。四个维度都允许一部分模糊空间比如“相对低位”不是非要精准到最低点“温和放量”也不是精确到1.5倍还是2倍最后通过参数可调的方式让使用者在不同周期、不同品种上微调。2. 源码全解析主力建仓副图指标V1.02.1 完整源码与参数说明先直接上代码这是我目前固定用的版本在通达信日线周期下编译没有问题。新建一个技术指标公式选择副图把下面内容完整粘贴进去测试通过后保存即可。{主力建仓指标-AI投研图灵室} {使用方法日线周期副图建议配合主图均线使用} N:60; M:250; HD:HHV(HIGH,M); LD:LLV(LOW,M); POS:(CLOSE-LD)/(HD-LD0.0001)*100; MAV5:MA(VOL,5); VOLR:VOL/MAV5*100; 量能启动:VOLR150 AND VOLREF(HHV(VOL,20),1); MA1:MA(CLOSE,5); MA3:MA(CLOSE,20); 粘合度:ABS(MA1/MA3-1)*100; 价格稳定:粘合度5; 赢利盘:WINNER(CLOSE)*100; COST85:COST(85); COST15:COST(15); 集中度:(COST85-COST15)/(COST85COST150.0001)*100; 筹码达标:赢利盘25 AND 赢利盘85 AND 集中度30; 资金均额:AMOUNT/VOL/100; 资金趋势:EMA(资金均额,5)REF(EMA(资金均额,5),1); 建仓条件:量能启动 AND 价格稳定 AND 筹码达标 AND 资金趋势 AND POSV1; 主力线:EMA((CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N)0.0001)*100,3),COLORWHITE,LINETHICK2; 吸筹强度:IF(建仓条件,POS,0),STICK,COLORRED; STICKLINE(建仓条件,0,100,2,0),COLORYELLOW; DRAWICON(建仓条件 AND COUNT(建仓条件,10)1,90,1);这里涉及两个参数N和M分别控制短期位置窗口和长期位置窗口。V1默认值我一般设为35意思是股价在过去250个交易日区间里处于从低点往上35%以下的区域才认为“够低”。如果你观察的个股波动较大可以把V1调到45如果是银行、电力这类低波动品种V1设为25到30可能更合适。参数设置没有绝对正确答案需要结合品种历史波动来调。2.2 逐段拆解位置、量能、筹码、资金四套逻辑第一段是价格位置判断。POS:(CLOSE-LD)/(HD-LD0.0001)*100意思是用当前收盘价减去M周期内的最低价再除以M周期最高价与最低价之差最后乘以100。这样算出来的POS范围在0到100之间可以直观理解为“当前股价站在过去250天区间的百分之多少的位置”。比如POS等于20说明股价处于250日区间的20%分位相对较低POS等于85说明股价接近区间上沿。分母加0.0001是为了防止股价全天一字板、高低点完全相同导致除数为0的情况。第二段是量能异动识别。VOLR:VOL/MAV5*100这是算当日成交量是5日均量的百分比。VOLR150意味着当日成交量放大到5日均量的1.5倍以上VOLREF(HHV(VOL,20),1)则要求今天的量大于前20天里的最大量。两个条件叠加才能保证是“当天的量能显著突破前期平台”而不是普通放量小阳线。单看量比也容易误判比如一只股票长期阴跌稍微有一点资金进场量比就会虚高所以要求突破20日内最大量可以有效过滤掉小打小闹。第三段是均线粘合判断。粘合度:ABS(MA1/MA3-1)*100计算5日均线与20日均线的偏离百分比数值越小说明短期和中期成本越接近。价格稳定:粘合度5我设的阈值是5%这是经过多次对比后的经验值太严了比如2%以内会导致信号极少太松了比如10%又失去了横盘蓄势的意义。10%以内的粘合只能说是轻微回踩5%以内才算真正进入“掐紧橡皮筋”的状态。第四段是筹码结构判断。WINNER(CLOSE)*100返回当前收盘价下的获利盘比例比如30就表示有30%的持仓者处于盈利状态。COST(85)和COST(15)分别表示85%和15%的筹码成本线所在价位集中度公式用的是这两条成本线的相对距离。我对筹码达标的要求有三条获利盘大于25%、小于85%、集中度小于30。第一条保证不是全部筹码都深套如果获利盘太低抛压会极大第二条保证不是已经涨了很高才进场如果85%的人都赚钱了说明主力很可能已经拉升过此时再谈建仓就滞后了第三条集中度小于30意味着大部分筹码都集中在相对小的价格区间内套牢盘少浮筹洗干净了。第五段是资金趋势判断。AMOUNT/VOL/100算的是平均每手成交金额。这个指标很微妙如果一只股票主要由散户在交易每手成交金额通常比较分散如果大资金在买入单笔成交金额显著偏高均线上升就说明资金参与的“强度”在变大。EMA(资金均额,5)REF(EMA(资金均额,5),1)只是看5日平滑后的资金均额是否在提升属于趋势过滤不要求当天资金均额暴涨这样可以抓住趋势性的吸筹过程而不是单日脉冲。2.3 信号与画线输出怎么读整个指标在副图上有三部分内容。白色主力线是一条被平滑过的短期位置线可以把它理解为“短期能量温度计”数值落在0到100之间数值低说明短期处于低位数值高说明短期冲高。红色吸筹强度柱表示建仓条件成立时的强度柱体越长说明触发建仓条件时价格在M周期内的相对位置越高当然一般情况下触发条件时POS都不会太高所以红色柱通常出现在副图下半部分。黄色柱是条件成立时的背景标记从0画到100一眼就能看出来。DRAWICON(建仓条件 AND COUNT(建仓条件,10)1,90,1)的意思是当建仓条件成立且最近10根K线内这是第一次成立时在副图90的位置画一个图标用于区分“初次信号”和“持续信号”。一个初次信号出现后如果后续几根K线仍然满足条件黄色柱和红色柱会连续出现但图标只画一次。这样做的考量是主力建仓是一个过程不是一天就完成的连续提示会干扰判断而“首个信号”通常在趋势启动前更值得重视。不过要留意如果条件连续满足10根K线以上前面画的图标早就被后面的K线覆盖到屏幕左边了所以在视觉上你看到的是一个新信号实际上它可能已经在清单里出现很久了。3. 通达信指标安装与使用从复制到跑通3.1 公式管理器创建副图公式的完整路径很多刚接触通达信的朋友在第一步就卡住了因为不同版本的通达信安装界面略有差异但核心路径基本一致。电脑端打开通达信软件在键盘上按CtrlF会弹出公式管理器窗口。公式管理器左侧是分类树需要把指标放在“技术指标公式”一类下建议自己新建一个分组比如右键点击“技术指标公式”选择“新建组”命名为“自用指标”避免把自己的公式和别人分享的混在一起。在新建组下点击“新建”按钮会进入公式编辑器。这里有四个要点需要注意。第一公式名称只能输入英文或字母数字组合比如“MainBuild”或“ZLCJ”不要用中文名虽然某些版本允许中文公式名但导出和同步到手机端时很容易出问题。第二在“画线方法”一栏里选择“副图”因为这是个副图指标。如果你画线方法选成“主图叠加”那整个指标就会叠在K线图上位置判断和信号柱会把K线盖住一部分看起来非常乱。第三把“参数”区里面的N、M、V1分别设置为60、250、35类型都选“数值型”。第四把源码粘贴到编辑区先点击“测试公式”。如果没有报错再点击“确定”保存。如果有报错系统会提示错误所在行号通常是中文字符或者缺分号的问题稍后我会在常见问题里详细讲。3.2 副图怎么看、怎么配合主图使用保存成功后打开任意一只股票的日线图在副图区域的空白位置直接输入刚才的公式名称比如输入“MAINBUILD”弹出的下拉列表中选中它回车副图就会加载。如果你想要快速检查这个信号在历史上出现过几次可以左右拖动K线图或者输入一段日期区间用目测的方式复盘。这个指标在日线上最稳因为WINNER和COST函数在分钟周期上计算出的筹码分布非常不稳定盘中实时变化太大。日线周期下筹码分布比较均衡信号可靠性更高。使用时建议配合主图的均线系统进行初步筛选主图均线呈空头排列的个股可以忽略等MA5和MA20走平后出现信号再关注主图均线已经粘合到一块、即将发散时出现信号效果最好。副图上如果只是黄色柱体闪现一下又消失千万不要急着认定为建仓。配合主力线一起看如果主力线从低位缓慢向上、稳稳站上50同时黄色柱反复出现说明资金吸筹节奏在延续。如果主力线一直在20以下震荡黄色柱偶尔冒一下又缩回去说明只是底部反复磨底真正的主升段还要再等。实战中我会用这个副图搭配个股的基本面强弱的初判比如优先选择市值在50亿到500亿之间的品种因为市值过小的票容易被少量资金扰动指标信号噪音较大市值过大的票建仓周期极长信号看起来会很钝。3.3 指标导出与多台设备同步安装好之后一定要做一件事把公式导出备份。在公式管理器左侧找到你刚建的公式选中它点击“导出”按钮系统会生成一个.tni格式的文件。这个文件可以保存到U盘、网盘或者发到手机上。通达信手机版同样可以添加自定义指标步骤是进入K线图之后点击右上角的“指标”或“公式”在“我的”或“自定义”分类下选择“新建/导入”。手机版界面不同版本差异很大但大多数支持直接从.tni文件导入。如果你在电脑上调试得好好的手机上却看不到信号通常是因为手机端权限设置或参数没同步把公式文件发到微信然后用手机打开选择“用通达信打开”一般能解决。4. 信号不灵怎么办参数优化与二次过滤4.1 三个最容易踩的雷指标不是装上就能一劳永逸我自己刚开始用的时候就踩过结论性的大坑这里必须给后来者提个醒。第一个雷是看到信号就重仓。指标信号的本质是“条件共振”不等于下一秒就会拉升。主力建仓之后可能还会震仓、洗盘甚至因为大盘环境恶化而被迫再次下探。信号只是雷达扫描到“疑似目标”不能替代资金管理和止损规则。我见过很多人拿着一个信号满仓进去结果被套两个月最后割在地板上。第二个雷是忽略大盘和板块环境。再好的建仓形态如果大盘整体走弱、板块轮动加快个股也很难独善其身。用指标选出的标的至少要看看它所属板块是不是近期有资金关注的方向。第三个雷是过度优化参数。有些朋友看到历史回测中某个参数组合特别犀利就固定用那组参数结果一到实盘就失灵。通达信公式参数优化功能允许你自动扫描参数区间但往往会把最优参数适配到历史噪声上也就是“过拟合”。合理的做法是选一组中庸参数在各种行情里都不至于太差而不是追求历史胜率最高。4.2 用MA/MACD等条件过滤假信号为了避免假信号我通常会在原指标基础上增加一道过滤网最常用的是波段趋势确认。简单做法是在源码最后加一个变量比如趋势过滤:CLOSEMA(CLOSE,20); 信号:建仓条件 AND 趋势过滤;这样就能要求收盘价站上20日均线确认短期趋势没有继续恶化。还有一种办法是用MACD的日线状态过滤要求MACD.DIFDEA通达信里可以用MACD指标的DIF线和DEA线来判断可以把鱼龙混杂的假信号过滤掉一部分。市面还有很多增强版写法会在建仓条件的基础上叠加“主力线金叉”或“筹码单峰”等条件。我自己的建议是不要一次性加太多条件。每多一个条件信号数量就少一截复盘时可参考的样本就变少反而无法判断条件组合到底靠不靠谱。先跑基础版本慢慢加过滤器每次只动一个条件记录下加完之后信号数量和后续表现的变化这才有积累。4.3 改成选股公式一键筛选这个指标的一大用途是当选股器用。把公式从“副图指标”改成“选股公式”只需要两步。先在公式管理器新建一个选股公式在“选股公式”分类下新建把逻辑部分复制进去注意选股公式只能有一个输出条件所以要把所有中间变量保留最后一行加上主力建仓选股:建仓条件 AND POS35;保存后打开通达信的“选股器”功能快捷键CtrlT或菜单栏“功能”里的“选股器”选择刚建的选股公式设置好选股范围和时间周期点击“执行选股”。选出来的股票列表再叠加当天涨幅、流通市值等排序条件就能快速得到一个候选池。注意选定周期时最好用日线并且“前复权”数据否则由于除权导致的价格跳变会直接影响POS和筹码函数的结果。5. 用AI辅助写通达信指标我现在的工程化做法5.1 大模型能帮到什么程度标题里带着“AI投研图灵室”很多朋友会问到底AI能不能写通达信源码。我的直接回答是AI能帮你完成70%的翻译工作但最后30%的校验和实盘逻辑把关必须自己做。现在的通用大模型对通达信公式语法是有一定理解的能识别常见的函数、参数、绘图指令。你给它一个中文描述它确实能输出一段看起来有模有样的指标公式而且很多时候一次就能通过编译。但这里有两个隐藏的坑。第一是“幻觉函数”。通达信这几年更新了不少函数但大模型的训练数据里可能会混入其他编程语言的函数或者干脆编造一个并不存在的指标函数比如把Python里rolling()的思路写成ROLL(CLOSE,5)这种代码粘贴到通达信里必然编译失败。第二是“逻辑黑箱”。AI可以写得出来但它不一定理解这段逻辑内在的假设。比如让AI写一个“底部放量”的指标它可能只是简单地把成交量放大和股价低位拼在一起却没有考虑到底部是否必须经过筹码集中度的确认。AI生成代码的速度快但代码背后的逻辑解释能力反而不如人类自己手动排查来得可靠。5.2 提示词写法和调试流程如果你想用大模型辅助写通达信指标我建议按这个提示词结构去问先说明“我是通达信用户需要编写一个技术指标公式”再描述需求要求“使用通达信标准函数不要使用未来函数不要使用未经确认的扩展函数输出格式为可以直接粘贴到公式编辑器的源码”。举个例子我会这样写提示词“我要写一个副图指标条件如下股价处于过去250日低位区间收盘价高于20日均线当日成交量为5日均量的1.5倍以上5日均线和20日均线距离小于5%获利盘比例大于20%小于80%。输出通达信公式源码。”这样的大模型输出通常已经可以用了。拿到AI生成的源码后我的标准流程是第一步检查函数清单凡是看到ZIG、PEAK、TROUGH、BACKSET这类未来函数直接删掉因为它们在信号确认时会用到未来行情你看盘时永远不可能实时确认第二步粘贴到通达信公式管理器里测试编译报错就把报错信息完整复制给AI让它修正第三步在5只以上不同形态的股票里回看信号是否合理比如拿一只长期下跌白马、一只横盘震荡的次新、一只刚涨停的题材股分别验证再决定是否采用。AI作为初稿工具效率极高但校验环节不能省。5.3 校验与限制别让AI替你拍板更值得警惕的是现在有些AI工具可以生成完整的策略代码甚至包含买卖点输出。这类代码从技术上讲可能很漂亮但实盘里的关键问题——仓位管理、止损条件、资金曲线回撤控制——很难靠几句话表达清楚。AI更擅长的是“规则翻译”而不是“交易决策”。所以我自己的原则是AI用来写工具不用AI来下结论。如果一个指标代码让你觉得晦涩难懂、无法解释清楚每一个条件和阈值为什么存在那就不要用它实盘。通达信指标的价值在于你把市场行为翻译成规则而规则要被自己的交易系统吸收而不是变成一个“黑箱信号机”。6. 常见问题与排查速查表6.1 编译报错排查我习惯把编译报错分为三类。第一类是符号问题比如中文括号和英文括号混用、变量名后面丢了分号、赋值的时候把:写成。通达信公式对符号要求很严格中文全角符号会导致编译失败。第二类是函数名拼写错误尤其注意WINNER不是WINNERSCOST不是COSTSSTICKLINE不是STICK。第三类是逻辑错误报错不会提示但运行结果不符合预期比如变量被重复定义、REF函数的第二个参数写负数等。如果你在复制我的源码时遇到编译失败优先检查你是不是把中文注释里面的引号也一起复制进去了。通达信支持{}注释注释里的中文不会报错但里边的英文引号或括号如果被中文输入法替换就会出问题。最简单的方法是把源码里的英文引号全部替换成英文状态再粘贴。6.2 信号乱跳、滞后等疑难杂症一个高频疑问是为什么副图上有信号但出信号之后股价根本没涨甚至继续下跌这需要分清“信号有效”和“信号即买点”的区别。因为这个指标判断的是建仓痕迹而建仓完成之后主力依然可能再挖一个坑洗盘。所以信号出现之后的走势不确定性仍然很高这时候止损位就非常重要。另一个高频问题是为什么同一只股票昨天有信号今天没信号了这通常是价格和均线距离变化导致的条件边界波动比如昨天粘合度4.9%满足条件今天变成5.1%就退出了参数阈值附近抖动属于正常现象。关于指标“滞后”的问题我的看法是任何建立在收盘价基础上的指标都有滞后性因为它用的信号源就是收盘数据。如果你受不了滞后可以采用更高周期或者盘中实时信号但盘中信号的筹码函数和均线粘合度会频繁抖动毛刺非常多反而更难应对。除非你有成熟的分时交易系统否则我建议只参考日线收盘后的信号。6.3 新手高频疑问和我的习惯性操作问得最多的还有几个操作层面的问题。WINNER和COST函数在通达信里是否属于未来函数严格来说它们属于“基于当前流通盘和筹码分布模型的统计函数”不会根据未来行情变化但在盘中会随着价格实时变化收盘后才会稳定下来所以盘中看信号和收盘看信号可能不一致。我的习惯是盘中只观察、不做决策尾盘看信号是否持续再分析。另外一个常见疑问是大盘环境不好时指标还能不能用。我自己的做法是不用。当大盘指数在20日均线下方运行时我把选股器直接执行结果放一边最多观察信号是否大面积出现如果大面积出现说明市场恐慌情绪到了极端也可能会迎来反转。指数走弱时任何低吸信号的可靠性都会下降做好仓控才是第一优先级。最后说一下版本兼容。通达信有券商定制版、官方版、手机版不同版本对公式函数的支持有小差异比如手机版对DRAWICON图标的支持不如电脑版稳定。如果你在电脑上看到图标手机上却不显示不要慌只要代表建仓条件的柱线正常出现图标有没有都不影响使用。我通常会把输出的图标代码单独注释掉保持通用性。整个指标从设计到落地本质上是在回答一个问题怎么用规则化的语言描述“主力资金低位吸筹”这个模糊概念。我的答案是把价格位置、量能变化、均线状态、筹码结构和资金趋势这五个维度拧成一股绳任何一个维度单独看都不足以得出结论但条件共振时至少说明当前行情具备主力抢筹建仓的统计学特征。你可以直接拿去用也可以改参数、加过滤、改造成选股公式。我个人在实际操作中的体会是先拿最近一年的历史行情复盘一遍熟悉它在不同走势下的信号分布再决定要不要用它来辅助交易比上来就满仓验证要可靠得多。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价