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

FX自動売買に興味があるけど、「MQL4のコードは難しそう…」と感じて二の足を踏んでいませんか?私も最初はそうでした。移動平均線のクロスは、FXトレードの中でもっとも基本的なサインのひとつです。でも、それをEAにしようとすると急にプログラミングの壁が立ちはだかる。
実は今は、コードを一行も書かずに移動平均クロスEAを自作できるツールが存在します。この記事では、移動平均線の基礎から、ノーコードツールを使ったEA作成の具体的な手順まで、初心者の方にもわかりやすく解説していきます。
- 移動平均線クロスのゴールデンクロス・デッドクロスの仕組みが理解できる
- EAを自作するのにプログラミング知識は不要なことがわかる
- ノーコードツール「NoCode EA Studio」の使い方と設定手順を学べる
- バックテストで自作EAの精度を検証する方法がわかる
移動平均クロスEAを自作する基礎知識

移動平均線クロスとは何か
移動平均線(MA)とは、一定期間の終値の平均値をつないだラインのことです。FXチャートで最も広く使われるテクニカル指標のひとつで、相場のトレンドを視覚的に把握しやすくしてくれます。
「クロス」とは、異なる期間の移動平均線が交差することを指します。たとえば、短期の5日移動平均線と長期の25日移動平均線を同時にチャートに表示したとき、この2本が交差する瞬間がクロスです。
MAクロスがトレードシグナルとして使われる理由は、価格のトレンド転換点を比較的わかりやすく示してくれるからです。短期線が長期線を下から上へ突き抜ける動きは、下落から上昇への転換を示唆するサインとして古くから使われてきました。
ただし、移動平均線はあくまでも過去の価格を元にした遅行指標です。サインが出た時点で既にある程度値が動いていることが多く、エントリーが遅れることもあります。この特性を理解した上でEAに組み込むことが重要です。シンプルなロジックだからこそ、パラメータ設定やフィルターの工夫が結果に大きく影響します。
MT4ではiMA()という組み込み関数でMAの値を取得できますが、ノーコードツールを使えばこうした関数を覚える必要もありません。まずは移動平均線クロスという概念をしっかり理解しておくことが、EA自作の第一歩です。
ゴールデンクロスとデッドクロス
MAクロスには大きく分けて2種類あります。「ゴールデンクロス」と「デッドクロス」です。この2つの違いを正確に理解することが、EA自作の基礎となります。
EAに落とし込む際には、「1本前のローソク足では短期MAが長期MAより下にあり、現在のローソク足では短期MAが長期MAより上にある」という条件でゴールデンクロスを判定します。デッドクロスはその逆です。この判定をコードで実装するのがMQL4の世界ですが、ノーコードツールではこの条件を画面上の設定で指定するだけです。
MAクロスEAの基本的な売買ルールは「ゴールデンクロスで買いエントリー、デッドクロスで決済(または売りエントリー)」というシンプルなものです。このドテン売買スタイルは初心者にも理解しやすく、バックテストも行いやすいため、EA自作の入門として最適です。
なお、MAの期間の組み合わせはトレーダーによって様々です。5と25、25と75、50と200(ゴールデンクロス200日線)など、時間軸や通貨ペアによって最適な設定は異なります。自分のトレードスタイルや対象の通貨ペアに合わせて、バックテストで検証しながら最適な組み合わせを探すことが大切です。
EAに必要なロジックの考え方
EAを自作するには、まず「自分がどんな条件でエントリーして、どんな条件で決済するか」を言葉で整理することが大切です。頭の中のぼんやりしたイメージを、具体的なルールに落とし込む作業です。
「短期MAが長期MAを下から上に抜けたらBuy」のように、明確な条件を1文で書き出す。
「デッドクロスで決済」「利益X pipsで利確」「損失Y pipsで損切り」など複数の決済ルールを設定する。
1トレードあたりのロット数や、同時保有するポジション数の上限を設定する。
MAクロスEAの場合、エントリーはゴールデンクロス・デッドクロスで行うとしても、問題になるのは「レンジ相場でのダマシ」です。トレンドがないときにクロスが頻発し、連続して損切りになるケースがあります。これを避けるためにADXフィルターやRSIフィルターを追加する方法もありますが、まずはシンプルなロジックで始めて、バックテスト結果を見ながら改善していくアプローチが王道です。
また、EAには「マジックナンバー」の設定が必要です。これはEAが発注したポジションを識別するためのID番号で、複数のEAを同時に動かす場合に混在を防ぐために使います。ノーコードツールでは自動的に割り当てられることが多いですが、概念として知っておくと後々役に立ちます。
ロジックをシンプルに保つことは、EA自作の鉄則です。複雑な条件を追加するほどバックテストでの過最適化(カーブフィッティング)が起きやすくなり、実運用で機能しなくなるリスクが高まります。移動平均クロスのような単純なロジックの方が、むしろ本番環境で安定しやすいという意見もプロトレーダーの間では多いです。
よくある失敗パターンと対策
EA自作の初心者が陥りがちな失敗を事前に知っておくと、無駄な時間を節約できます。私自身も同じ失敗を経験しているので、率直にお伝えします。
- バックテスト期間が短すぎて「勝てるEA」と勘違いする
- スプレッドやスリッページをバックテストに反映していない
- ロットを大きくしすぎて、最初の連敗で証拠金を溶かす
- 1つの通貨ペアだけで最適化して他では全く機能しない
- フォワードテストをせずにいきなりリアル口座で動かす
特に多いのが「バックテストの過最適化」です。特定の期間・通貨ペアに合わせてパラメータをチューニングしすぎると、その条件ではよく機能するけど別の時期・ペアでは全然ダメ、という状況になります。これをカーブフィッティングと呼びます。
また、スプレッドの設定は非常に重要です。バックテスト時のスプレッドを0や1にして好成績を出しても、実際の口座では3〜5 pipsのスプレッドがかかることも多く、結果は大きく変わります。必ずリアルなスプレッドを反映させた状態でテストするようにしましょう。
さらに、デモ口座でのフォワードテスト(実際の相場でリアルタイムに動作確認すること)を最低でも1〜3ヶ月行ってから本番口座に移行することを強くおすすめします。バックテストは過去のデータに対する検証であり、未来の相場を保証するものではありません。EA自作は楽しい作業ですが、リスク管理を怠ると大きな損失につながるので注意が必要です。
H2-1のまとめと次のステップ
ここまでのポイントを整理しましょう。移動平均線クロスEAを自作するにあたって、まず理解しておくべき基礎知識は以下の通りです。
- 移動平均線クロスとは短期MAと長期MAの交差で、ゴールデンクロスが買いサイン、デッドクロスが売りサイン
- EAのロジックは「エントリー条件・決済条件・リスク管理」の3要素で構成される
- バックテストの過最適化やスプレッド設定の不備が、よくある失敗の原因
- フォワードテストを経てから本番口座へ移行するのが基本的な流れ
移動平均クロスはシンプルだからこそ、ロジックを理解しやすく、EA自作の入門に最適です。基礎を固めた上で、次のセクションでは実際にノーコードツールを使ってEAを作る具体的な手順を見ていきます。
ここで一点強調しておきたいのは、「シンプルなロジックこそが長期的に機能しやすい」という考え方です。複雑な条件を組み合わせたEAは、過去データへの適合度は高くなりやすいですが、相場環境が変化したときに急激にパフォーマンスが悪化する傾向があります。移動平均クロスのようにシンプルで普遍的なロジックは、相場の本質的な動き(トレンド)を捉えようとするものであり、長期間にわたって一定の機能を発揮しやすいとも言われています。
また、EA自作はゴールではなく、あくまでも手段です。自分のトレード戦略をEAという形に落とし込み、機械的かつ感情に左右されずに実行するためのツールがEAです。自作する過程でトレードロジックへの理解が深まり、裁量トレードのスキル向上にもつながります。まずは基礎をしっかり身につけて、次のステップへ進みましょう。
移動平均クロスEAをノーコードで自作できる無料ツール「NoCode EA Studio」はこちら。
▶ NoCode EA Studio を無料で使う
ノーコードで移動平均クロスEAを自作する手順

ノーコードツールの選び方
移動平均クロスEAをノーコードで自作するためのツールはいくつか存在します。それぞれに特徴があるので、自分に合ったものを選ぶことが重要です。主要なツールを整理してみましょう。
| ツール名 | 無料/有料 | 対応MT | 難易度 |
|---|---|---|---|
| NoCode EA Studio | 無料あり | MT4/MT5 | ★☆☆ |
| EA作成機 | 無料(要登録) | MT4/MT5 | ★★☆ |
| EAつくーる | 有料 | MT4 | ★★☆ |
| ForexEAdvisor | 無料 | MT4 | ★★★ |
この記事では特に「NoCode EA Studio」に注目します。日本語対応で初心者にも使いやすく、移動平均線クロスをはじめとした代表的な売買ロジックをGUIで組み立てられるのが特長です。MT4とMT5の両方に対応しており、作成したEAをmq4/mq5ファイルとしてエクスポートできます。
ノーコードツールを選ぶ際のポイントは、①日本語対応かどうか、②目的の指標(今回は移動平均線)が設定できるか、③作成したEAをMT4/MT5でそのまま使えるファイル形式でエクスポートできるか、の3点です。これらを満たしていれば、初心者でも安心して使い始められます。
なお、ノーコードといっても「完全に何も考えなくていい」わけではありません。ロジックの設計は自分で考える必要があります。ツールが担ってくれるのは「コードを書かなくていい」という部分だけです。前のセクションで学んだ基礎知識を活かして、自分なりのロジックを持ってからツールを使い始めるのがおすすめです。
エントリー条件の設定方法
ノーコードツールを使ってMAクロスEAのエントリー条件を設定する手順を解説します。ここでは「短期MA(5期間)が長期MA(25期間)をゴールデンクロスしたらBuy、デッドクロスしたらSell」という基本的なルールを例に説明します。
NoCode EA Studioにログイン後、「新しいEAを作成」をクリック。EAの名前と対象の通貨ペア・時間軸を設定します。
エントリー条件の設定画面で「指標:移動平均線」「短期期間:5」「長期期間:25」「クロス方向:上抜け」を選択します。
同様にSell条件を追加。「クロス方向:下抜け」を選択することでデッドクロスによる売りエントリーが設定できます。
SMA(単純移動平均)、EMA(指数平滑移動平均)、WMA(加重移動平均)などから選択できます。まずはSMAから試すのが定番です。
MAの種類について少し補足しておきます。SMAは全期間を均等に扱うシンプルな計算式で、最も理解しやすいです。EMAは直近の値により大きな重みをつけるため、価格変動への反応が早い特徴があります。どちらが優れているかは一概には言えず、バックテストで比較してみることをおすすめします。
設定が完了したら、画面上でロジックの内容を必ず確認してください。意図した条件が正しく設定されているか、特に「クロス方向(ゴールデン/デッドの判定)」が正しいかをダブルチェックすることが重要です。ここが逆になっていると、買いと売りが逆転したEAになってしまいます。
損切り・利確の設定ポイント
エントリー条件を決めたら、次は損切り(ストップロス)と利確(テイクプロフィット)の設定です。この2つの設定はEAのパフォーマンスに直結する最重要事項のひとつです。
MAクロスEAの決済には主に2つのアプローチがあります。「逆クロスで決済する方法」と「固定pipsで損切り・利確する方法」です。
逆クロス決済:ゴールデンクロスで入ったポジションをデッドクロスで決済する方法。トレンドが続く限りポジションを保有し続けるため、大きな利益を狙える反面、含み損が拡大するリスクもあります。
固定pips決済:あらかじめ決めたpips数で利確・損切りを行う方法。リスク管理がシンプルでわかりやすく、初心者向きです。リスクリワード比(損切りと利確の比率)を意識した設定が重要です。
損切りと利確のpips設定に正解はありませんが、リスクリワード比は最低でも1:1以上(損切り50pipsなら利確も50pips以上)にすることを推奨します。1:2(損切り50pipsに対して利確100pips)にできると、勝率が50%を下回っても収益が出る計算になります。
通貨ペアごとに適切なpips数は異なります。ドル円(USDJPY)のような比較的動きが小さいペアと、ポンド円(GBPJPY)のように大きく動くペアでは、同じpips設定でも意味合いが変わります。ATR(平均真の値幅)という指標を参考にして、その通貨ペアの平均的な1日の値動きの範囲内で損切りを設定する方法もよく使われます。
NoCode EA Studioでは損切り・利確をpips単位またはATRの倍数で設定できます。ATRベースの設定は相場のボラティリティに自動対応するため、多くの通貨ペアに汎用的に対応できるメリットがあります。初心者は固定pipsから始めて、慣れてきたらATRベースに移行するのが自然な流れです。
バックテストで性能を確認する
EAの設定が完了したら、必ずバックテストを行って性能を確認してください。バックテストとは過去の価格データを使って、自作EAが過去にどんな取引をしたか、どれくらいの損益になったかをシミュレーションする作業です。
MT4のバックテスト機能(ストラテジーテスター)を使う場合は、EAをエクスポートした後にMT4にインストールして実行します。NoCode EA StudioはmqファイルをエクスポートできるのでMT4のMetaEditorでコンパイルしてから使用します。
バックテスト期間は最低でも3〜5年分のデータを使うことをおすすめします。1年だけだと、たまたまその年に合っていたロジックというだけで、「優秀なEA」と判断してしまうリスクがあります。リーマンショックやコロナショックのような急激な相場変動を含む期間でどう動いたかを確認することも重要です。
また、バックテストが良くてもフォワードテスト(デモ口座での実稼働テスト)も欠かせません。過去のデータは既知であるため、未来のデータ(実際の相場)でも同じパフォーマンスが出るかどうかは別問題です。最低1ヶ月、できれば3ヶ月のフォワードテストを経てから実口座に移行することを強くおすすめします。
パラメータの最適化(短期MA期間・長期MA期間・損切りpipsなどを変えて最良の組み合わせを探す作業)も行えますが、やりすぎるとカーブフィッティングになります。複数の通貨ペアや時間軸で同じパラメータがある程度機能するかを確認する「ロバストネステスト」も合わせて行うと、実運用での信頼性が高まります。
だましシグナルへの対処法
移動平均クロスEAで最もよくある問題が「だましシグナル」です。レンジ相場では短期MAと長期MAが頻繁にクロスを繰り返し、そのたびにエントリーと損切りが発生して資金が削られていきます。これはクロス系EA共通の弱点であり、フィルターを追加することで軽減できます。
有効なフィルターの例として、ADX(Average Directional Index)があります。ADXが25以上のときだけエントリーを許可するフィルターを加えると、トレンドが出ていない相場での無駄なエントリーを減らせます。また、時間帯フィルターでロンドン〜ニューヨーク時間(日本時間16〜25時)に限定するのも効果的です。流動性が高くトレンドが発生しやすい時間帯に絞ることで、だましの頻度を下げられます。
- ADXフィルター:ADXが25以上のときだけエントリー許可
- 時間帯フィルター:ロンドン〜NY時間に限定
- スプレッドフィルター:スプレッドが一定値以上のときはエントリーしない
- 移動平均線の傾き:MAが一定以上の傾きを持つときだけエントリー
ライブ運用前のチェックリスト
移動平均クロスEAをデモ口座からリアル口座に移行する前に、以下のチェックリストを確認しましょう。
- バックテストで3年以上のデータを検証済みか
- プロフィットファクターが1.3以上あるか
- 最大ドローダウンが口座残高の20%以内に収まっているか
- デモ口座で最低1ヶ月のフォワードテストを実施したか
- スプレッドを実際の水準に設定してバックテストしたか
- ロットサイズは口座残高の1〜2%リスクに設定しているか
- VPS環境でMT4/MT5が24時間安定稼働しているか
- 経済指標発表時の急変動に対する損切り設定があるか
H2-2のまとめと運用の注意点
ここまで、ノーコードで移動平均クロスEAを自作する具体的な手順を解説しました。最後に重要なポイントを整理しておきます。
- ノーコードツールはNoCode EA Studioがおすすめ。無料から始められて日本語対応
- エントリー条件はゴールデンクロス(Buy)・デッドクロス(Sell)を基本に設定する
- 損切り・利確はリスクリワード比を意識して設定し、固定pipsかATRベースで試す
- バックテストは最低3〜5年分のデータで行い、フォワードテストも必ず実施する
移動平均クロスEAの自作は、FX自動売買の入口として非常に優れた学習体験です。シンプルなロジックを通じて、EA全体の仕組みや検証プロセスを体験的に学べます。一度作れたら、フィルターを追加したり別の指標と組み合わせたりと、カスタマイズの楽しさも広がっていきます。
- ノーコードで作ったEAはMT4で使えますか?
はい、使えます。NoCode EA Studioで作成したEAはmq4/mq5ファイルとしてエクスポートでき、MT4/MT5にインストールして使用できます。コンパイルが必要ですが、MetaEditorで簡単に行えます。
- 移動平均線の期間は何がおすすめですか?
定番は5と25、25と75などですが、正解はありません。通貨ペアや時間軸によって最適な組み合わせは異なるため、バックテストで複数の組み合わせを比較して検討することをおすすめします。
- 自作EAで本当に利益が出ますか?
利益が出るかどうかはロジックやパラメータ設定、相場環境によって異なります。FX自動売買は元本を保証するものではなく、損失が出るリスクもあります。必ずデモ口座でのテストを十分に行った上で判断してください。
EA自作の全体像を把握するにはEA自作を初心者が始める完全ガイドもあわせてご覧ください。
