OptiNod アカデミー
移動平均クロス:システムがうまくいかない理由
移動平均クロスはエントリーシグナルとして使うには遅く、レンジ相場で最も多くシグナルを出し、最もよく外れます。クロスは方向フィルターとして使い、エントリーは別に判断します。
移動平均クロスのシステムは、最も広く知られている売買ルールです。短期移動平均線(例:50日線)が長期移動平均線(例:200日線)を上抜ければゴールデンクロスとして買い、下抜ければデッドクロスとして売ります。
ルールが単純で、チャート上でも見えやすいため、実行しやすいのが特徴です。一方向に長く伸びるトレンドに乗れれば、2本の線が離れたまま長く推移し、大きな利益につながります。そのため、長いトレンド相場を経験した資産ほど、このシステムの過去成績はよく見えます。
しかし移動平均は、過去の価格の平均なので、常に価格に遅れます。クロスが発生した時点では、すでにトレンドがかなり進んでいることが多いのです。さらに価格がレンジ内を行き来すると、2本の線が絡み合い、短い間隔でクロスが繰り返されます。
クロスは、トレンドを遅れて確認するシグナルです。これをエントリータイミングに使うと、トレンド相場では遅れて入り、レンジ相場ではダマシに悩まされます。クロスの使い方を変え、エントリーは別に取りつつ方向を絞るフィルターとして使えば、この2つの弱点を避けやすくなります。

クロスはトレンドを遅れて確認する
移動平均は、過去数日から数百日分の終値を平均した値です。平均という性質上、価格が反転してから方向を変えますし、2本の平均線が交差するまでにはさらに時間がかかります。
2023年2月7日、BTCの50日線が200日線を上抜け、ゴールデンクロスが発生しました。そのときのBTC価格は23,240ドルでした。しかしBTCは、2022年11月に15,500ドル付近ですでに底を打っていました。ゴールデンクロスがシグナルを出した時点では、底値からすでに50%近く上昇していたのです。
これがクロスの本質です。トレンドが始まってかなり時間が経ってから、ようやくトレンドが始まったと知らせます。EMAの記事で見たように、2本の線が交差する前に、2本の線の角度変化がトレンド転換を先に示します。クロスは、その過程の結果にすぎません。
期間が長い線ほど、遅れは大きくなります。200日線は200日分の平均なので、方向を変えるのに最も時間がかかり、50日線との交差もそれだけ遅くなります。速いシグナルを求めて短い線を使うと、今度は偽のクロスが増えます。遅れとダマシは、一方を減らせばもう一方が増えるトレードオフです。
レンジ相場で最もダマシが多い
クロスのより大きな問題は、レンジ相場です。価格が一定の範囲を行き来すると、短期線と長期線が近づき、頻繁に交差します。そのたびにゴールデンクロスやデッドクロスのシグナルが出ますが、トレンドがないため、毎回のようにダマシ(Whipsaw)で終わります。
2023年9月12日、BTCでデッドクロスが発生しました。50日線が200日線を下抜け、価格は25,840ドルでした。シグナルどおりなら、売るかショートを建てる場面です。しかし、まさにその頃が、その年最大の上昇の出発点でした。
BTCは10月に35,000ドルまで上昇し、50日線は再び200日線を上抜け、10月30日に34,475ドルでゴールデンクロスが発生しました。デッドクロスに従って売った人は、7週間後に33%高い水準で買い直せというシグナルを受け取ったことになります。クロスは、レンジの終わり、つまりトレンドの始まりで最もよく外れます。
デッドクロスが底値付近で出るのには理由があります。50日線は直近数か月の下落と横ばいを平均した値なので、価格が反転し始めた直後でも、まだ下向きのままです。そのため、価格が底を打って上がり始めるちょうどその頃に、デッドクロスが完成することがよくあります。
2024年にも同じことが繰り返されました。8月10日、BTCでは60,924ドルでデッドクロスが発生しましたが、その後、価格は崩れずに横ばいとなり、再び上昇しました。10月30日には72,345ドルでゴールデンクロスが発生しました。デッドクロスに従った人は、今回も19%高い水準で買い戻せというシグナルを受け取ったことになります。
レンジ相場では、このような対になったダマシは一度では終わりません。価格が範囲内を行き来するあいだ、デッドクロスとゴールデンクロスが交互に出て、そのたびに小さな損失が積み上がります。シグナルをそのまま売買に使うと、トレンドが来る前に口座残高が先に削られます。

ゴールデンクロスの本当の使い道と限界
クロスに使い道がないわけではありません。ゴールデンクロス後の上昇、デッドクロス後の下落が長く続くトレンド相場では、2本の線が離れたまま推移し、トレンド中の方向を一方向に保ってくれます。ただし、その価値は現在の大きな流れがどちら向きかを示す点にあります。正確なエントリータイミングは別の方法で取ります。
クロスのシグナルだけを見て売買するシステムは、トレンド相場で得た利益をレンジ相場のダマシによる損失で削ってしまいます。1年の中でトレンド相場は短く、レンジ相場は長いため、シグナル数で見ると、外れたシグナルのほうが当たったシグナルよりはるかに多くなります。そのため、クロスを単独のエントリーシグナルとして使うと、期待値は出にくくなります。要するに、クロスはトレンドがあるときだけ機能し、トレンドがないときに最もよく外れます。つまり、クロスを使うには、まず今トレンドがあるかどうかを見極める必要があります。
バックテストでクロスがよく見える理由
移動平均クロスのバックテストを長期間で回すと、結果がもっともらしく見えることがよくあります。特に、ある資産が長く上昇した局面では、ゴールデンクロスで買ってデッドクロスで売るという単純なルールでも大きな利益が出ます。
しかし、その利益の大半はシステムの実力から生まれたものではありません。その期間が上昇相場だったという事実から生まれています。同じルールをレンジが長い期間や下落相場に当てると、ダマシで利益を削られます。ある市場の特定の性格にだけ合った結果を、システムの実力だと勘違いしているのです。
だからこそ、クロスシステムは異なる市場局面を含む長い期間で、手数料とスリッページを反映して検証しなければなりません。上昇相場だけを切り出したバックテストなら、どんな単純なルールでもよく見えます。バックテストは、システムが複数の市場で耐えられるかを見るための道具です。ある一期間の利益を誇るために使うと、結果を読み違えます。
一つの期間の利益とあわせて、パラメータや検証期間を変えても結果が持ちこたえるかを見ることで、そのシステムの本当の実力を判断できます。
どの期間を使うべきか
クロスに正解となる期間はありません。50/200は大きなトレンドを、20/50は中期トレンドを、9/21は短期の流れを見ます。期間が短いほどシグナルは速くなりますがダマシが増え、長いほどダマシは減りますが遅くなります。これは自分の保有期間に合う値を決める問題です。
ここでよくある落とし穴が、期間の最適化です。過去データを回して、最も収益がよかった組み合わせを探すことです。しかし、ある期間で最もよかった設定は、その期間に合わせ込まれた値です。2023年のBTCに最も合った組み合わせが、2024年にも最も合う理由はありません。過去に合わせ込んだ期間ほど、将来では外れやすくなります。
そのため、期間は自分の売買サイクルに合わせてシンプルに決め、そのまま使います。最適化で選ぶことは避けます。SMAとEMAでは、EMAのほうが直近価格に敏感なのでシグナルはやや速く、SMAはより滑らかですが遅れます。どちらを使うにしても、期間を頻繁に変えないことが重要です。
クロスを方向フィルターとして使う
クロスを方向フィルターとして使い、エントリーは別に取ると、2つの弱点は小さくなります。50日線が200日線の上にあるあいだは買いだけを見て、下にあるあいだは売りだけを見ます。実際のエントリーは値動きの構造から判断します。ゴールデンクロスの状態で、価格が50日線や直前の押し目まで下がり、そこから反発する場面がエントリー候補です。
こうすれば、クロスの遅れは問題になりません。方向だけを絞り、エントリーは押し目で取るため、トレンド初期からよりよい価格で入れます。レンジ相場ではADXが低く、トレンド条件を満たさないため、エントリー自体を見送れます。
方向フィルターとして使う場合、50日線はエントリーポイントも示してくれます。ゴールデンクロス状態の上昇トレンドでは、価格が50日線付近まで押してから反発することがよくあります。50日線が動的なサポートとして機能するのです。クロスで方向を決めたあと、50日線までの押し目をエントリーポイントにすれば、トレンドの中でより有利な価格を得られます。
デッドクロスが出たら、保有している買いポジションの方向根拠が失われたということなので、新規の買いを止めます。エントリーポイントは値動きの構造から決めますが、買いだけを見るか、売りだけを見るかはクロスが決めます。遅れて来るシグナルに、遅れないエントリーを組み合わせるということです。

ダマシを減らす3つの方法
クロスをそのまま使う場合でも、ダマシを減らす方法はあります。
- より長い移動平均:50/200は9/21より交差が少なく、偽シグナルも減ります。その代わり、より遅くなります。
- トレンドフィルター:ADXが一定値(例:20)を上回るときのクロスだけを採用します。レンジ相場のクロスを大半フィルタリングできます。
- 距離と傾きの確認:2本の線がほとんど重なった状態で交差した場合は見送り、明確に広がりながら同じ方向へ傾いているときだけ採用します。
3つともシグナル数を減らしてダマシを抑える方法ですが、その分シグナルが遅くなることは受け入れる必要があります。どの方法を使っても、クロスはトレンドについていく道具です。トレンドの始まりは当てられません。始まりを当てようとすると、レンジ相場の偽シグナルを避けられません。
クロスをエントリーに活用する方法
- [ ] エントリー条件:日足の50日線が200日線の上にあり(ゴールデンクロス状態)、ADXが20以上。価格が50日線付近まで押したあと、長い下ヒゲなどの反発シグナルが出る。
- [ ] エントリー:反発した足の終値で買う。
- [ ] 損切り:押し目の安値の下に置く。
- [ ] 無効化:50日線が200日線を再び下回ったら、方向判断をいったん撤回して手仕舞う。

移動平均クロスは単純だからこそ魅力的ですが、その単純さゆえにレンジ相場で何度も痛めつけられます。クロスは方向を絞るフィルターとして置き、エントリーは値動きの構造から別に判断する。この一つの発想転換が、最もありふれたシステムを実用に耐える道具へと変えます。単純なルールほど、どこで機能し、どこで崩れるのかを理解して使う必要があります。