十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

通信达公式参数详解:从默认值认识到参数优化实战

通信达公式参数详解:从默认值认识到参数优化实战 简介《通信达公式参数总结》是一份围绕通信达公式编写与使用的系统梳理文档主要面向需要学习技术指标构造、行情数据读取和图表条件绘制的分析者。资源包为单个doc文档仅52KB便携易查文档按行情函数、时间函数、引用函数等类别逐条说明函数用途、返回值与用法示例。行情函数覆盖最高价、最低价、收盘价、成交量、开盘价、涨跌家数、成交额、委买卖盘以及主动性买卖量等为解读市场动态提供关键数据时间函数则给出日期、时间、年份、月份、星期、日、小时、分钟和距开盘分钟数等精确参照。引用函数部分介绍了DRAWNULL、BACKSET、BARSCOUNT、REF、COUNT、HHV、LLV、FILTER等常用工具适用于图表画线、条件统计和数据处理既有说明也有组合示例能帮助初学者理解公式结构也能让有经验的用户快速定位参数含义减少试错成本。目前页面已有41人学习浏览适合作为公式入门速查手册和日常编写参考。1. 通信达公式参数先搞懂参数在公式里是什么角色打开通信达公式管理器新建一个指标第一眼看到的多半是几行以分号结尾的数字M1:5,1,100,5;、M2:10,2,200,10;。很多人写公式卡住的地方恰恰不是函数记不住而是这一行行参数没读懂。参数在公式里承担“旋钮”的角色同一段代码参数一改信号输出可以从一年几次变成一个月几十次。这篇文章围绕“参数”做一次完整梳理覆盖系统自带指标的默认参数、自定义公式的参数定义语法、参数优化的操作方式和验证技巧。适合正在学习公式编辑、打算调整系统指标参数、或者每次改完参数后心里没底的从业者。2. 通信达系统自带公式的常用参数先认默认值再动手改改一个指标之前先看懂默认参数分别控制什么这是所有参数操作的基础。系统自带公式的参数并不是随意填的数字每个字段都对应一个可调节的输入项理解它们的含义要比背参数值重要得多。2.1 均线类指标的参数行周期就是参数本身MA 公式是理解参数最简单的一个例子。在通信达公式管理器里新建一个技术指标输入以下内容M1:5,1,100,5; M2:10,2,200,10; M3:20,3,200,20; M4:60,5,999,60; MA1:MA(CLOSE,M1); MA2:MA(CLOSE,M2); MA3:MA(CLOSE,M3); MA4:MA(CLOSE,M4);第一行M1:5,1,100,5;的四个字段分别是参数名、最小值、最大值、缺省值。也就是说 M1 这个名字在公式内部代表 5 这个缺省数值调整范围被限制在 1 到 100 之间。MA1:MA(CLOSE,M1);输出以缺省值 5 为周期的收盘价均线。把 M1 改成 8MA1 曲线会明显平滑转折点滞后一点改成 3曲线贴价格更近但噪声变多。均线类公式的参数本质就是“统计窗口长度”数值代表的是 K 线根数而不是百分比或其他单位。与 MA 相似的还有 EMA 和 EXPMA它们在通信达公式系统里也依赖同样的参数行结构。区别在于 EMA 给近期价格更高的权重同样参数下曲线更灵敏但也更容易产生连续交叉信号。如果只调参数而不换函数信号的敏感度表现是完全不同的记住这一点能少走很多弯路。2.2 摆动类指标的参数敏感度由参数决定MACD、KDJ、RSI、BOLL 这类指标判断的是超买超卖或趋势强弱参数控制的是“计算最近多少根K线”的窗口以及平滑处理的强度。窗口越短指标对单根K线的反应越快假信号也越多窗口越长信号越钝但稳定性更好。下面这张参数速查表是我在实际改指标时会放在手边的对照表指标参数名与默认值四个参数段位的控制内容常见调整方向MACDSHORT12, LONG26, MID9快慢均线周期与 DIF 的平滑周期短线交易者常改成 6/19/6长线则放大到 17/50/8KDJN9, M13, M23RSV 计算周期与 K、D 的平滑因子周线或分钟线先按周期比例缩放RSIN16, N212, N324三个强弱计算窗口保留中间档 12 观察背离信号WRN110, N26两个超买超卖判断区间一般只动 N1N2 保持默认BOLLN20, P2中轨周期与标准差倍数低波动标的可把 P 调到 2.5这张表里的关键信息不是默认值本身而是“每个参数控制什么”。以 MACD 为例SHORT 和 LONG 决定 DIF 的快慢线来源MID 决定 DEA 的平滑周期。如果只把 SHORT 从 12 改成 6DIF 会变得活跃但 DEA 平滑周期仍为 9两线之间的间距和交叉频率会同时变化不要只看单一参数。BOLL 的 P 参数容易误解成“宽度百分比”它实际上是标准差倍数。P 越大轨道越宽价格触碰上下轨的概率越低。默认 2 对应约 95% 的正态分布覆盖范围这在通信达公式里是按统计原理计算的改参数时要清楚这个数学含义。2.3 快速定位参数作用调大调小看图形变化不确定某个参数控制什么时最快的办法不是翻文档而是在公式编辑器里用鼠标点中参数名然后改变缺省值观察副图或主图上的曲线变化。比如把 KDJ 的 N 从 9 改成 3K、D 两条线会立刻变得毛糙改成 27曲线会明显平滑。这个操作只需要几秒钟比任何文字解释都直观。另一种定位方式是看“参数优化”界面里的取值区间。把最小值设成 1、最大值设成 999搜索空间会非常大优化耗时明显增加把区间收窄到常见范围搜索次数大幅度下降。调参之前先研究每个参数的合理范围再决定优化边界这是让参数搜索有效率的前提。3. 通信达公式自定义参数把死数值改成可调钮自带指标改参数解决的是“现有公式怎么用”的问题而自定义参数解决的是“自己的公式怎么写才灵活”的问题。很多初学公式的人把所有数值直接写死在代码里每次改周期都要进编辑器改好几处这个习惯应该尽早改掉。3.1 参数定义区的四段式语法在通信达公式里参数定义必须写在公式代码的最前面。每行定义一个参数格式如下M1:5,1,100,5; M2:10,2,200,10;四段字段的含义需要准确理解缺一不可。参数名是公式内部使用的标识符最小值是参数调整的下限最大值是上限缺省值是打开指标时显示的默认参数。下表可以直接作为参数定义时的速查参考字段作用示例中的值注意事项参数名公式内部引用的名字M1不能用函数名、不能用数字开头建议用英文最小值参数可调范围下界1决定参数优化时的搜索下界最大值参数可调范围上界100过大会浪费优化时间缺省值新建指标时的默认参数5必须在最小值和最大值之间否则无法保存参数定义有几个容易踩的规则。参数名不能与系统函数或保留字重名CLOSE、VOL、HHV 这类名字都不能用参数名也不能以数字开头1MA这种写法编译不过。缺省值必须落在最小值与最大值构成的闭区间内否则公式编辑器会提示参数定义错误。单个公式内可定义的参数数量有限当参数表排不下时优先把不经常调整的参数直接写成常量保留最关键的几个作为可调参数。3.2 一个可调的双均线交叉公式下面用双均线交叉作为一个完整示例展示参数定义在真实公式中的写法。新建一个技术指标公式命名为“双均线可调”粘贴以下代码M1:5,1,100,5; M2:10,2,200,10; FAST:MA(CLOSE,M1),COLORWHITE; SLOW:MA(CLOSE,M2),COLORYELLOW; DRAWICON(CROSS(FAST,SLOW),LOW*0.98,1);这段代码的逻辑是FAST输出 M1 周期的收盘价均线SLOW输出 M2 周期的均线CROSS(FAST,SLOW)表示快线上穿慢线DRAWICON在价格低点下方画买入图标。参数 M1、M2 完全替代了原来写死的 5 和 10之后改周期不需要再动任何一行代码只需要调整参数值。修改参数有两种触发方式。一是在公式编辑器里直接改缺省值并保存二是在副图指标界面点击右键进入指标参数对话框用输入框或滑块调整当前显示用的参数。注意第二种方式只改变当前窗口的显示效果不会写回公式文件这一点在 3.4 节会详细展开。3.3 参数精灵在图上直接确认当前参数参数调多了之后经常会出现“忘了当前图形里用的到底是哪组参数”的情况。常见做法是在公式里加一行参数精灵把当前参数值直接标在主图上。代码可以这样写DRAWTEXT(ISLASTBAR,HIGH*1.02,M1STR(M1)),COLORGRAY;ISLASTBAR在最后一根K线位置成立STR(M1)把参数值转成字符串HIGH*1.02控制文字显示在最高价上方。这样打开任何一只股票主图右上角都会直接标注“M15”不需要再进入公式编辑器核对批量调试参数时非常省事。字符串拼接只适用于文本输出不能把STR(M1)当作数值继续参与计算。3.4 参数保存修改不写回默认值的坑通信达公式的参数有一个容易忽略的行为在图形界面上手动调整参数后如果不再打开公式编辑器把缺省值同步修改下次新建指标或换电脑时公式会恢复到原来的缺省值。也就是说手动调参的结果只活在当前图形窗口里。正确做法是经过验证的新参数值要写回公式编辑器前部的参数定义行把缺省值改成新值后再保存。这样做的副作用是公式的默认表现会更新旧的参数组如果没有记录就被覆盖了。所以调参之前建议先复制一份原始公式备份或者把参数组记录在注释行里例如{2024-10 短线参数:6,19,6}。参数整理得再好不写回文件就等于没整理。4. 通信达公式参数怎么调周期换算、优化与回归掌握参数语法以后下一个问题是“参数到底取多少”。这个问题的答案依赖交易周期、标的波动特征和回测样本不可能是固定值。但有几条通用的调整路径可以遵循从周期换算到自动优化再到回归验证每一步都有明确的做法。4.1 周期缩放分钟、日线、周线的参数换算同一套参数从日线切到周线或分钟线不能直接照搬。以 KDJ 为例日线 N9 在周线上通常按“交易日数量比例”放大常见做法是取 5 倍左右也就是 N45。切到 30 分钟或 60 分钟线时参数往往要缩小因为分钟线的噪声结构和日线完全不同。直接改参数不是唯一办法另一个可行方案是在公式编辑器右上角切换“数据周期”让同一套参数作用在不同的K线周期上。两种做法对应的实际含义不同改参数是“保持K线周期不变换计算窗口”改数据周期是“换K线周期保持窗口含义不变”。调试时先用后者确认趋势方向再用前者细化进场信号这个顺序能减少无效尝试。4.2 用参数优化找参数而不是靠感觉通信达公式管理器内置了参数优化功能一般入口是公式编辑器工具栏或右键菜单中的“参数优化”。它适合对一个或两个参数做网格搜索把参数值遍历一遍再按目标函数排序得出最优组合。要参与优化公式必须是条件选股公式或交易系统公式普通指标公式没有买卖信号输出无法自动评测。下面是一个适合拿来跑参数优化的选股公式骨架M1:5,1,30,5; M2:10,2,60,10; BUY:CROSS(MA(C,M1),MA(C,M2)) AND VOLMA(VOL,5)*1.2;这个公式把双均线金叉和量能放大结合起来VOLMA(VOL,5)*1.2过滤掉缩量假突破。优化界面里M1 可以设成 3 到 30、步长 3M2 设成 10 到 60、步长 5目标函数选择“选股成功率”或“盈利测试”。步长太细会让搜索次数爆炸两个参数分别取 5 到 10 个候选值已经能覆盖大多数场景。优化得出的“最优参数”只是历史样本内的最优实际是否可用要看接下来几步验证。4.3 不能直接把变量当周期参数一个高频误用通信达公式语言有一个限制经常让人挠头周期参数必须是常量或参数定义区里定义的名字不能用公式内临时赋值的变量。下面这段代码在实际公式系统中不会被接受N:2*ATR(14); MA(C,N);N 在这里是临时变量MA(C,N)要求第二个参数是固定周期二者冲突。遇到“想按波动大小动态调整周期”的需求时常见做法是用常数参数配合高级函数来近似实现。比如用固定周期 M 计算通道上下轨M:10,2,100,10; UP:HHV(HIGH,M); DN:LLV(LOW,M); MID:(UPDN)/2;这段代码用 HHV 和 LLV 构造了一个自适应通道M 保持可调参数的身份不违反语法限制同时也能参与参数优化。理解“变量不能直接当周期参数”这条规则可以避免写出编译不通过或逻辑异常的公式。4.4 参数组合回归表把每次试验变成记录参数调整最忌讳“调完看两眼就拍板”。我一般会在每次试验后把参数组合、适用场景、测试区间和结果记录成一张表格积累到三组以上再做决定。参考模板如下参数组适用场景测试区间信号数量胜率默认参数基线参照近一年日线按实际记录填写按实际记录填写激进参数短线高频近一年日线按实际记录填写按实际记录填写保守参数中线低频近一年日线按实际记录填写按实际记录填写至少要记录三组默认参数、激进参数、保守参数。比较信号数量的变化幅度可以看出参数的敏感度三组信号数量差距不大说明公式结构稳定差距超过一倍说明参数对噪声非常敏感需要先修公式而不是继续调参。4.5 避开未来函数再谈参数优劣参数优化之前必须检查公式是否包含未来函数。ZIG、PEAK、TROUGH、BACKSET、PEAKBARS、TROUGHBARS 这类函数在计算时会引用后续K线数据在历史回测里表现极好实盘却完全不可用。通信达公式编辑器在编译包含未来函数的公式时会给出提示但很多人忽略提示直接跑优化结果得到一组事后画线才能成立的参数。正确流程是先用不含未来函数的公式跑参数优化得到候选参数后再用严格版本验证信号是否出现在K线收盘之后。只有通过这两步的参数才值得写回缺省值。5. 通信达公式参数调试三板斧信号计数、样本外与反例5.1 先在图上比信号数量对比两组参数最直接的方法是把它们写进同一个公式分别统计最近 250 个交易日的信号数量。下面这段代码可以作为通用模板M1:9; FAST1:MA(C,M1); SLOW1:MA(C,2*M1); K1:CROSS(FAST1,SLOW1); M2:21; FAST2:MA(C,M2); SLOW2:MA(C,2*M2); K2:CROSS(FAST2,SLOW2); SIG1:COUNT(K1,250); SIG2:COUNT(K2,250);COUNT(K1,250)统计最近 250 根K线中金叉发生的次数。SIG1 和 SIG2 的数值可以直接在副图指标窗口里读取不需要写额外脚本。如果两组信号数量差距过大说明参数选择对噪声高度敏感这种公式很难稳定。5.2 看参数平原不看参数尖峰一组好参数的特征是把参数值往左右各移动一档信号数量变化平缓胜率没有断崖式下跌。把参数区间画成曲线好参数落在“平原区”坏参数落在“尖峰区”。尖峰参数意味着历史最优只是巧合未来样本内很难复制。检验方式是记录三组邻近参数的信号数量例如 M1 分别取 8、9、10SIG 数值依次为 32、30、31这是可用的如果依次为 55、12、48基本可以判定公式结构有问题。5.3 三个反例参数调试中必须避免的行为第一优化完直接把最优参数写回缺省值不做样本外验证。样本外验证至少覆盖一段与优化区间不重叠的行情否则验证没有意义。第二在参数优化时使用了含未来函数的公式得到一组事后才能实现的参数这是参数调试中最常见的失真来源优化前务必检查 ZIG、PEAK、TROUGH、BACKSET 等函数。第三手动调参后没有把缺省值写回公式文件导致下次打开时参数回退到旧值之前的验证结果全部作废。最后留一个具体技巧公式里参数超过四个时每次调试只允许两个参数参与变动其余参数固定这是唯一能让样本空间不爆炸、也让回归记录保持可解释性的办法。把每一轮试验的参数组、信号数量和样本区间写进同一条记录坚持一个月你对参数的感觉会比只看收益曲线准得多。本文还有配套的精品资源点击获取
返回列表