株価のMACDとは

MACDの基本概念

MACD(Moving Average Convergence Divergence)は、移動平均線の収束と発散を元にしたテクニカル指標です。短期と長期の指数平滑移動平均(EMA)との差を利用し、トレンドの転換点や勢いを判断します。

計算方法

主な計算ステップは次の通りです。

  • 短期EMA(例: 12日)と長期EMA(例: 26日)を算出する。
  • 短期EMAから長期EMAを引き、MACDラインを得る。
  • MACDラインの9日EMAをシグナルラインとして描く。
  • MACDヒストグラムは、MACDラインとシグナルラインの差を棒グラフで表す。

活用例

以下は一般的なトレードシグナルです。

  • ゴールデンクロス:MACDラインがシグナルラインを下から上へ抜くと、買いサインとみなす。
  • デッドクロス:逆に上から下へ抜くと、売りサインとみなす。
  • ヒストグラムが0付近で拡大すれば、トレンドが強まっていると判断できる。

注意点

MACDは遅行指標であるため、相場が急変するとシグナルが遅れることがあります。したがって、他のテクニカル指標やファンダメンタルと組み合わせて使用することが推奨されます。

// PythonでMACDを計算する簡易例
import pandas as pd

def EMA(series, span):
    return series.ewm(span=span, adjust=False).mean()

def MACD(df, short=12, long=26, signal=9):
    df['EMA_short'] = EMA(df['Close'], short)
    df['EMA_long'] = EMA(df['Close'], long)
    df['MACD'] = df['EMA_short'] - df['EMA_long']
    df['Signal'] = EMA(df['MACD'], signal)
    df['Hist'] = df['MACD'] - df['Signal']
    return df

# 使用例
# data = pd.read_csv('stock.csv')
# result = MACD(data)