移動平均クロスEAをノーコード自作する方法

移動平均クロスEAを自作したいと思っても、「MQLを書けないと無理なのかな」「ゴールデンクロスとデッドクロスをどうEA化すればいいのかな」と迷いやすいですよね。
移動平均線クロスは、短期線と長期線の交差で売買判断を作れるため、EA自作の入口としてかなり扱いやすいロジックです。ただし、単純にクロスした瞬間だけで売買すると、レンジ相場のだましや連続エントリーで負けやすくなります。
この記事では、移動平均クロスEAの考え方から、ノーコードで設定する手順、バックテストで見るべきポイントまで順番に整理します。プログラミングより先に、売買ルールをきれいに言語化したい人向けの内容です。
- 移動平均クロスEAの売買条件を整理できる
- だましを減らすための確定足判定がわかる
- ノーコードでEAを自作する流れがわかる
- バックテストで見るべきリスクを確認できる
移動平均クロスEAの基本

クロスの売買条件を決める
移動平均クロスEAで最初に決めるのは、どのクロスを売買サインとして扱うかです。一般的には、短期移動平均線が長期移動平均線を下から上へ抜けたら買い、上から下へ抜けたら売り、という形にします。ここまではシンプルですが、EAでは「見た目でなんとなくクロスした」ではなく、数値条件として再現できる形にする必要があります。
たとえば、1本前の足では短期MAが長期MA以下で、現在確定した足では短期MAが長期MAより上になったら買い、というように前後の状態を比較します。売りの場合はその逆です。この考え方にすると、チャート上の線が重なって見えるだけの場面を避けやすくなります。
- 買い条件は短期MAが長期MAを下から上へ抜けた時
- 売り条件は短期MAが長期MAを上から下へ抜けた時
- 決済条件を反対クロスにするか固定利確にするかを分けて考える
ここで大事なのは、エントリーと決済を同じクロスで考えすぎないことです。反対クロスで決済する設計はわかりやすい一方、トレンドが崩れてから決済になりやすく、含み益を大きく削ることもあります。固定の損切り・利確を入れるのか、反対クロスまで持つのか、トレーリングを併用するのかで、EAの性格はかなり変わります。
手動トレードなら裁量で見送れる場面も、EAは条件に合えば淡々と動きます。だからこそ、ルールを一文で説明できるくらいまで削ることが重要です。私は最初から複雑なフィルタを足すより、まず「短期MAと長期MAのクロスだけで何が起きるか」を見てから改善する方が失敗しにくいかなと思います。
確定足でだましを減らす
移動平均クロスEAでよくある失敗が、足が確定する前の一時的なクロスでエントリーしてしまうことです。ローソク足が形成中の段階では、価格が少し戻るだけで短期MAと長期MAの位置関係が変わります。その瞬間だけクロスしたように見えても、足が確定した時にはクロスしていない、ということが普通に起きます。
そのため、初心者がEA化するなら「確定足で判定する」設定を基本にした方が安全です。具体的には、現在進行中の足ではなく、1本前と2本前の移動平均線を比較します。エントリーは少し遅れますが、クロスが消えるタイプのだましを減らせます。
未確定足のクロスは反応が速い反面、レンジ相場では売買回数が増えやすくなります。最初の検証では、確定足判定を基準にして比較するのがおすすめです。
もちろん、スキャルピングのように早さを重視する戦略では未確定足を使う考え方もあります。ただ、その場合はスプレッド、約定遅延、VPS環境、連続エントリー制限までセットで見ないと、バックテストだけ良く見えるEAになりがちです。移動平均クロスは反応が遅れやすい指標なので、急いで入るメリットと、だましを拾うデメリットを必ず比較したいところですね。
ノーコードで作る場合も、判定に使う足を選べるかどうかは重要です。「現在足のクロス」なのか「確定足のクロス」なのかを曖昧にしたまま作ると、同じロジック名でもまったく別のEAになります。作成画面で条件を組む前に、どの足の値を参照するのかをメモしておくと、あとで検証結果を見直しやすくなります。
慣れてきたら未確定足版も別に作り、同じ期間で比較すると判断しやすいです。どちらが正しいかではなく、自分の時間足と通貨ペアでどちらの損益変動が受け入れやすいかを見るのが大切です。
MA期間と種類を選ぶ
移動平均クロスEAの成績は、短期MAと長期MAの期間によって大きく変わります。よく使われる組み合わせには、短期5・長期20、短期10・長期50、短期20・長期75などがあります。ただし、どれが絶対に正解というより、通貨ペア、時間足、トレード頻度に合わせて検証するものだと考えた方が現実的です。
MAの種類も見落とせません。SMAは動きがなめらかで遅め、EMAは直近価格に反応しやすく早め、という違いがあります。MQL5の公式リファレンスでも、移動平均を扱う関数としてiMAが用意されており、期間や平滑化の種類を指定して使う考え方が基本になります。ノーコードでも、裏側ではこのような指標条件を視覚的に設定しているイメージです。
| 組み合わせ | 特徴 | 注意点 |
|---|---|---|
| 5×20 | 反応が速い | だましが増えやすい |
| 10×50 | バランス型 | 相場によって待ち時間が出る |
| 20×75 | 大きな流れを見やすい | エントリーが遅れやすい |
最初は、短期と長期の差を極端に狭くしすぎない方が扱いやすいです。短期5と長期7のように近すぎる設定だと、線が頻繁に交差して売買回数が増えやすくなります。逆に差が大きすぎると、トレンドのかなり後半でサインが出ることもあります。
また、最適化をやりすぎると、過去データにだけ合った設定になりやすいです。移動平均クロスEAはシンプルなぶん、期間を少し変えるだけで結果が大きく揺れます。最大利益だけを見るのではなく、近い期間でも似た傾向が出ているかを見ると、過剰最適化を避けやすくなります。パラメーター調整の考え方は、MT4 EAパラメーター最適化の手順でも整理しています。
損切りと利確を先に決める
移動平均クロスだけでEAを作ると、エントリー条件に意識が寄りがちです。ただ、実際の損益を左右するのは、むしろ決済ルールです。買いで入ったあとに反対クロスまで待つのか、一定pipsで利確するのか、損切りだけ固定して利益は伸ばすのかで、同じエントリー条件でもまったく違う成績になります。
初心者の場合は、まず固定pipsの損切りと利確を入れると検証しやすいです。たとえば、損切り20pips、利確40pipsのようにリスクリワードを決めておくと、勝率が低くても利益が残る可能性があります。逆に損切りが深く利確が浅い設定では、勝率が高くても一度の負けで崩れることがあります。
- 損切りなしで反対クロスだけを待つ
- スプレッドを考えずに短い利確幅を設定する
- 勝率だけを見て最大ドローダウンを確認しない
ATRを使って相場のボラティリティに合わせる方法もあります。値動きが大きい時は損切り幅を広げ、値動きが小さい時は狭める考え方ですね。ただし、ATRまで入れるとロジックが少し複雑になるため、最初の1本目では固定pipsで作り、あとからATR版を別EAとして比較する方が混乱しにくいと思います。
EAは感情で損切りを遅らせないのが強みですが、最初から危険なルールを入れると、その危険なルールを正確に実行してしまいます。だから、エントリー条件より先に「どこで負けを認めるか」を決めるのが大事です。資金管理やロット設定も含めて、1回の負けが口座全体に与える影響まで見ておきたいですね。
固定pipsを使う時も、通貨ペアごとの値幅は必ず確認します。同じ20pipsでも、ドル円の5分足とゴールドの15分足では意味が違います。バックテストでは、平均利益と平均損失のバランスも一緒に見ると判断しやすいです。
コード自作との違いを見る
移動平均クロスEAはMQLでも自作しやすい題材ですが、初心者がいきなりコードから始めると、売買ロジック以外の部分でつまずきやすいです。注文処理、エラー処理、マジックナンバー、スプレッド制限、同時ポジション制限など、実運用に必要な要素が意外と多いからです。
ノーコードで作るメリットは、まず売買ルールの検証に集中できることです。短期MA、長期MA、クロス方向、決済条件を画面上で組み合わせながら、どの条件が効いているかを確認できます。コードの書き間違いではなく、戦略そのものの良し悪しを見やすくなるのが大きいですね。
| 作り方 | 向いている人 | 注意点 |
|---|---|---|
| コード自作 | 細かく制御したい人 | MQLの学習と保守が必要 |
| ノーコード | まず検証したい人 | ツールの対応範囲を確認する |
| 外注 | 完成品を急ぐ人 | 仕様変更のたびに費用が出やすい |
一方で、ノーコードにも限界はあります。かなり特殊なフィルタや複雑な資金管理を入れたい場合は、コード編集が必要になることもあります。なので、最初はノーコードで土台を作り、検証して伸ばしたいロジックが見つかったら、必要に応じてコード化を考える流れが現実的です。
EAを自作したいなら
NoCode EA Studioなら、MQLの知識なしでMT4・MT5対応の自動売買ロジックをブラウザ上で作成できます。
今回のような移動平均クロスEAは、ノーコードとの相性がかなり良い部類です。条件が明確で、チャート上でも確認しやすく、バックテストで改善点を探しやすいからです。EA自作全体の流れを先に押さえたい場合は、EA自作を初心者がノーコードで始める手順も参考になります。
まずノーコードで形にしておくと、あとでコード化を依頼する場合にも仕様を伝えやすくなります。「どの条件で入り、どの条件で出るか」が画面と検証結果で残るため、認識違いを減らせます。
移動平均クロスEAをノーコード自作

NoCode EA Studioで作る
NoCode EA Studioで移動平均クロスEAを作る場合は、最初にEA名、対象の通貨ペア、時間足を決めます。ここで迷ったら、まずは自分が普段見ている通貨ペアと時間足で始めるのが無難です。いきなり複数通貨に広げると、どの条件が効いたのか判断しにくくなります。
次に、インジケーター条件として移動平均線を2本用意します。短期MAと長期MAの期間、種類、適用価格を設定し、短期MAが長期MAを上抜けた時に買い、下抜けた時に売り、という形にします。この段階では、複雑なフィルタを入れすぎない方が検証しやすいです。
検証したい通貨ペアと時間足を1つに絞り、あとから比較できる名前を付けます。
短期MAと長期MAの期間・種類・適用価格を決めます。
買い・売り・決済の条件を分けて設定し、過剰な重複エントリーを防ぎます。
画面上で条件を組めると、EA作成がかなり身近になります。ただし、ノーコードでも「何をしたいか」が曖昧なままだと、結局使いにくいEAになります。作成前に、買い条件、売り条件、決済条件、停止条件を短く書き出しておくと、設定ミスを減らせます。
特に、買いと売りを両方入れるのか、買い専用・売り専用にするのかは先に決めたいポイントです。移動平均クロスはトレンドフォロー型なので、通貨ペアや時間足によっては片方向だけの方が安定する場合もあります。最初から万能EAを目指すより、用途を絞った方が改善しやすいですね。
今すぐEA作成を試したい方は、NoCode EA Studioのアプリを開いて無料で触れます。
作成画面で迷ったら、最初のEAは「基本形」として保存し、改善版は別名で残すのがおすすめです。上書きで変えてしまうと、どの設定が良かったのか戻って確認しにくくなります。
エントリー条件を設定する
エントリー条件では、短期MAが長期MAを上抜けたら買い、下抜けたら売り、という基本を設定します。ここで重要なのは、同じ方向のポジションを何度も持たないようにすることです。すでに買いポジションがある時は新規買いをしない、といった条件を入れないと、クロス後の同じトレンドでポジションが増えすぎることがあります。
また、スプレッド制限も入れておきたいです。移動平均クロスEAは、サインが出たら機械的に注文します。スプレッドが広がっている早朝や重要指標前に入ると、バックテストでは見えにくいコストで不利になることがあります。
- 同方向ポジションがある時は追加しない
- スプレッドが広い時は新規エントリーしない
- 確定足でクロスした時だけエントリーする
- 買い専用や売り専用の検証も分けて行う
時間帯フィルタも候補になります。たとえば、流動性が低い時間帯を避ける、経済指標の前後は止める、週末の持ち越しを避ける、といった条件です。ただし、最初から全部入れると、どのフィルタが効果を出したのか分かりにくくなります。まずは基本のクロスEAを作り、その後にフィルタを1つずつ足す方が検証しやすいです。
エントリー条件は、少ないほど原因分析がしやすいです。移動平均クロス、スプレッド制限、ポジション数制限。この3つだけでも、かなり現実的な検証ができます。利益を増やすことより先に、想定外の動きを減らすことを優先すると、EAとして扱いやすくなります。
売買回数が極端に少ない場合は、条件を厳しくしすぎている可能性もあります。勝率だけでなく、検証期間に対して十分な取引数があるかを見ると、偶然の勝ち負けに引っ張られにくくなります。
決済と停止ルールを入れる
決済ルールは、EAの印象を大きく変える部分です。移動平均クロスEAでは、反対クロスで決済、固定pipsで利確、固定pipsで損切り、トレーリングストップ、時間経過で決済など、いくつかの選択肢があります。初心者はまず、損切りと利確を明確に入れた状態で検証するのがおすすめです。
反対クロス決済だけにすると、大きなトレンドでは利益を伸ばしやすいです。しかし、レンジ相場では反対クロスが遅れて、含み益を減らしたり、損失が大きくなったりします。固定利確だけにすると利益は安定しやすいですが、強いトレンドを取り切れないこともあります。
| 決済方法 | メリット | 弱点 |
|---|---|---|
| 反対クロス | トレンドを伸ばせる | 決済が遅れることがある |
| 固定利確 | 検証しやすい | 大きな伸びを逃しやすい |
| トレーリング | 利益を守りやすい | 設定が細かくなりやすい |
停止ルールも忘れないようにします。1日の損失が一定額を超えたら停止、連敗が続いたら停止、金曜日の深夜は新規エントリーしない、といったルールです。EAは疲れずに動くのが魅力ですが、止める条件がないと、不利な相場でも延々と売買してしまいます。
個人的には、最初の移動平均クロスEAは、固定損切り、固定利確、スプレッド制限、同時ポジション1つ、というくらいまで絞るのが扱いやすいと思います。そこから反対クロス決済版、トレーリング版、時間帯フィルタ版を別々に作ると、どの変更が良かったのか追いやすくなります。
停止ルールは利益機会を減らすように見えますが、実運用ではメンタル面の安定にも効きます。負けが続く日にEAが止まる設計にしておくと、無理に稼働を続けて大きく崩すリスクを下げられます。
バックテストで確認する
移動平均クロスEAを作ったら、いきなりリアル口座で動かさず、まずバックテストで確認します。見るべきなのは、利益の合計だけではありません。プロフィットファクター、最大ドローダウン、取引回数、連敗数、月ごとの損益の偏りを見ます。利益が出ていても、特定の1か月だけで勝っているEAは注意が必要です。
バックテスト期間は、できるだけ複数の相場を含めたいです。上昇トレンド、下降トレンド、レンジ、急変を含めると、EAの得意不得意が見えやすくなります。短い期間で良い結果が出ても、その期間がたまたま移動平均クロスに合っていただけかもしれません。

- 最大ドローダウンが資金に対して大きすぎないか
- 取引回数が少なすぎて偶然の結果になっていないか
- 月別損益が一部期間に偏っていないか
- スプレッドを現実的に設定しているか
MT4やMT5のテスターを使う場合は、ヒストリカルデータの質にも気をつけたいです。古いデータや抜けがあるデータでは、バックテスト結果が実態とズレることがあります。バックテスト結果の読み方は、MT4 EAバックテスト結果の見方で詳しく整理しています。
バックテストで大きな問題がなければ、次はデモ口座でフォワードテストを行います。リアルタイムのスプレッド、約定、VPS環境、相場の変化はバックテストだけでは完全に確認できません。最低でも数週間はデモで動かし、想定通りにエントリー・決済しているかを見てから、少額のリアル運用を考える流れが安全です。
バックテスト結果が微妙だった時に、いきなり条件をたくさん変えるのはおすすめしません。MA期間、MA種類、損切り幅、利確幅、時間帯フィルタを同時に変えると、何が改善に効いたのか分からなくなります。EAの改善は、1回につき1項目だけ変えるのが基本です。
たとえば、まずMA期間だけを変えて比較します。次に損切り幅だけを変えます。その次にスプレッド制限を入れます。このように段階を分けると、改善の方向性が見えやすくなります。ノーコードなら設定変更が簡単なので、むしろ変更しすぎない意識が大事です。
移動平均期間、損切り・利確幅、スプレッド制限、時間帯フィルタ、トレンドフィルタの順に1つずつ試すと、変更理由を追いやすくなります。
改善前後の結果は、同じ通貨ペア、同じ時間足、同じ期間で比較します。期間を変えてしまうと、改善の効果なのか相場環境の違いなのか判断できません。また、最大利益が少し下がっても、ドローダウンが大きく下がるなら、実運用では改善と言える場合もあります。
最終的には、利益、ドローダウン、取引回数、運用しやすさのバランスで判断します。バックテストの数字だけを追いかけると、現実では止めたくなるEAになりがちです。自分が不安にならずに見守れる損失幅かどうかも、かなり大切な判断基準ですね。
移動平均クロスEAのまとめ
移動平均クロスEAは、EA自作の練習としてかなり良い題材です。短期MAと長期MAのクロスというシンプルな条件で作れるため、売買ルールを理解しながらバックテストまで進めやすいです。一方で、シンプルだからこそ、確定足判定、損切り・利確、スプレッド制限、停止ルールを入れないと、実運用では不安定になりやすいです。
ノーコードで作る場合は、最初から完璧なEAを目指す必要はありません。まずは、買い条件、売り条件、決済条件を明確にした基本形を作り、バックテストで弱点を見つけます。その後、MA期間や決済方法、時間帯フィルタを1つずつ改善していく流れが現実的です。
- 移動平均クロスEAは確定足判定を基本にする
- 損切り・利確・停止ルールを最初から入れる
- ノーコードなら売買ロジックの検証に集中しやすい
- バックテスト後はデモ口座でフォワードテストする
移動平均クロスEAを自作する目的は、単にEAを動かすことではなく、自分の売買ルールを検証できる形にすることです。NoCode EA Studioのようなノーコードツールを使えば、MQLでつまずく前に、まずロジックの良し悪しを試せます。
最初の1本で完璧な成績が出なくても問題ありません。むしろ、どの相場で負けるのか、どの設定を変えると改善するのかが見えれば、EA自作の経験値としてかなり大きいです。焦らず、小さく作って、同じ条件で比べて、納得できる形まで育てていきましょう。
今回の基本形を保存しておけば、RSIやMACDなど別の条件を追加する時にも比較元として使えます。まずは移動平均クロスだけで土台を作り、数字を見ながら必要な改善だけ足していくのが堅実です。
