移動平均クロスEAの作り方!ノーコード自作手順とだまし対策

移動平均クロスEAを自作したいものの、「ゴールデンクロスをどう条件にすればいい?」「コードを書けなくても作れる?」と迷っていませんか。
結論からいうと、短期MAと長期MAの位置関係を前後の確定足で比較すれば、移動平均クロスはノーコードでもEA化できます。ただし、クロス条件だけではレンジ相場のだましや連続エントリーが起きやすいため、損切り・利確、スプレッド制限、保有数制限まで一緒に決めることが大切です。
この記事では、移動平均クロスEAの条件設計からNoCode EA Studioで組み立てる手順、バックテストとデモ検証までを順番に解説します。特定の設定で利益を保証する内容ではなく、自分のルールを再現可能な形にして検証するための実践ガイドです。
- 移動平均クロスを再現できる条件式がわかる
- 確定足と保有数制限でだましを抑えられる
- ノーコードでEAを組む順番がわかる
- バックテストからデモ検証まで進められる
移動平均クロスEAの条件設計

売買条件を数式化する
移動平均クロスEAでは、チャートを見て「交差した気がする」と判断するのではなく、2本のMAの位置関係が変わったことを条件にします。買いは短期MAが長期MAを下から上へ抜けた時、売りは上から下へ抜けた時です。
確定足で買いを判定するなら、2本前の足で「短期MAが長期MA以下」、1本前の足で「短期MAが長期MAより上」の2条件を同時に満たした時だけエントリーします。売りは不等号を逆にします。
- 買い前条件:2本前の短期MA ≦ 長期MA
- 買い成立:1本前の短期MA > 長期MA
- 売り前条件:2本前の短期MA ≧ 長期MA
- 売り成立:1本前の短期MA < 長期MA
MetaTrader 5の公式リファレンスでも、移動平均を扱うiMAには期間、シフト、平滑化方法、適用価格などの指定項目があります。ノーコードでも、どのMAをどの足で比較するかを明確にする考え方は同じです。
確定足でだましを減らす
形成中のローソク足は、価格が動くたびにMAの値も変わります。一度はクロスしても、足が閉じる前に元の位置関係へ戻ることがあるため、現在足だけで判定すると売買回数が増えやすくなります。
初心者が最初のEAを作るなら、1本前と2本前の確定済みデータを使う設定がわかりやすいです。反応は1本分遅くなりますが、途中で消えるクロスを拾いにくくなり、バックテストとチャートの照合もしやすくなります。
早い反応を狙う代わりに、ティックごとの再判定、同一足での再エントリー、スプレッド拡大まで確認が必要です。確定足版と別のEAとして比較しましょう。
確定足にすれば、すべてのだましがなくなるわけではありません。レンジ相場では確定後も短期MAと長期MAが何度も入れ替わるため、保有数制限や時間帯フィルタ、損切りを組み合わせて損失を管理します。
MA期間と決済を分けて決める
短期MAと長期MAの期間差が小さいほど反応は速くなりますが、交差回数も増えます。差を広げると大きな流れを追いやすい一方、エントリーが遅くなりやすいです。5×20や20×50などはあくまで検証開始用の例で、最適値ではありません。
| 決める項目 | 基本形 | 確認する弱点 |
|---|---|---|
| MA期間 | 短期と長期を1組 | 反応速度と交差回数 |
| MA種類 | SMAまたはEMA | 価格への追従差 |
| 損切り | 固定幅から検証 | 1回の損失額 |
| 利確 | 固定幅か反対クロス | 利益を戻す大きさ |
エントリーと決済は別の条件として考えます。反対クロスまで保有すると大きなトレンドを追いやすい反面、含み益を戻すことがあります。固定利確は比較しやすい一方、強いトレンドを途中で降りることがあります。
連続エントリーを防ぐ
クロス後に条件が成立したままだと、EAの組み方によっては同じ方向へ何度も注文することがあります。買いポジションを保有中は新しい買いを許可しない、1本の足では1回だけ判定する、といった制限が必要です。
- 保有ポジションを確認せず毎ティック注文する
- 同じ足で決済と再エントリーを繰り返す
- スプレッドが広い時も無条件で発注する
- 損失上限や停止条件を決めずに動かし続ける
基本形では、同時ポジション1つ、同一足1回、最大スプレッド、固定損切りの4つを入れると挙動を確認しやすくなります。複数ポジションやナンピンを試すなら、まず単一ポジション版の結果を基準にして別ロジックとして検証しましょう。
移動平均クロスEAをノーコード作成

NoCode EA Studioで組む
NoCode EA Studioでは、条件ブロックをつないで売買ロジックを作れます。いきなり画面を触るより、買い、売り、決済、停止の4種類にルールを分けてから入力すると迷いにくいです。
通貨ペア、時間足、短期MA、長期MA、SMAかEMAかを1組に絞ります。
2本前と1本前の位置関係を比較し、上抜けと下抜けを別条件にします。
上抜けを買い、下抜けを売りへつなぎ、確定足でのみ判定します。
損切り、利確、スプレッド制限、同時ポジション数を設定します。
MT4用またはMT5用のEAを用意し、リアル口座の前にバックテストへ進みます。
最初のEAは機能を増やしすぎず、移動平均クロスと基本のリスク制限だけにします。基準形を保存しておけば、MA期間や決済方法を変えた版と同じ条件で比較できます。
今すぐEA作成を試したい方は、NoCode EA Studioのアプリを開いて無料で触れます。
コード自作と比較する
MQLで自作すれば細かい注文処理まで自由に設計できますが、文法、コンパイル、エラー処理、保守も必要です。ノーコードは対応範囲に制約がある一方、売買ルールの整理と検証へ早く移りやすいのが利点です。
| 作り方 | 向いている人 | 主な注意点 |
|---|---|---|
| ノーコード | まずロジックを検証したい人 | 対応できる条件を確認する |
| MQL自作 | 細部まで制御したい人 | 学習と保守が必要 |
| 外注 | 仕様が固まっている人 | 修正費用と認識差に注意 |
移動平均クロスは、2本の指標比較と売買アクションで基本形を作れるため、ノーコードと相性のよい題材です。画面上で条件を確認できると、コードの不具合ではなくロジック自体の弱点に集中できます。
EAを自作したいなら
NoCode EA Studioなら、MQLの知識なしでMT4・MT5対応の自動売買ロジックをブラウザ上で作成できます。
EA自作全体の流れから確認したい場合は、ハブ記事のEA自作を初心者がノーコードで始める手順も参考にしてください。
バックテストで弱点を探す
EAを作ったら、リアル口座で動かす前にバックテストを行います。純利益だけで判断せず、最大ドローダウン、取引回数、連敗、月別損益、平均利益と平均損失のバランスを確認します。
移動平均クロスはトレンド相場で利益が伸びても、レンジ相場で小さな損失を重ねることがあります。上昇、下降、レンジ、急変を含む期間で、どの相場に弱いのかを先に見つけましょう。

- 現実的なスプレッドと取引コストを入れる
- 取引回数が少なすぎないか確認する
- 利益が一部期間だけに偏っていないか見る
- 最大ドローダウンが許容範囲か決める
レポートの各指標をどう読むか迷う場合は、MT4 EAバックテスト結果の見方で確認できます。
改善は1項目ずつ比べる
バックテストが悪かった時に、MA期間、損切り、利確、時間帯フィルタを同時に変えると、何が効いたのか分からなくなります。基準EAを残し、1回につき1項目だけ変えて同じ通貨ペア、時間足、期間で比較します。
MA期間 → 損切り・利確 → スプレッド制限 → 時間帯フィルタ → 上位足フィルタの順に、1つずつ比較します。
最大利益が下がっても、ドローダウンや連敗が小さくなり、複数期間で似た傾向が出るなら改善と判断できる場合があります。最大値を一点だけ探すのではなく、近い設定でも結果が極端に崩れない範囲を探すのが大切です。
デモ検証まで進める
バックテストで想定外の動きがなければ、次はデモ口座でフォワードテストします。リアルタイムのスプレッド、約定、稼働時間、通信環境は、過去データだけでは完全に再現できません。
- 想定した確定足でエントリーしている
- 同じ足で注文を繰り返していない
- 損切り・利確・停止条件が動いている
- 再起動後も設定と保有管理が崩れない
デモでは利益額より、EAが仕様通りに動くかを確認します。問題が出たら、ロジック、設定、環境のどこに原因があるかを切り分け、修正後はバックテストからやり直します。
移動平均クロスEAのまとめ
移動平均クロスEAは、短期MAと長期MAの位置関係を前後の確定足で比較すれば、ノーコードでも基本形を作れます。大切なのは、クロス条件だけで終わらせず、決済、保有数、スプレッド、停止条件まで仕様に含めることです。
- 1本前と2本前でクロスを判定する
- エントリーと決済を別条件で設計する
- 基準EAを残して1項目ずつ改善する
- バックテスト後はデモで動作確認する
最初から万能なEAを目指す必要はありません。まずは説明できるほどシンプルな移動平均クロスEAを1本作り、弱点を数字で確認しながら必要な条件だけを足していきましょう。
