指标使用检查清单要解决的是一个很具体的问题:一张图上的线条、色块和文字标记,与它背后的计算是不是同一回事。公式从哪来、参数设成什么、数据够不够、量纲能不能放在一起——这些都不看,就直接讨论指标好不好用,讨论的是自己对图的一个印象。

下面把这份清单按核对顺序排开,七个环节,每个环节都指明在软件里能直接查看的位置。全文只讲公式的计算口径与核对方法,不评价任何指标的效果,也不给出操作结论。文中目录名与菜单路径以通达信金融终端个人版为参照,版本号可在「帮助 → 关于」中核对,券商定制版的菜单名称可能与之不同。

一、公式依赖哪些数据

打开公式源码,先做一件事:把里面出现的数据名逐个抄出来。常见的是开盘、最高、最低、收盘、成交量与成交额这几条按时间排列的序列,写法分别是 OPEN、HIGH、LOW、CLOSE、VOL、AMOUNT。这一层不查出处的数据,只要本地有行情就能取到。

需要留意的是第二类:引用了本品种之外的数据。板块指数、行业指数、大盘指数都属于这一类,它们的代码与个股不在同一段,公式里要单独指定。还有一类是财务数据或更细的资金类数据,这类数据的更新时点与行情不同,取到的值可能是上一报告期的。

核对办法是看输出与本地数据的重合范围。行情类序列在数据下载完整的情况下,从本地数据的起点往后每一根都有值;跨品种引用与财务类数据,起点更靠后,或者在某个位置之前一直返回空值。图上表现为线条前半段失踪,或者干脆从中间开始画。

二、参数表的读法

通达信的公式有两种参数写法。一种写在源码里,直接把数字写死在计算式中;另一种是参数表,在公式管理器的新建或修改界面里单独声明,写法和取值范围都填在那里。区别在于参数表里的值可以在不改源码的前提下调整,也能在多个窗口里用不同取值。

参数表的位置在公式管理器 → 技术指标公式 → 选中公式 → 修改 → 参数表。表里每一行是参数名、最小值、最大值、默认值四列。这里有一个容易忽略的点:默认值是在把公式挂到图上时自动带进去的那个值,改参数表不会改变已经挂在图上的那些实例,它们仍然用挂上去那一刻的取值。

{ 参数表声明后,源码里直接用参数名 }
{ 参数表:N  最小 5  最大 60  默认 20 }
MA1:MA(CLOSE,N);
MA2:MA(CLOSE,N*3);

{ 与硬编码写法对照 }
MA3:MA(CLOSE,20);

看参数的意义要落在它引用的数据段上。周期类参数改变的是取样长度,权重类参数改变的是不同位置的权重分配,阈值类参数改变的是判断成立的门槛。三者对输出的影响方向不同,混在一起调,很难说清是哪一个起了作用。

三、输出量纲与坐标轴

主图公式和 K 线共用一套坐标轴。如果公式输出的值落在与价格同一量级,两者能放在一起看;如果输出的值高出价格一个量级,K 线会被压成一条细带,图上只剩下公式的线条。这类问题不报错,也不影响计算出结果,但它让图失去了可读性。

副图公式要单独判断一次。副图有自己的一套纵坐标,公式输出的量若是比值或百分比,量级在 0 到 100 之间,纵轴范围是合适的;若同一张副图上放了两条量级相差很大的线,两条线的相对高低就没有含义,看起来的交叉也未必对应什么。

判断量纲对不对不用算,把鼠标移到线条上,看弹出的数值。数值与当前价格在同一量级,主图放得下;数值在几十到几百之间,多半是副图指标。这个动作花不了几秒,能避免把一张失真的图当成正常输出。

四、挂载位置与显示范围

公式挂在哪里由它的输出决定。主图叠加适合画在 K 线附近的线;副图适合独立的量纲;再有就是画在 K 线之间的标记类输出。挂载位置在公式编辑界面选定,或者右键图上区域选择「选择主图指标」与「选择副图指标」。

显示范围是另一项。图上看多少根 K 线,可以在图表底部拖动,也可以在系统设置里改默认的数量。这个数量和公式的计算量相关:公式里如果含逐根递推的写法,比如用前一期的结果参与当期计算,计算量会随显示根数增长。把显示范围从几百根拉到几千根,刷新时的等待时间会明显变长。

显示范围还会影响一件更隐蔽的事:前几根 K 线上的输出。递推类写法需要足够长度的历史数据才能收敛,图上最左边那几根的输出是在数据不足的条件下算出来的,把它们当作正常值看待会得到错误的印象。核对办法是把显示范围往左扩一段,看最左侧的输出是否还在变化。这一项在指标使用检查清单里排在挂载位置之后,它同样属于公式输出的性质问题,而不是写法问题。

五、用同一天的数据复核一个点

指标使用检查清单走到这一步,要做的是一次逐点复核。公式输出不必整段核对,挑一个点就够。选一根收盘数据已知的 K 线,把公式里最重要的那条输出手算一遍,与图上显示的数值对照。手算要用到的中间量,可以在源码里临时加输出,逐层打印出来看。

{ 逐层打印中间量,用于手算核对 }
A1:=CLOSE;
A2:=REF(CLOSE,1);
A3:=A1-A2;
X:A3;

{ 图上显示的 X 值应与手算一致 }

一根对得上,说明取值链条没接错。对不上时不要急着改公式,先确认两件事:图上那根 K 线的日期与你手算用的是不是同一根;该股的复权设置与公式是否一致。除权日的收盘价在复权前后是两个数,用不复权的数据去套复权计算的公式,两者的结果对不上。

六、几类会让结果失真的情形

第一类是数据缺失。本地日线数据没有下载完整,公式在缺失区间返回的是空值,画到图上就是断线。判断办法是打开数据下载工具,看该品种的日线数据起止日期,与图上输出的起止位置对照。

第二类是停牌与长期无成交。停牌期间没有新的行情,某些以成交量为分母的计算会得到分母为零的结果,输出可能直接跳过一段或给出异常值。这类情形属于数据本身的特性,不是公式写错。

第三类是品种差异。同一段公式在个股与指数上跑,取到的序列不同,用到换手率一类需要流通股本的计算时,指数的分母含义与个股不同。把个股上验证过的公式直接套到指数上,输出的数值可比性会下降。

第四类是周期切换。日线公式套到分钟线上,周期参数对应的实际时间长度变了。二十周期的均线在日线上是二十个交易日,在一分钟线上是二十分钟,两者的含义无法互相替代。

七、这份清单用完之后

指标使用检查清单走完一遍,得到的是对一张图的确认:数据从哪来、参数怎么定、画在哪、量纲合不合、某一点能不能复现、什么情况下会失真。这些确认做完,再去判断指标是否符合自己的使用习惯,判断才有依据。反过来,跳过确认直接看线条好不好看,得到的只是对图形的观感。

把这份清单固定成一种习惯,还有一个附带的好处:拿到任何一个新公式,核对路径都是同一条,不必每次重新摸索。核对项的推进顺序也可以按需要调整,不建议跳过的是一开始的源码查看——不看源码就无从知道输出是怎么来的。

站内还有几处可以对照查看:公式编写与语法函数 一栏讲函数本身的写法,指标原理与参数优化 一栏讲参数改变对计算的影响,公式安装与导入 一栏讲文件放在哪个目录。三处侧重点不同,按需要挑一处看即可。

文中出现的目录名、菜单路径与函数名来自软件安装后的目录结构与公式管理器界面;不同版本、不同券商定制版可能存在差异,请以你所用版本的「帮助 → 关于」与本地实际目录为准。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。