Pharos
TAMomentum

TA.MOM()

动量指标 (Momentum)

当前价格与 N 周期前价格的差值,直接衡量价格变化动能。

语法

python
TA.MOM(data, timeperiod=10)

参数

参数名类型必选默认值说明
dataany-价格数据数组
timeperiodany-时间周期,默认 10

返回值

返回动量值数组(价格差值)

计算方法

MOM = Close[t] - Close[t - n]

信号解读

  • MOM > 0: 价格上升动能
  • MOM < 0: 价格下降动能
  • MOM 穿越 0: 趋势可能反转
  • MOM 扩大: 动能增强
  • MOM 缩小: 动能减弱

基础示例

python
def main():
    records = exchange.GetRecords()
    closes = [r['Close'] for r in records]
    
    mom = TA.MOM(closes, 10)
    
    Log(f"动量值: {mom[-1]:.2f}")
    
    if mom[-1] > 0:
        Log("价格上升动能")
    else:
        Log("价格下降动能")
    
    # 穿越零线
    if mom[-1] > 0 and mom[-2] <= 0:
        Log("动量指标上穿零线,买入信号")
    elif mom[-1] < 0 and mom[-2] >= 0:
        Log("动量指标下穿零线,卖出信号")

高级应用

1. 动量加速度

python
def main():
    records = exchange.GetRecords()
    closes = [r['Close'] for r in records]
    
    mom = TA.MOM(closes, 10)
    
    # 动能变化率(加速度)
    mom_change = mom[-1] - mom[-2]
    
    if mom[-1] > 0 and mom_change > 0:
        Log("上升动能加速")
    elif mom[-1] > 0 and mom_change < 0:
        Log("上升动能减速,可能见顶")
    elif mom[-1] < 0 and mom_change < 0:
        Log("下降动能加速")
    elif mom[-1] < 0 and mom_change > 0:
        Log("下降动能减速,可能见底")

2. 动量背离

python
def detect_mom_divergence(prices, mom_values, period=10):
    """检测动量背离"""
    if len(prices) < period or len(mom_values) < period:
        return None
    
    # 顶背离
    if (prices[-1] > max(prices[-period:-1]) and 
        mom_values[-1] < max(mom_values[-period:-1])):
        return "顶背离"
    
    # 底背离
    if (prices[-1] < min(prices[-period:-1]) and 
        mom_values[-1] > min(mom_values[-period:-1])):
        return "底背离"
    
    return None

def main():
    records = exchange.GetRecords()
    closes = [r['Close'] for r in records]
    
    mom = TA.MOM(closes, 10)
    divergence = detect_mom_divergence(closes, mom)
    
    if divergence:
        Log(f"动量指标{divergence}")

参数优化建议

周期推荐参数特点
短线MOM(5)敏感
标准MOM(10)平衡
长线MOM(20)稳定

与其他指标配合

MOM + MA

python
mom = TA.MOM(closes, 10)
ma = TA.MA(closes, 20)

# 动量确认趋势
if mom[-1] > 0 and closes[-1] > ma[-1]:
    Log("上升趋势 + 正动量")

注意事项

⚠️ 重要提醒

  1. 绝对值: MOM 是绝对价格差,不同价格水平不可比
  2. 配合使用: 建议与 ROC 等百分比指标配合

相关指标

返回目录

← 返回动量指标目录