【兵法云】 :“兵贵神速。乘人之不及,由不虞之道,攻其所不戒也。”
如果说 MACD 是指北针(看方向),那么 MOM (Momentum) 就是你战车上的速度表。它不关心你在哪里,只关心你跑得有多快。
1. 战局痛点:为何“追涨”总被套?
实战数据剧透: 在最新的回测中,我们对 MCK (美股) 和 603737 (A股) 进行了严酷的压力测试。 结果令人深思:MOM 并非遍地捡钱的神器。在 MCK 上,它虽跑赢了通胀(年化 15%),但远未达到“暴利”;在 603737 上,由于过度过滤,9年仅交易 2 次,虽然胜率 100%,但资金利用率极低。 速度确实是利润的源泉,但并非所有路况都适合飙车。
你是否也经历过这种无奈:
- 看着股价涨了,觉得趋势确立了,刚追进去,它就“减速”横盘了?
- 以为是回调,结果是动力熄火,股价直接掉头向下?
MOM (动量指标) 的核心天赋是测量加速度。它告诉你,现在的上涨是“油门踩到底”的加速阶段,还是“松开油门”的惯性滑行。惯性滑行,往往是反转的前兆。
2. 兵法推演:速度与激情
拒绝枯燥的公式,我们用 《大风策》 的兵法视角来拆解:
| 阵法组成 | 兵法定位 | 战术含义 |
|---|---|---|
| 0 轴 | 静止状态 | 速度为 0。多空力量平衡,可能是盘整,也可能是变盘点。 |
| 正值 (+) | 冲锋速度 | 既然是正数,说明今天的价格比 N 天前高。数值越大,冲锋越猛。 |
| 负值 (-) | 撤退速度 | 既然是负数,说明今天的价格比 N 天前低。数值越小(越负),溃败越快。 |
| MOM 线 | 转速指针 | 指针向上=加速;指针走平=匀速;指针向下=减速。 |
2.1 深度拆解:MOM 的铸造工艺
MOM 是所有动量指标的鼻祖,它的计算简单到令人发指,但却直指核心:比较今天和 N 天前的价格。
-
时空折叠 (公式) :
- 公式:
- 含义:位移距离。
- 假设 N=10。
- 如果今天股价 100,10天前是 90。。
- 如果今天股价 100,10天前是 110。。
-
加速度原理 (物理学含义) :
- 加速上涨:股价一直在涨,且 MOM 也在不断变大(+5 +10 +15)。说明油门踩到底,多头力量源源不断。
- 减速上涨 (顶背离) :股价还在创新高,但 MOM 却开始下降(+15 +10 +5)。说明车还在往前溜,但发动机已经熄火了。这时候最容易翻车(见顶)。
-
标准化困境:
- MOM 是一个绝对值指标(单位是元)。股价 1000 元的股票,MOM 可能是 100;股价 10 元的股票,MOM 可能是 1。
- 缺陷:很难在不同股票之间横向对比。
- 对策:通常配合 ROC (变动率) 使用,ROC 是 MOM 的百分比版本。
2.2 关键战机:听声辨位
1. 突破零轴:发车信号
- 兵法:MOM 由负转正,上穿 0 轴。
- 解读:多头扭转颓势,开始占据上风。这是趋势确立的第一枪。
- 对策:右侧买入。
2. 极限极值:超速预警
- 兵法:MOM 达到历史高位(如过去半年的最高点),然后掉头向下。
- 解读:物极必反。没有永远的加速,过热之后必有冷却。
- 对策:分批止盈。不要试图吃到最后一种铜板。
3. 顶背离:刹车信号
- 兵法:股价创新高,MOM 却没创新高。
- 解读:典型的减速上涨。多头力竭,空头蓄势待发。
- 对策:清仓离场,或者反手做空。
3. 实战兵书
3.1 核心阵法
策略逻辑:趋势跟随 + 极值反转。我们在 0 轴上方顺势而为,在极端位置防止反转。
import backtrader as bt
class BTStrategyMOM(bt.Strategy):
params = (
('period', 10), # MOM 周期 (标准为10)
('use_trend', True), # 趋势过滤
('trend_period', 200), # 长期均线
('stop_loss', 0.05), # 止损
)
def __init__(self):
# 1. 实例化 MOM 指标
self.mom = bt.talib.MOM(
self.data.close, timeperiod=self.params.period
)
self.trend_ma = bt.talib.SMA(self.data.close, timeperiod=self.params.trend_period)
def next(self):
if self.order: return
# 2. 止损检查
if self.position:
if self.data.close[0] < self.entry_price * (1 - self.params.stop_loss):
self.close()
return
# 3. 离场逻辑:MOM 掉头向下 (跌破 0 轴或高位回落)
# 这里简单演示跌破 0 轴离场
if self.mom[0] < 0:
self.close()
return
# 4. 入场逻辑:突破 0 轴 + 顺势
trend_ok = True
if self.params.use_trend:
trend_ok = self.data.close[0] > self.trend_ma[0]
if not self.position and trend_ok:
if self.mom[-1] < 0 and self.mom[0] > 0:
self.buy()
self.entry_price = self.data.close[0]
4. 演兵场:参数网格优化
4.1 因地制宜
- 短线突击 (Period=5) :极其敏感,适合捕捉超短线爆发(如涨停板战法)。
- 波段作战 (Period=10) :标准参数,平衡了灵敏度与稳定性,适合大多数波段策略。
- 中线趋势 (Period=20) :过滤掉短期杂波,只做大趋势的加速段。
4.2 演兵代码:沙盘推演
import backtrader as bt
# 定义参数网格
param_grid = {
'period': [5, 10, 20], # 核心变量:时间窗口
'use_trend': [True, False], # 战术选择
'stop_loss': [0.05, 0.08], # 风控
}
cerebro.optstrategy(BTStrategyMOM, **param_grid)
5. 战史复盘:经典战役
⚠️ 兵不厌诈:以下数据为历史战役复盘,未来战场瞬息万变,不可刻舟求剑。
5.1 美股战场:MCK (McKesson)
-
战役时间:2023-12-05 至 2025-12-05
-
战果:
- 📈 总收益: +32.08%
- 💰 年化收益:14.96%
- 🏆 胜率:54.55% (11战6胜)
- 📉 最大回撤:14.66%
-
战局复盘:
- 表现平平。虽然捕捉到了部分涨幅,但频繁的震荡消耗了利润。说明 MOM 在非单边暴涨行情中,容易遭遇“来回打脸”。
5.2 A股战场:603737 (中博工机)
-
战役时间:2016-06-03 至 2025-12-05 (9.5年)
-
战果:
- 📈 总收益: +67.45%
- 💰 年化收益:7.64%
- 🏆 胜率:100% (2战2胜)
- ⚠️ 交易频率:极低 (平均4.5年才出手一次)
-
战局复盘:
- 成也萧何,败也萧何。严格的趋势过滤虽然保证了 100% 的胜率,但也过滤掉了 99% 的机会。这不再是“速度表”,而变成了“老爷车”。
6. 大风策·结语
【兵法总结】
- 看速度:股价涨不是本事,涨得快才是本事。MOM 是检验多头成色的试金石。
- 看背离:当股价创新高而 MOM 却无力新高时,是主力在边打边撤。别做接盘侠。
- 看趋势:MOM 在 0 轴之上,说明多头掌握主动权;0 轴之下,休息为主。
【战局观】
MOM 是快刀,但非万能钥匙。
- 盲区 (知软肋) :它只看速度,不看路况(基本面/宏观)。在震荡市中,极易因频繁转向而被“来回打脸”。
- 破局 (懂布局) :真正的量化系统需多兵种协同——结合趋势(MA)、波动率(ATR)实现多因子共振,并辅以仓位管理(如凯利公式)。
🔔 预告:本专栏旨在打磨单兵武器。后续进阶专栏将重点讲解“排兵布阵”,揭秘多因子选股与系统化交易策略。
⚠️ 风险提示:历史回测不代表未来。实战务必严格止损,控制仓位,切勿迷信单一信号全仓梭哈。
—— 天下武功,唯快不破。
🎁 军饷与福利
关注【大风技术】,获取本策略源码。在评论区留言股票代码,还可获取:
- 🔥 精选战例:卧龙先生为你寻找该标的的最佳策略参数组合。
- 📊 呈送战报:反馈详细量化回测报告(含胜率、盈亏比、最大回撤)。
- 📈 数据支持:提供 A股/美股 历史数据,助你跨市场验证策略。
免责声明
本文仅供技术交流与学习,不构成任何投资建议。文中所涉证券代码仅作为策略回测案例,旨在演示量化分析逻辑,不代表任何个股推荐。市场有风险,投资需谨慎。 🔥 您的 [点赞] 👍 [分享] 🚀 [收藏] ❤️ ,是大风策持续行军的动力!