学习如何基于动量设计交易系统·进阶篇
(2/3)· 接上篇趋势判断,本篇拆解动量公式与策略蓝图,让代码替你识别行情延续概率
动量指标的两根算法线
最朴素的动量是拿当期收盘价减去 n 个周期前的收盘价。n 取 14 时,若前 14 周期首日是 10、当期是 15,差值就是 5,指标在零轴上下摆动。 这种减法版本有两个硬伤:一是只比两端,中间 13 根 K 线的路径全被丢掉;二是数值无界,涨多了能到几十、几百,没有上下轨可参照。 MT5 里实际跑的是除法版动量,用比率替代差值。思路是把当期收盘除以 n 周期前收盘再乘 100,得到的序列围绕 100 轴震荡,比减法版多了可横向比较的基准。 把前面的例子套进除法:15 ÷ 10 × 100 = 150,意味着 14 周期内价格相对起点移动了 +50%。外汇和贵金属波动跳得快,这种无界指标在高杠杆下误判风险被放大,验证时建议先切到 M5 看发散程度。
◍ MT5 里把动量摆到 150 附近的实操
按 (15/10)*100 的算法,动量值会落在 100 以上、150 附近振荡,本文策略就基于这条线。MetaTrader 5 已内置该指标,不用自己写公式也能直接验证。 插入路径很固定:点「插入」→「指标」→「振荡器」→「动量」。弹出的参数框里,默认周期是 14,也就是拿当前价和 14 根 K 线前的中间价做比;价格类型可换收盘价、开盘价、最高价或最低价,显示样式也能改颜色、线型、线宽。 参数确认后图表下方会出现动量曲线。外汇与贵金属杠杆高、滑点大,同一套 14 周期在黄金 5 分钟和欧美日线里灵敏度可能差出数倍,建议先挂模拟盘看 150 阈值被触碰的频率再决定跟不跟。
「用动量穿越100线抓趋势信号」
动量策略的核心只盯一件事:动量曲线和 100 价位的穿越关系。线从下向上破 100,视为做多触发;从上向下破 100,视为做空触发。原版逻辑写成「动量>100=做多,动量<100=做空」,但裸信号噪声大,必须叠加趋势过滤才具备可交易性。 上行趋势里只认动量>100的做多叉,下行趋势里只认动量<100的做空叉。横盘阶段动量指标的早期信号和锯齿容易制造假突破,这篇作者的倾向是换别的工具吃横盘,不在动量上硬扛。外汇和贵金属杠杆高,假信号直接放大回撤,过滤不能省。 离场不绑死动量。可用价格行为收尾:上升腿里出现连续更低的低点,或下降腿里出现连续更高的高点,都算逆转完成的离场依据。你开 MT5 把动量周期设默认 14,加载到 EURUSD 小时图,肉眼核对 100 线穿越和趋势方向是否对齐,就能验证这套过滤有没有用。
把动量突破写成可跑的机器规则
动量策略要脱离肉眼盯盘,得先落成一套计算机能逐笔判定的规则。上行里,程序对每个即时报价做检查:当动量线向上穿越 100 或读数已站上 100,就触发买入信号;若未上破或低于 100,则保持静默。 下行逻辑对称:每次报价若动量向下破 100 或数值跌穿 100,发出做空信号;反之不动作。这条 100 中轴就是多空触发分界,外汇与贵金属波动快,这种阈值法在高杠杆下风险被放大,实盘前务必用 MT5 策略测试器跑历史校验。 下一步用 MQL5 把上述蓝图写成 EA,让信号自动弹出而非手工核对,这部分编码会在后续展开。