通达信振幅与波动率公式里,同一个数字换一个分母就换一个含义。振幅用最高价减去最低价,这一段没有人会写错;出错的地方在后面那一步,也就是减出来的差值除以谁。分母取前一个交易日的收盘价,得到的是与涨跌幅同一口径的日内波动;分母取当根收盘价,得到的是这个差值占当根收盘的比例。两个数在跳空的位置上会明显分开。

下面按「振幅的分母、日内与区间两种口径、ATR 的取数、标准差口径、参数与平滑、三种量纲的对照」六步讲。涉及的都是取值与计算,不涉及任何方向判断;文中的函数名以通达信公式编辑器内附的函数说明为准。

一、振幅的分母决定了数值大小

通达信振幅与波动率公式的分子是固定的,都是当根最高价与最低价之差。分母有两种常见写法,写在同一段公式里会得到两条不同的曲线。

{ 两种分母的写法 }
振幅A := (HIGH - LOW) / REF(CLOSE, 1) * 100;
振幅B := (HIGH - LOW) / CLOSE * 100;
{ 前者以昨日收盘为基准,后者以当根收盘为基准 }

以昨日收盘为基准的那一条,与行情软件里显示的涨跌幅出自同一个参照点,读起来可以直接与涨幅列对照。以当根收盘为基准的那一条,衡量的是当根的波动区间占自身的比例,它不受前一根收盘的影响,跳空的位置上不会因为基准变化而突然抬高。

两者差异最大的位置在跳空处。开盘跳空高开之后当根收盘也偏高,用当根收盘作分母会把振幅压低;用昨日收盘作分母则把这部分跳空引起的整体位移一并计入。核对时先把两条曲线输出到副图,挑几个跳空的位置对照,差异是哪一个方向就清楚了。

二、日内振幅与区间波动率不是一回事

振幅描述的是单根 K 线的范围,它不看这一根之前或之后的价格。区间波动率描述的是连续若干根收盘价的离散程度,它不看单根的最高最低,只看这段时间里收盘价之间的分散情况。

两者的差别在横盘之后突然放大波动的位置上最直观。单根振幅会立刻跳上去,区间波动率因为还要等后续若干根才完成换手,抬升得慢一些。反过来,连续几根小十字线之后出现一根长影线,单根振幅变大而区间波动率变化很小。做对照时把这两条线画在一起,能看出当前的变化是「单根的事」还是「一段时间的事」。

两条线在响应速度上的差别来自窗口长度。振幅的窗口只有一根,当根即出结果;区间波动率的窗口是 N 根,每一根新数据进来都要替换掉窗口里最旧的一根。窗口越长,这条线对单根变化的响应越慢,读数也越平稳。

三、ATR 的取数口径

ATR 先把每一根的真实波幅算出来,再对这个序列做平滑。真实波幅取三项中的最大值,其中一项专门处理跳空。

{ 真实波幅与 ATR }
TR := MAX(MAX(HIGH - LOW, ABS(REF(CLOSE, 1) - HIGH)), ABS(REF(CLOSE, 1) - LOW));
ATR := MA(TR, N);
{ 第三项处理跳空:当根最高价低于前收盘时,HIGH-LOW 会低估实际移动 }

第三项存在的原因值得说明。当根最高价高于前收盘时,最高价减最低价已经把跳空算进去了;当根最高价低于前收盘时,整根 K 线在前收盘的下方,最高价减最低价只覆盖了当根的范围,漏掉了从前收盘到最高价这一段。取三项的最大值,两种情况都能覆盖。

ATR 的输出单位是价格,不是百分比。这一点决定了它的用法:同一套参数在不同价位的品种上,ATR 的数值不可直接互相比较;要让数值可比,需要再除以该品种的价格水平,换算成相对量。ATR 可以直接叠加到主图,与 K 线的量纲一致,这也是它与振幅百分比用法上的分界。

四、标准差口径与相对波动率

标准差描述的是收盘价序列围绕平均值的分散程度。它的输出单位同样是价格,要看相对水平需要除以这段时间的均价。

{ 标准差与相对波动率 }
波动 := STD(CLOSE, N);
相对波动 := STD(CLOSE, N) / MA(CLOSE, N) * 100;
{ 前者是价格单位,后者是无量纲的相对量 }

标准差与布林线的关系是直接的:布林线以均线为中轨,上下轨按若干倍的标准差向两侧张开。理解了标准差的量纲,也就理解了布林通道宽度为什么会随波动放大而变宽。通道口径的展开写法可以参考 通达信指标原理与参数 一栏里关于标准差与通道宽窄的对照说明。

三种口径放在一起看时要注意一点:振幅衡量的是当根的范围,真实波幅在振幅基础上把跳空补齐,标准差衡量的是收盘序列的离散。三个数都在描述波动,但回答的问题不同,混用会导致同一个位置的波动水平出现三套读数。

五、参数与平滑方式

参数 N 决定观察窗口长度,平滑方式决定窗口内的权重分配。两者都会改变曲线的形状,但改变的方式不同。

写法 参数变化的效果 读起来的特点
简单平均 窗口越长,曲线越平缓 窗口内每一根权重相同,转折点来得晚
指数平滑 窗口相同时,近期权重更大 对当根的变动反应更快,尾部更细
单根值 没有平滑,不涉及窗口 逐根读数,适合与原始 K 线逐根对照

参数与平滑方式的组合会影响读数的稳定程度。同一段行情上,简单平均在窗口边缘处的变化比指数平滑更慢;指数平滑在连续几根同向数据之后会把权重集中到近期。选择哪一种,取决于要看的是曲线拐点的早晚,还是近期变化所占的权重。

参数改动之后要重新核对量纲,而不是只对比数值大小。窗口从短线改成长线,标准差与 ATR 的数值都会变,但在同一段行情上不同参数之间的相对高低次序未必同步改变。核对时把两套参数分别输出,看相对次序是否稳定,比单看某一天的大小更有意义。

六、三种量纲的对照与核对

口径 量纲 能否叠加主图 读的是什么
振幅百分比 百分比 不能 当根范围相对基准的比例
ATR 价格 能 含跳空的平均真实波幅
相对波动率 百分比 不能 收盘序列离散程度相对均价的比例

通达信振幅与波动率公式的核对做法是挑一根 K 线手工复算。取该根最高价减最低价得到分子,按选定的分母算出振幅;取该根与前一根收盘的关系,按三项取最大值算出真实波幅,再对连续 N 根取平均得到 ATR。两处与公式输出对上,说明取数与窗口都对上了;对不上时先查窗口根数,再查分母用的是前收盘还是当根收盘。

把上面的内容收一下:通达信振幅与波动率公式的差别集中在两个地方——分母取哪一根收盘,以及是否把跳空补进真实波幅。这两个选择定了,数值口径就定了。相关的量纲与叠加位置的限制见 主图副图指标 一栏,读数口径在复盘环节怎么用见 复盘方法与数据工具 一栏。

同一段行情,换一个分母、换一种平滑、换一个窗口,得到的曲线形状各不相同。你要读的到底是单根的波动,还是一段区间的离散?这个问题先答上来,参数才有意义。

文中函数名与算法为通用描述;通达信不同版本与券商定制版对 STD、MA 一类统计函数的参数形式、平滑方式与除零位置的处理存在差异,具体写法请以你所用版本公式编辑器内附的函数说明为准。本文只讨论计算口径与量纲,不构成任何投资建议。

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