MACDは効くのか ― 1,350通り試したら、「ゼロラインの正体」が分かった
EA開発をしているトノチと申します。私は今まで気になっていたけれど見過ごしてきた様々な手法をAIの力を借りて分析し、良いものはEAに取り入れ、私の分析では優位性を見出せないと判断したものはこのような形で発表させてもらってます。今回はその一本です。
題材はMACD。おそらくRSIと並んで、いちばん多くの人が画面に出している指標だと思います。
先に結論です。私の測り方では、MACDを売買のサインとして使って優位性を出すことはできませんでした。短期・長期・ならしの1,350通りを試して、15分足では黒字になるものがひとつもありませんでした。
ただ、今回の本題はそこではありません。調べているうちに、MACDの代表的な使い方のうち3分の2は、前回のゴールデンクロス検証ですでに答えが出ていたと分かったことです。残った本命はダイバージェンス(価格と指標の食い違い)と、「ならし」に意味があるのかの2つでした。
1. MACDとは
名前はいかついですが、中身は単純です。期間の短い平均線と、長い平均線の「差」をグラフにしたものです。
- MACD線 = 短い平均線(12)− 長い平均線(26)
- シグナル線 = そのMACD線をさらに9本ぶんならしたもの
- 棒グラフ = MACD線 − シグナル線
▲図1:ドル円の4時間足。上段はローソク足に短い平均線(12)と長い平均線(26)を重ねたもの。下段はその差=MACD線(青)と、それをならしたシグナル線(橙)、そして2本の差である棒グラフ。①MACD線がシグナル線を上抜けた点、②MACD線がゼロを上抜けた点に印がついている。
使い方は3つ。①シグナル線とのクロス ②ゼロライン抜け ③ダイバージェンス(価格は高値を更新したのにMACDは更新していない=勢いの衰え)。定番の数字は 12・26・9 です。
2. 使い方の3分の2は、前回で答えが出ていた
②のゼロライン抜けは、「短い平均線が長い平均線を追い抜いた瞬間」とまったく同じ出来事です。MACD線は「短い−長い」なので、それがゼロを超える=短いほうが上に出た、ということでしかありません。
▲図2:上段はローソク足に短い平均線と長い平均線。短い線が長い線を上抜けた瞬間に赤い印。下段はMACD線だけを描いたもので、まったく同じ瞬間にゼロを上抜けている。同じ出来事を2通りの見せ方で見ているだけ、という図。
つまり②は、名前を変えたゴールデンクロスです。①も、その差をもう一度ならした線との比較なので同じ仲間になります。前回そのクロスを1,631通り試して、入口のサインとしては優位性を出せませんでした。まず、MACDでも同じ結果になるかを確かめました。
3. 素直に試す ― 1,350通り
短期16通り × 長期18通り(短期<長期の225組)× ならし6通り = 1,350通り。4つの時間足・7通貨・26年・コスト1回1.2pips差引後。決済は「反対のクロスが出るまで持つ」です。
| 時間足 | ①シグナル線とのクロス | ②ゼロライン抜け |
|---|---|---|
| 15分足 | 0.0%(1,350通り全滅) | 0.0% |
| 1時間足 | 3.1% | 0.0% |
| 4時間足 | 9.5% | 8.4% |
| 日足 | 42.9% | 68.0% |
15分足はコストを引く前の時点で黒字ゼロ。1時間足でも最良で1回あたり+0.24pipsで、コストの1.2pipsとほぼ同じ大きさです。日足で数字が良くなるのは腕が上がったからではなく、売買回数が激減してコストの合計が減るからでした。
4. 定番の12・26・9は特別なのか
理由があってその数字なら、周りの組み合わせより良いはずです。そこでそのマスの成績から、隣り合う8マスの平均を引きました(薬の試験で偽薬と比べるのと同じ考え方です)。
結果、4つの時間足すべてで、12/26の出っ張りは全体のばらつきに埋もれました。順位も15分足305位/1時間足720位/4時間足578位/日足578位(1,350通り中)と、きれいに真ん中でした。
上位に来た組み合わせも、①売買の向きを時間方向にずらす検査 ②時代3分割 ③平均線の作りを1つ変える、の3つで疑うと残りませんでした(作りを変えると+28.9 → −11.9 と符号が反転するものもありました)。「クロスより早い」と言われる棒グラフの傾きで入る使い方は、1時間足・4時間足・日足のすべてで大きくマイナス。素の移動平均線のクロスと直接比べても、ならしてある側が素の側に勝てませんでした(日足 +172.4 vs +121.5 pips/年)。
5. 本命 ― ダイバージェンス
MACD固有の勝負どころはここです。ただ、測ってみると弱点は当たり外れ以前のところにありました。
▲図3:ドル円の4時間足。前の高値と、それを更新した高値が線で結ばれ、下段のMACDでは逆に切り下がっている(=ダイバージェンス)。しかし「あれが高値だった」と機械が確定できるのは、そこから大きく下げたあとの赤い縦線の位置。右端に2本のものさしが並び、確定までに終わってしまった値幅(3.4×ATR)が、狙っていた利益(2×ATR)より大きいことを示している。
高値かどうかは、後からしか決まりません。実際に測ると、ダイバージェンスが確定した時点で、すでにATR(その時期の平均的な値動きの大きさ)約3個ぶん動き終わっていました(15分足9本/1時間足10本/4時間足11本)。これは狙っていた利益(2個ぶん)より大きいのです。
成績も、時間足3つ × 山谷の拾い方4通り × MACDの期間3通りのすべてでマイナス。3つの時代すべてで黒字になったものはゼロ、黒字だった通貨も7通貨中0でした。
逆に張っても(反転せず勢いが続くほうに賭ける)勝てませんでした。勝率は33%で、損切り1・利確2の損益が釣り合う勝率がちょうど33.3%です。つまりダイバージェンスが出たあとの方向は、私の測り方ではコイン投げと区別がつきませんでした。
6. 使い方を変える ― 地合いの確認に使う
前回は、同じ線を「入るきっかけ」ではなく「いま上目線か下目線かの確認」に使ったときだけ結果が変わりました。今回も試し、あわせてMACD固有の「ならし」に価値があるのかを取り出せる形にしました。同じ短期・長期で、A 単純平均のクロス/B MACDがゼロより上(=指数平均のクロス)/C MACD>シグナル線(=Bにならしを足したもの)を横並びにします。
入口=1時間足でRSI(14)が30を上抜けたら買い・70を下抜けたら売り、決済=24本後に手仕舞い(損切り・利確なし)。地合いは日足で判定し、前日までに確定した値だけを使います。フィルターなしは −0.46pips/回。
▲図4:棒グラフ。単純平均のクロス(5/25)は同じ向きだけ取ると+1.09、逆向きだけ取ると−1.78。MACDがゼロより上(5/25)は+1.68と−2.06。MACD>シグナル線(5/25/9)は+0.51と−1.02。フィルターなしの−0.46を破線で示し、ならしを足すと成績が落ちることを矢印で示している。
| 日足の条件 | 通した割合 | 1回あたり |
|---|---|---|
| なし(全部取る) | 100% | −0.46 |
| A 単純平均のクロス 5/25 | 46% | +1.09 |
| B MACDがゼロより上 5/25 | 43% | +1.68 |
| C MACD>シグナル線 5/25/9 | 36% | +0.51 |
| C MACD>シグナル線 12/26/9(定番) | 41% | +0.27 |
① 地合いの確認としては効いています。マイナスがプラスに変わりました。「売買を半分に減らしただけでは」という疑いは、同じ割合でランダムに間引いた場合と比べて潰してあります(ランダムな間引きを300通り作って比べ、本物を上回ったものはひとつもありませんでした)。逆向きだけを取るときれいに悪化します(+1.68 ⇔ −2.06)。
② ただしそれは「差」=移動平均線のクロスの手柄です。 ③そしてMACD固有のならしを足すと落ちます(+1.68 → +0.51)。12通りで見ると、ならしを足して良くなったのは4通り(33%)だけ。この33%は、入口も決済も時間足も変えた別の測り方で出た33.8%とほぼ同じでした。土俵を変えても同じ答えが出るなら、それなりに信用してよいと考えています。
ダイバージェンスをフィルターにする使い方も試しましたが、教科書どおりの向きでは −2.80〜−3.68pips/回とかえって悪化しました。逆向きに使うとプラスになるものの、時代でばらつき、山谷の拾い方をひと目盛り変えると勝ち負けが入れ替わります。私の規律では合格にできませんでした。
7. 最後に、自分のEAに入れてみた
「一般論として弱い」ことと「自分の道具に足したらどうか」は別の話なので、最後にそれも測りました。私のEAの中で「いま上目線か下目線か」を判断している部分だけをMACDのやり方に差し替え、資金の落ち込み(含み損を含む最大の下落率)を揃えたうえで最終的な増え方を比べます。
結果、定番の12/26/9に差し替えると落ち込みが5.9ポイントぶん膨らみ、同じ落ち込みに揃えると利益は約14%減(年利に直すと約0.7ポイント低下)でした。ほかの使い方に差し替えても、今のままに負けました。MACDはトノチFXには採用していません。
この結果は§6と矛盾しません。§6で効いていたのは「短い平均線と長い平均線の差」の部分で、私のEAはもともとその形の判定を持っています。同じ役割の道具を、少し性質の違うものに取り替えただけなので、良くなる理由がなかった、ということだと考えています。
8. この検証の限界
- 決済の作り方は一通りだけです(§3は反対のクロスまで、§5は損切り1・利確2、§6は24本後に手仕舞い)
- ダイバージェンスの山谷の拾い方は、私が決めた一通りだけ。手で引くときの「意味のある山」の選び方は再現できていません
- 効果の大きさは幅で見てください。§6の上乗せは組み合わせによって+0.1〜+1.7pipsとばらつき、帯としての平均は+0.4pips程度です。いちばん良い点だけを取り出すと大きく見えます
- 対象はドル絡みの主要7通貨のみ。コストは1回1.2pips固定です
9. まとめ
サインとして使う限り、1,350通りのどこにも安定した優位性を見つけられませんでした。定番の12/26/9が周りより良いという形もありませんでした。MACDの「ゼロライン抜け」は移動平均線のクロスそのもので、使い方の3分の2は前回の記事で答えが出ていたことになります。本命のダイバージェンスは、確認できた時点でATR約3個ぶん動き終わっていて、狙う利益より大きく、逆に張っても勝てませんでした。地合いの確認としては効きますが、それは「差」の手柄で、MACD固有のならしを足すと落ちました。
これは私の測り方での話です。MACDで結果を出している方を否定するものではありません。ただ「有名だから正しい」を自分のデータで確かめずに使いたくない、というだけです。
今回の収穫は、否定の中身がはっきりしたことです。MACDが弱かったのではなく、効いていたのは「2本の平均線の差」という、まったく普通の部分だった。指標を足すたびに中身を分解して、部品ごとに測る。手間はかかりますが、これをやらないと「効いている気がするもの」が積み上がっていきます。次に新しい指標を見たときも、私はまず「これは何と何の差なのか」から見るつもりです。
検証条件:7通貨(EURUSD・USDJPY・GBPUSD・USDCHF・AUDUSD・NZDUSD・USDCAD)/2000年〜2026年/15分足の価格データから1時間足・4時間足・日足を作成/判定は確定した足のみ/売買コスト1回1.2pips/§6の地合いは前日までに確定した日足のみ使用。
免責:本記事は過去データの検証に基づく開発記録であり、将来の運用成績を保証するものではありません。投資助言ではありません。売買のご判断はご自身の責任でお願いします。