海龟交易法则中的 N (ATR) 是入场时的 N 还是即时 N,两者使用逻辑有什么区别?

在著名的期货交易系统,海龟交易法则中,使用了ATR作为止损和仓位管理的指标。

一、ATR计算

ATR是一个算法。其编写指标如下:

# TR= True Range
TR : MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR : MA(TR,N),COLORBLUE;

第一句话的意思是:先求出一个叫TR的数值。
这个TR,你可以理解为,当天价格的波幅。

你比如这根K线:
file

它的波幅怎么算?用最高价减去最低价,就是最简单的算法。

但是,有两种特殊情况,ATR的值会有偏差(这里是重点)。
一种是高开,一种是低开。比如下图:

file

这根K线,直接低开了。什么是低开呢?就是今天开盘价低于昨天的收盘价。 如果我们用最高价减去最低价,实际上并不能真正的体现它的波幅,所以,海龟交易法则用的是,昨天的收盘价,减去今天的最低价。这样,可以结算处它的真实波动幅度。

那么高开也是一个道理:用昨天的最低价,减去今天的最高价的绝对值表示。
所以,TR,也就是今天的真实波幅,一定就是这三个值中的最大值。
所以,第一行代码的意思就是:

求最高价减去最低价;一个周期前的收盘价减去最高价的绝对值;一个周期前的收盘价减去最低价的绝对值;这三个值中的最大值。

那么,这样我们算出来的,其实是今天的波幅,但是海龟交易法则要的是一个阶段的平均波幅,今天仅看一天的话,这个数值具有偶然性。

所以,所谓的ATR,就是计算近26个交易日中,这个TR的简单移动平均。就是把26天TR的值加一起,除以26。

这样就得出了一个ATR,它可以反映最近一段时间这个品种的真实波动幅度。
用这个幅度,来止损,来加仓,来设计仓位,都是可以的。

好了,接下来来看题主的问题,海龟交易法则中的N(ATR)是入场时的N还是即时N,两者使用逻辑有什么区别?
很明显,这个ATR,在盘中有的时候是变化的,有的时候是不变化的,因为用的参数是最高价和最低价,这个价格并不是时刻都会被刷新的。所以,这个ATR的值有些时候是固定的,有些时候是波动的。而且,因为这个价格是26天的平均值,所以它的变化,并不是那么灵敏。

这个数值,入场的一瞬间,会根据当前具体的atr值来直接计算,手数。然后,在持仓时,又会根据当前最新的ATR来计算加仓点位。在止损时,也是根据当下的ATR值来计算的。

这个指标就是这么设计的,为了就是观察当前的品种的波动情况,没有其他的逻辑在里面。即使你非要设计成使用开仓时的ATR,也是可以的。但是没有什么特别的意义。

二、实战

待开发...

为者常成,行者常至