简介这份文档是一份可直接复制的通达信指标公式源码定位为缠论中枢主图指标面向使用通达信进行股票技术分析的投资者尤其是对缠论走势结构感兴趣的用户。指标通过均线、高低点确认以及延迟判断等多重逻辑对行情进行条件筛选在K线主图上自动标记中枢高低点并连线辅助识别走势中枢与买卖区间减少人工画线的主观误差。文档通过变量逐步构建了从基础均线到中枢区间、高低点确认、延迟价格等一系列计算环节读者可循着公式层级理解每一步判定规则。资源包中仅包含1个doc文档压缩包大小为237KB内容包含完整公式源码与变量定义层级适合导入通达信公式管理器使用也便于学习缠论量化表达的编写思路。目前已有674人学习下载对于一份轻量级技术指标资料而言具备较高参考价值可作为自学者编写和调试指标公式的对照样本。1. 缠论中枢主图指标是什么通达信公式从文字到图形给K线图手动画缠论中枢最花时间的不是找中枢而是找笔。顶分型、底分型连着画稍不注意就把一笔数成两笔中枢区间跟着错位。这个标题里的主图指标解决的就是这件事把缠论中枢的识别规则写进通达信指标公式打开主图就能看到分型标记、笔连线、中枢矩形框源码直接进通达信公式管理器选“主图叠加”即可运行。适合两类人一类是依赖缠论做结构判断、不想在画线上花时间的交易者另一类是刚接触通达信公式语言、想拿分型、笔、中枢当练手项目的开发向用户。下面按“算法拆解 → 完整源码 → 参数调优 → 排错验证”的顺序把这套指标讲清楚。2. 缠论中枢的算法拆解用通达信变量表达顶底分型与中枢区间2.1 为什么先说“笔”而不是直接画中枢缠论原文里的中枢定义是“至少三个连续次级别走势类型重叠的部分”这句话在通达信里没法直接翻译。通达信公式是逐K线扫描的标量语言没有递归建树能力所以常见做法是用固定周期近似次级别先把顶分型和底分型识别出来再由交替出现的分型连成笔最后用连续三笔的重叠区间近似中枢。直接拿HHV(HIGH, N)和LLV(LOW, N)圈区间是不行的那会把单边上涨中的回调也画成中枢信号会多到没法看。我一般会先把“分型”这一层做扎实。分型是缠论里最基础、也最适合公式化的结构某根K线的最高价比左右两根都高同时最低价也比左右两根高就是顶分型反过来就是底分型。把这一步的窗口写对笔和中枢才有意义。2.2 用通达信函数表达顶底分型与笔先看分型识别的核心表达式顶分:HREF(H,1) AND HREF(H,2) AND REF(H,1)REF(H,3); 底分:LREF(L,1) AND LREF(L,2) AND REF(L,1)REF(L,3);这段公式的含义是当前K线的最高价H大于前一根REF(H,1)和前两根REF(H,2)同时前一根最高价不低于前三根REF(H,3)才标记为顶分型。注意最后那个条件它把连续两三根高点相同的情况并到了更早的一根上避免同一个顶部连续出两个分型信号。分型信号出来后还要过滤。因为一根大阳线后面跟着小回调再创新高会连续出现多个顶分型直接把第一个顶当笔端点会画出一堆锯齿。此时用FILTER做窗口过滤N:4; 顶信号:FILTER(顶分,N); 底信号:FILTER(底分,N);FILTER(条件,N)表示条件成立后往后 N 个周期内不再输出同类信号。N默认取 4意思是顶分型出现后至少等 4 根K线才能出现下一个顶分型。N越小笔越灵敏N越大笔越粗中枢数量越少。2.2.1 分型公式的三种变形严格版当前K线必须最高HREF(H,1) AND HREF(H,2)不处理连续极值适合做历史回测但实时行情下最后一根K线容易被替换。容错版加REF(H,1)REF(H,3)或REF(L,1)REF(L,3)把平顶平底合并适合画图展示。含包含关系版先把存在包含关系的K线合并成一根再找分型。通达信里可以用IF(条件, 合并价, 原价)递归处理但公式会非常长。主图指标里如果不想牺牲性能容错版已经够用。2.3 中枢区间 ZG/ZD 的计算逻辑与选型边界笔连起来之后中枢就是连续三笔的重合部分。在通达信里用VALUEWHEN取最近一次顶分型、底分型的位置用BARSLAST回溯距离然后用MAX和MIN求重叠区间前顶价:VALUEWHEN(顶信号,H); 前底价:VALUEWHEN(底信号,L); 顶距:BARSLAST(顶信号); 底距:BARSLAST(底信号); ZG:MAX(前底价,REF(前顶价,底距)); ZD:MIN(前顶价,REF(前底价,顶距)); 中枢成立:ZGZD AND 顶距M AND 底距M;ZG是中枢上沿取两个顶价格里偏低的那一个ZD是中枢下沿取两个底价格里偏高的那一个。只有ZGZD说明确实存在重叠区加上顶距M AND 底距M控制分型间隔避免刚出现一个顶分型就立刻画中枢。下表是这套简化算法和缠论概念的映射缠论概念通达信公式表达作用顶分型HREF(H,1) AND HREF(H,2)标记潜在顶部底分型LREF(L,1) AND LREF(L,2)标记潜在底部笔FILTER(分型信号,N)过滤连续分型形成笔中枢区间ZG/ZD组合计算求三笔重叠区域背驰SUM(ABS(MACD),N)对比进入段与离开段力度这套算法不处理严格缠论里的“线段”递归也不处理跨周期级别。对主图指标而言固定周期近似已经能覆盖大多数日线、30分钟线场景。想要更精细可以在第5章通过调整参数和验证信号来补充。3. 缠论中枢主图指标源码从公式管理器到主图叠加的完整路径3.1 完整公式源码变量定义、信号输出、主图叠加一份走通下面是可以直接复制到通达信公式管理器的一段主图叠加源码。它包含分型识别、笔的过滤、中枢区间绘制三部分注释写在{}里不参与编译{缠论中枢主图指标} N:4; M:3; 顶分:HREF(H,1) AND HREF(H,2) AND REF(H,1)REF(H,3); 底分:LREF(L,1) AND LREF(L,2) AND REF(L,1)REF(L,3); 顶信号:FILTER(顶分,N); 底信号:FILTER(底分,N); DRAWICON(顶信号,H*1.005,1); DRAWICON(底信号,L*0.995,2); 前顶价:VALUEWHEN(顶信号,H); 前底价:VALUEWHEN(底信号,L); 顶距:BARSLAST(顶信号); 底距:BARSLAST(底信号); ZG:MAX(前底价,REF(前顶价,底距)); ZD:MIN(前顶价,REF(前底价,顶距)); 中枢成立:ZGZD AND 顶距M AND 底距M; STICKLINE(中枢成立,ZD,ZG,1.2,0),COLORBLUE;参数段的N:4控制分型过滤窗口M:3控制顶底分型的最小间隔。DRAWICON在顶部和底部画箭头类型1是向下箭头2是向上箭头价格乘1.005或0.995是为了让图标稍微离开K线实体避免遮挡。STICKLINE(条件, 下沿, 上沿, 宽度, 空心)是画矩形柱的核心函数这里宽度1.2是相对K线宽度的比例最后一个参数0表示实心柱颜色用COLORBLUE。这段代码的边界条件写得比较松ZGZD只要求前两笔重叠实际缠论要求至少三段走势重叠。原因是通达信公式里追踪三段以上的历史分型会让语句数量暴增对新手不友好。先跑通再看第4章怎么调显示、第5章怎么加验证。3.2 通达信公式管理器导入步骤新建、粘贴、检查、叠加按下面步骤把源码装进通达信先复制源码到 Windows 记事本另存为chan_zhongshu.txt。这是备份防止在公式管理器里改坏原指标。打开通达信客户端按快捷键CtrlF调出公式管理器。不同券商版本界面略有差异但“新建公式”入口都在功能列表顶部。点“新建”后公式名称填CZS或CZSZ字母、数字、下划线都可以不要带中文。画线方法选“主图叠加”。把源码粘贴进编辑区点“测试公式”。如果底部提示0错误直接点“确定”保存。回到K线图输入CZS回车主图上就会出现分型箭头和蓝色中枢柱。如果公式源码带.tn6后缀那是通达信的公式导入导出格式不是文本。想转成可编辑的.txt打开公式管理器找到目标公式点“导出”导出类型选择“文本文件”生成的就是源码文本。反过来在另一台电脑上用“导入”按钮选中.tn6或.txt都能装进去。3.3 公式测试的三种反馈编译错误、显示错位、未来函数把原件丢到公式管理器如果界面直接弹出“第 N 行缺少分号”九成是复制过程中标点变成了中文全角。通达信只认半角:、,、;全角字符会直接编译失败。显示错位则需要确认两点一是所有价格型画线函数都要在主图叠加模式下生效新建公式时选“副图”就会看到K线在一边、柱子在其他区间二是STICKLINE的宽度参数在0.5到2之间比较合理太宽会压住均线太窄则肉眼难分辨。未来函数则是主图指标最容易踩的坑。ZIG、PEAK、TROUGH这类函数会根据未来数据回改历史值公式管理器会提示“含有未来函数”。本文源代码里没有用它们VALUEWHEN、BARSLAST都只引用过去的数据所以历史信号不会随着最新一根K线变化。4. 中枢参数与画笔优化让主图显示贴近缠论原文4.1 三个必调参数分型窗口、分型间隔、柱子宽度用同一套源码去套所有行情会出问题股票日线波动大指数30分钟级别震荡多固定N4的笔过滤窗口在横盘区会频繁画错。实际使用时我一般先把参数面板里的N和M调成下面这个范围再结合个股历史走势判断参数默认值建议范围作用参数过小的表现参数过大的表现N42 至 6分型过滤窗口笔太碎箭头连续出现笔被拉直小顶底丢失M33 至 6顶底分型最小间隔顶底紧挨中枢区间过窄中枢迟迟不成立柱宽1.20.5 至 2中枢矩形宽度看不清矩形范围遮住均线和K线M是缠论里很关键的一个数。它代表顶分型出现后至少要隔几根K线才允许底分型成为笔的端点。M3比较中庸适合日线主图做30分钟级别时可以放宽到M5做周线级别时可以缩到M2。4.2 用 STICKLINE 和 DRAWLINE 调出“看得清”的矩形默认源码只用STICKLINE画中枢矩形不画笔视觉上会缺一条线。把下面这段加在源码末尾可以同时画顶底分型连线DRAWLINE(底信号,L,顶信号,H,0),COLORWHITE; DRAWLINE(顶信号,H,底信号,L,0),COLORWHITE;DRAWLINE的参数依次是“起点条件、起点价格、终点条件、终点价格、是否延长”。最后一个0表示画到终点就结束。第一句从前一个底分型连到后一个顶分型第二句反过来连。想要区分上升笔和下降笔可以把上升期颜色设为COLORRED下降期设为COLORGREEN但通达信同一公式里两条线都会执行颜色设置在后一句覆盖前一句不会出现分色折线。如果不希望中枢矩形太抢眼可以把柱宽从1.2降到0.6再用STICKLINE(中枢成立,ZD,ZG,0.6,1),COLORYELLOW;最后一个参数1表示空心柱和K线形成层次对比。4.3 未来函数导致的“中枢漂移”怎么排查主图指标最坑的地方是看起来中枢画对了实际上历史每一笔都跟着最新价格在漂。漂移的根源不是笔的算法而是未来函数。典型现象是昨天看K线图中枢区间在A点今天行情创新低昨天那个中枢却自动往下移了一个格子。排查方法很简单在公式管理器里点“测试公式”如果提示“该公式含有未来函数”就要把ZIG、PEAK、TROUGH这类函数逐行找出来替换掉。像PEAK(,N,)是取未来N周期能创新高的值当前K线无法知道这个结果。本文提供的主图源码不涉及这些函数历史画线不会因后续行情改写。5. 源码常见报错与实战调参从“牌不对”到“看得清”5.1 编译错误未定义变量、括号不匹配、中文符号通达信公式语言没有严格的类型声明但所有变量必须先赋值再使用。报错信息里最常见的“未定义变量”通常是把顶分型写成了顶分或者漏了变量定义的那一行。另一个高发错误是括号不匹配REF(H,1)少写一个右括号编辑器会直接定位到行尾。最隐蔽的错误是中文符号。源码从 Word 文档复制出来时分号、逗号会被替换成全角版本通达信把这些字符当作文本的一部分报错行号往往指向公式末尾。建议不要直接在 .doc 文件里编辑公式先粘到文本编辑器整理一遍再把所有、替换成半角;、,。再提供一个可以复制到源码末尾的调试语句用来查看顶底分型之间的实际距离DRAWNUMBER(顶信号,H*1.02,顶距,0); DRAWNUMBER(底信号,L*0.98,底距,0);DRAWNUMBER的四个参数分别是“条件、价格位置、要显示的数字、小数位数”。这个语句会把每个顶分型到上一个顶分型的周期数显示在K线上方。如果数值频繁出现1或0说明FILTER过滤窗口太小把N调大到5或6再试。5.2 显示错位中枢矩形跑到当前K线后方一个很容易被忽略的问题是VALUEWHEN取到的是历史最近信号不是“前前一个”信号。在连续同向分型被过滤后顶距和底距其实不是交替出现的它们各自记录同类型的最近距离。所以ZG:MAX(前底价,REF(前顶价,底距))算出来的中枢区间可能只有两笔重叠而不是三段走势重叠。要让中枢矩形更贴近缠论原文可以加一个“中枢未破坏”条件离开段:顶信号 OR 底信号; 中枢持续:COUNT(离开段,BARSLAST(中枢成立1))3;这里BARSLAST(中枢成立1)是找上一个中枢成立点COUNT统计从那以后出现的新分型数量。新分型少于3个时中枢继续保留出现第3个分型后说明中枢很可能被破坏柱子自动消失。5.3 用参数扫描确定当前行情的中枢窗口把同一套公式复制成三个指标分别把N改成2、4、6再叠加到同一张主图上对比效果。这是通达信里最直接的“参数扫描”方式不需要额外插件。看盘时可以用DRAWTEXT在最后一根K线显示当前生效的参数方便截图复盘DRAWTEXT(ISLASTBAR,H*1.02,NVAR2STR(N,0));VAR2STR把数值转成字符串做字符串拼接。这行代码会让主图最后一根K线上方显示N4之类的文字调参时一眼就能看出当前用的是哪组参数。6. 用真实行情验证中枢指标三类买卖点与背驰信号确认6.1 对照第一类买点离开段力度小于进入段缠论里第一类买点出现在中枢离开段结束的位置核心确认条件是离开段力度比进入段弱。主图指标把中枢矩形画出来后先找到向上进入中枢的一笔再找到向下离开中枢的一笔然后切到 MACD 副图对比两段绿柱面积。在通达信里可以直接用副图公式计算累计力度DIFF:EMA(CLOSE,12)-EMA(CLOSE,26); DEA:EMA(DIFF,9); MACD:(DIFF-DEA)*2; 面积:SUM(ABS(MACD),10);SUM(ABS(MACD),10)是最近10根K线MACD柱绝对值的和只作为粗略对比。更准确的用法是手动记录进入段与离开段的K线根数分别用SUM(ABS(MACD), 根数)算面积。主图矩形显示中枢区间副图面积值对应线段明显缩短才形成结构上的背离形态。6.2 第二类买点中枢突破回踩第二类买点通常出现在第一类买点之后、向上突破中枢回踩不破的位置。用主图指标看就是蓝色矩形上沿ZG被一根阳线突破随后回踩时最低价不回到矩形之内。验证方法是把ZG作为一个动态压力位在主图公式里加一条水平参考线突破:HIGHZG AND REF(HIGH,1)REF(ZG,1); DRAWICON(突破,L*0.995,2);REF(HIGH,1)REF(ZG,1)表示前一根K线最高价还在中枢下方当前K线最高价站上ZG这是突破当根的确认条件。回踩不破则继续持有如果回踩跌破ZD说明中枢延伸失败这组信号作废。6.3 多周期验证与参数复核缠论在日线级别的中枢在30分钟级别往往对应一段完整的趋势。可以用多周期交叉验证主图信号先看日线主图上中枢矩形是否清晰再把周期切到30分钟用同一套公式观察次级别笔是否在日线矩形内部完成两到三次震荡。两个周期的中枢区间互相重叠说明结构共振信号可信度更高。调参后不要只盯着最近几天看。把K线周期拉长到最近两年用DRAWLINE画出的笔从头看一遍长期横盘区是否画出过多假笔单边行情中中枢是否被拉得过宽。公式源码不换参数来回试三组记录哪组参数在历史回看时分型最少、中枢位置最连贯那一组就留在主图里作为日常默认值。本文还有配套的精品资源点击获取