この記事ではTrading View独自のプログラム言語である「Pineスクリプト」を使ったインジケーターの記述例を紹介しています。オリジナルのインジケーターやストラテジー作成の参考にしてみてください。Pineスクリプトの知識がない方でもコピペするだけで使うこともできます。この記事を参考にして頂ける場合は、必ず免責事項をご確認ください。
MACD(Moving Average Convergence Divergence )
日本語では移動平均収束拡散法といいますが、一般的にはMACD(マックディー)と呼びます。
MACDの計算には単純移動平均線(SMA)ではなく、直近の価格を重視して計算する指数移動平均線(EMA)を使用します。
MACDは「MACD線」「シグナル線」「ヒストグラム」の3つのラインから構成されます。
そして、これらのラインは以下4つのパラメーターを調整して決定します。
- Fast Length:短期の指数移動平均線算出に使用する値
- Slow Length:長期の指数移動平均線算出に使用する値
- Signal Smoothing:MACDの指数移動平均線算出に使用する値
- Source:使用する値のソース(始値、高値、安値、終値など)
MACDの使い方
1.MACDとシグナルの交差
MACDの使い方で最も一般的かつシンプルな方法は、MACDとシグナルの交差によって相場の変化を察知することです。
MACDがシグナルを上から下に突き抜ける(デッドクロス)の場合は、価格が上昇から下降に転換するサインになります。
反対にMACDがシグナルを下から上に突き抜ける(ゴールデンクロス)の場合は、価格が下降から上昇に転換するサインになります。
2つのラインが交差する位置も重要です。ゼロラインよりも上の位置でのデッドクロス、下の位置でのゴールデンクロスはより強力なサインとなります。
2.ゼロラインとの交差
MACDがゼロラインを下から上に突き抜けた場合は上昇トレンド、反対に上から下に突き抜けた場合は下降トレンドの可能性が高いことを示唆しています。
MACDは短期のEMAと長期のEMAの差から計算します。つまり、MACDとゼロラインのクロスは、短期のEMAと長期のEMAの交差(デットクロス、ゴールデンクロス)を意味しています。
MACDの計算式
MACD、シグナル、ヒストグラムは以下のように算出します。
MACD = 短期の指数移動平均線 ー 長期の指数移動平均線
シグナル = MACDの指数移動平均線
ヒストグラム = MACD ー シグナル
各指数移動平均線の期間は一般的に短期の指数移動平均線は12、長期の指数移動平均線は26、シグナルは9を使います。
MACDをPineスクリプトで書く
macd関数を使う場合
//macd関数を使ったMACDの書き方
//@version=4
study("MACD", overlay=false)
src = input(close, title="ソース")
fast_len = input(12, title="fast")
slow_len = input(26, title="slow")
signal_len = input (9, title="signal")
[MACD, signal, hist] = macd(src, fast_len, slow_len, signal_len)
plot(MACD, color=color.blue)
plot(signal, color=color.orange)
plot(hist, color=(hist_line >= 0 ? color.red : color.green), style=plot.style_columns, transp=50)
macd関数を使わない場合
//macd関数を使わないMACDの書き方
//@version=4
study("MACD", overlay=false)
src = input(close, title="ソース")
fast_len = input(12, title="fast")
slow_len = input(26, title="slow")
signal_len = input (9, title="signal")
MACD = ema(src, fast_len) - ema(src, slow_len)
signal = ema(MACD, signal_len)
hist = MACD - signal
plot(MACD, color=color.blue)
plot(signal, color=color.orange)
plot(hist, color=(hist >= 0 ? color.red : color.green), style=plot.style_columns, transp=50)
Pineスクリプト入門の記事では、プログラミング初心者でも理解できるように一つづつ丁寧に解説しています。Pineスクリプトを触ったことがない方でもPineスクリプト入門#1から順にみていただければ、バックテストやインジケーターのコードも作成することができます。興味のある方は是非、他の記事もご覧ください。
アカウントを作成する
おすすめチャートツール:Trading View
- 高性能チャートツール
- オリジナルのインジケーターが作成できる
- FX、仮想通貨、株、ETF、コモディティなど国内外問わず様々な銘柄に対応
コメント