作者: 安德烈·N·博尔孔斯基
威廉·布劳的蜡烛图动量指标(q周期蜡烛图动量)在他的书籍中被详细介绍,书名为 《动量、方向与背离:应用最新动量指标进行技术分析》。
- 将 WilliamBlau.mqh 文件放置在 terminal_data_folder\MQL5\Include\ 目录下。
- 将 Blau_CMtm.mq5 文件放置在 terminal_data_folder\MQL5\Indicators\ 目录下。
动量是当前价格(例如,蜡烛的收盘价)与之前价格(几个蜡烛之前的价格)之间的差异。动量可以应用于任何时间框架和周期。
根据威廉·布劳的定义,蜡烛图动量被定义为在固定时间间隔内的价格变化:
cmtm = close - open
其中:
- close - 蜡烛的收盘价;
- open - 蜡烛的开盘价。
蜡烛图动量可以是正值或负值,正的动量表示收盘价高于开盘价;反之,当开盘价高于收盘价时,动量为负,表示价格下跌。
蜡烛图动量的定义还可以扩展为:
- 蜡烛图动量可以应用于任何时间框架;
- 应用的价格(收盘价、开盘价)可能会有所不同。

q周期蜡烛图动量的定义

威廉·布劳的蜡烛图动量指标
计算:
蜡烛图动量的计算公式如下:
cmtm(price1,price2,q) = price1 - price2[q-1]
其中:
- q - 用于计算蜡烛图动量的蜡烛数量;
- price1 - 收盘价;
- price2[q–1] - q根蜡烛之前的开盘价。
平滑的q周期蜡烛图动量计算如下:
CMtm(price1,price2,q,r,s,u) = EMA(EMA(EMA( cmtm(price1,price2,q) ,r),s),u)
其中:
- q - 用于计算q周期蜡烛图动量的蜡烛数量;
- price1 - 收盘价;
- price2 - q根蜡烛之前的开盘价;
- cmtm(price1,price2,q)=price1-price2[q-1] - q周期蜡烛图动量;
- EMA(cmtm(price1,price2,q),r) - 第一次平滑 - 对q周期蜡烛图动量应用的EMA (r);
- EMA(EMA(...,r),s) - 第二次平滑 - 对第一次平滑结果应用的EMA(s);
- EMA(EMA(EMA(...,r),s),u) - 第三次平滑 - 对第二次平滑结果应用的EMA(u)。
- q - 蜡烛图动量指标的周期(默认q=1);
- r - 应用于蜡烛图动量的第一次EMA周期(默认r=20);
- s - 应用于第一次平滑结果的第二次EMA周期(默认s=5);
- u - 应用于第二次平滑结果的第三次EMA周期(默认u=3);
- AppliedPrice1 - 价格类型(默认AppliedPrice=PRICE_CLOSE);
- AppliedPrice2 - 价格类型(默认AppliedPrice=PRICE_OPEN)。
- q>0;
- r>0, s>0, u>0。如果r, s或u等于1,则不使用平滑;
- 最小利率 =(q-1+r+s+u-3+1)。