MT4の基本インジケーターだけで作るシンプル自動売買EA入門

FX自動売買

MT4(MetaTrader 4)は、多くの個人投資家が利用しているFXプラットフォームです。その最大の魅力の一つが、自動売買プログラム(EA:Expert Advisor)を動かせることです。ただ、「自動売買」と聞くと難しそうに感じてしまい、最初の一歩が踏み出せない方も多いです。

この記事では、MT4で自動売買を始めるための基本と、難しい理論に入り込みすぎず、移動平均線やRSIといった基本インジケーターだけで構成するシンプルなEAの考え方を、初心者向けに丁寧に解説します。いきなり高度なロジックに飛びつくのではなく、「最低限ここだけ押さえれば、自分でEAの設計図を描ける」というレベルを目標にします。

スポンサーリンク
【DMM FX】入金

MT4自動売買の全体像:何をすると「EAでトレードしている」と言えるのか

まず、自動売買EAを使ったトレードがどのような流れになるのか、全体像を整理しておきます。裁量トレードでは、チャートを見て「今は上がりそうだから買おう」「そろそろ利確しよう」といった判断を自分の目と感覚で行います。一方、EAでは、その判断基準をあらかじめルールとしてコードに落とし込み、MT4が自動でそのルール通りに注文・決済を行います。

典型的な自動売買の流れは次の通りです。

1. どの時間足・どの通貨ペアで動かすかを決める。
2. 「買いエントリー」「売りエントリー」「決済」「損切り」の条件をすべてルールとして定義する。
3. ルールをMQL4という言語でEAに書き、コンパイルしてMT4に読み込ませる。
4. ストラテジーテスターで過去チャートに対してバックテストを行い、ロジックのクセや成績を確認する。
5. 実際の口座(最初はデモや少額)にEAをセットして常時稼働させる。

ここで重要なのは、「EAの出来=ロジックの良し悪し」と「運用の仕方」が両輪だという点です。どんなに優秀なロジックでも、ロット管理や損切りが雑だと口座は簡単に飛びますし、逆にシンプルなロジックでもリスク管理を徹底すれば、長く生き残りやすくなります。

EAを自分で組むために最低限知っておきたいインジケーターの役割

EAは、インジケーターを「条件を数値化する道具」として使います。裁量トレードでは、移動平均線の傾きやRSIの形を目で見て判断しますが、EAではそれを「MAが上向き」「RSIが30以下」のように、数式や数値条件に落とし込みます。そのため、インジケーターの役割をざっくり理解しておくことが非常に重要です。

ここでは、初心者でも比較的イメージしやすく、EAにも落とし込みやすい基本インジケーターだけに絞って整理します。

移動平均線:トレンド方向と基準価格を決める「軸」

移動平均線(MA:Moving Average)は、指定期間の終値の平均値を線でつないだものです。EAでは主に、次のような形で使われます。

・トレンド方向を判定する軸として使う(価格がMAより上なら上昇トレンド、下なら下降トレンドという発想)。
・短期と長期の移動平均線を組み合わせて、ゴールデンクロス・デッドクロスをシグナルとして使う。
・損切りや手仕舞いの目安ラインとして利用する(価格がMAを明確に割り込んだら決済など)。

たとえば、1時間足で「期間20」の単純移動平均線(SMA)を表示し、価格がこのSMAの上にあるときだけ買いエントリーを許可する、といった使い方です。これにより、EAがレンジの逆張りではなく、あくまでトレンド方向に沿ったエントリーを行うように制御できます。

RSI:勢いと「売られ過ぎ・買われ過ぎ」を数値化する

RSI(Relative Strength Index)は、一定期間の上昇幅と下落幅のバランスから、「今の相場が買われすぎか、売られすぎか」を示すオシレーター系インジケーターです。値は通常0〜100の間を推移し、一般的には70以上で買われ過ぎ、30以下で売られ過ぎと言われます。

EAでは、RSIを次のように使うことが多いです。

・トレンド方向にエントリーする前に「押し目・戻り」を待つフィルターにする。
・逆張りEAで、売られ過ぎ(買われ過ぎ)ゾーンからの反転を狙うトリガーにする。
・ポジションの一部決済のタイミング(例:RSIが70を超えたら半分利確)に使う。

たとえば、「移動平均線で上昇トレンドを確認した上で、RSIが30から上抜けしたタイミングだけ買う」といった組み合わせは、初心者にもイメージしやすく、EA化もしやすいロジックです。

MACD:トレンドの強弱と転換を滑らかに捉える

MACDは、2本の指数平滑移動平均線の差を利用して、トレンドの強さや転換点を捉えようとするインジケーターです。初心者にとっては少し取っつきにくいものの、「MACDがゼロラインより上で推移している=相場全体としては強め」という大枠の判定に使う程度であれば、EAでもシンプルに扱えます。

この記事では、あくまで入門として、「MACDがゼロより上なら買い優勢、ゼロより下なら売り優勢」といった簡易的なフィルターとしての役割にとどめます。こうすることで、移動平均線とRSIを中心としたロジックを補強しつつ、複雑になりすぎないバランスを保てます。

具体例1:移動平均線クロスEAのロジックを組み立てる

ここからは、実際にEAのロジックを設計していきます。まずは、もっとも基本的な「移動平均線クロスEA」を土台にします。発想は非常にシンプルです。

・短期移動平均線が長期移動平均線を下から上に抜けたら「買い」
・短期移動平均線が長期移動平均線を上から下に抜けたら「売り」

具体的には、次のようなパラメータを想定します。

・時間足:1時間足
・短期移動平均線:期間10のSMA
・長期移動平均線:期間40のSMA
・損切り幅:30pips固定
・利確幅:60pips固定
・同時保有ポジション数:1つまで

ロジックを文章で書くと以下のようになります。

1. 直近の足確定時点で、短期MAと長期MAの現在値と1本前の値を取得する。
2. 1本前の足では短期MAが長期MAより下、現在の足では短期MAが長期MAより上なら「ゴールデンクロス」と判定して買いエントリー。
3. 逆に、1本前では短期MAが長期MAより上、現在は下なら「デッドクロス」と判定して売りエントリー。
4. ポジション保有中は、新たなシグナルが出ても追加エントリーは行わない(過剰なナンピンを避けるため)。
5. 損益が設定したpipsに到達したら、SLまたはTPで自動的に決済する。

このロジックだけでもEAとしては成立します。ただし、トレンドが出ている局面ではうまく機能しても、レンジ相場ではダマシが多くなり、連続損切りが発生しやすいという課題があります。そこで、次にRSIを使って「エントリーポイントを絞る」工夫を加えます。

具体例2:RSIフィルターでダマシを減らす

移動平均線クロスEAに、RSIを組み合わせることで、できるだけ「押し目・戻り」を待ってからエントリーする設計にすることができます。たとえば、次のような条件を追加します。

・買いエントリー条件:ゴールデンクロスが発生しており、かつRSI(期間14)が50以上。
・売りエントリー条件:デッドクロスが発生しており、かつRSI(期間14)が50以下。

このようにRSIをフィルターとして使うと、トレンドがはっきりしている方向にだけエントリーする傾向が強まり、レンジでの逆張り的なエントリーをある程度避けることができます。また、より慎重にしたければ、RSIが40〜60のような「中立ゾーン」のときはエントリーしない、という条件を加えるのも一つの方法です。

さらに、押し目買い・戻り売りを意識するなら、次のようなロジックも考えられます。

・上昇トレンド中(短期MAが長期MAより上):RSIが一度30〜40まで下がった後、再び50を上抜けしたタイミングを買いシグナルとする。
・下降トレンド中(短期MAが長期MAより下):RSIが一度60〜70まで上がった後、再び50を下抜けしたタイミングを売りシグナルとする。

こうした「一度行き過ぎてから戻ってくる動き」を条件に加えると、単純なクロスよりも狙うポイントが限定されるため、シグナル回数は減りますが、質の高いエントリーに絞りやすくなります。

EAロジックを疑似コードでイメージしてみる

初心者の方にとって、いきなりMQL4のコードを見せられてもイメージが湧きにくいことが多いです。そこでまず、プログラミング言語ではなく、擬似コード(日本語に近い形)でロジックを整理してみます。

例:移動平均線+RSIフィルターEAの擬似コード

・もし新しい足が確定したら:
  短期MAと長期MAの現在値と1本前の値を取得する
  RSIの現在値を取得する
  もしポジションを持っていなければ:
    もしゴールデンクロスが発生していて、かつRSIが50より上なら:
      買いポジションを1つだけ建てる(ロットは設定した値)
    もしデッドクロスが発生していて、かつRSIが50より下なら:
      売りポジションを1つだけ建てる
  もしポジションを持っているなら:
    損切りラインまたは利確ラインに到達していないかをチェックする
    到達していれば、そのポジションを決済する

実際のMQL4コードでは、これをif文や関数で細かく書いていきますが、頭の中でこのレベルの日本語ロジックが整理できていれば、あとは書き方を調べながら形にしていくことができます。

リスク管理:EAでも「ロット」「損切り」「同時ポジション数」が命綱

自動売買というと「ロジックさえ良ければ放っておいても増える」と考えがちですが、現実にはロット管理と損切り設計が極めて重要です。特に、初心者が最初につまずきやすいポイントなので、EA設計段階から次の点を明確にしておくべきです。

・1回のトレードで口座残高の何%まで損失を許容するか(例:1〜2%)。
・最大で何ポジションまで同時保有するか(例:基本は1つ、慣れても3つまでなど)。
・連敗が続いたときにロットを自動的に下げるかどうか。
・スプレッドの広がりが大きい時間帯はエントリーを避けるかどうか。

たとえば、10万円の口座で1回の最大損失を2%に抑えたい場合、1トレードあたりの最大損失は2,000円です。損切り幅を30pipsと決めているなら、1pipsあたりおよそ66円までにロットを抑える必要があります。サーバーの仕様次第ですが、ドル円であれば0.06ロット程度が上限になります。このように、ロジックを考えるときは「どれだけ儲かるか」だけでなく「最悪どこまで損する可能性があるか」をセットで考える必要があります。

MT4ストラテジーテスターでのバックテストと簡単なチェックポイント

EAを作ったら、いきなりリアル口座で動かすのではなく、必ずMT4のストラテジーテスターでバックテストを行います。バックテストでは、過去の価格データに対してEAを動かし、損益曲線や勝率、ドローダウン、最大連敗数などを確認できます。

初心者がまず見るべきポイントは次の通りです。

・損益曲線が、長期的に見て右肩上がりかどうか(多少の上下は当然ある)。
・最大ドローダウンが、想定している許容範囲内かどうか。
・連敗数が、自分が精神的に耐えられるレベルかどうか。
・特定の期間だけ極端に成績が良すぎたり悪すぎたりしていないか。

もし、特定の数ヶ月だけ異常に成績が良い場合、その期間の相場環境にたまたまロジックがハマっているだけの可能性もあります。そのような偏りが大きいEAは、将来同じような環境にならないと成績が再現されにくく、実運用では期待外れになりやすいです。

ありがちな失敗例:インジケーターを増やし過ぎる・最適化し過ぎる

EAを作り始めると、「もっと条件を増やせば勝率が上がるのではないか」と考えてしまいがちです。移動平均線、RSI、MACDに加えて、ボリンジャーバンド、ストキャスティクス、CCIなど、どんどんインジケーターを足していくと、バックテスト上は一見きれいな成績になることがあります。

しかし、インジケーターを増やしすぎると、相場の特定のパターンにだけ極端に最適化された「過剰最適化(オーバーフィッティング)」状態になりがちです。このようなEAは、過去のデータに対しては強いものの、将来の相場に対しては脆く、本番運用で成績が崩れやすくなります。

初心者のうちは、次のような方針を意識すると良いです。

・使うインジケーターは多くても2〜3種類までに絞る。
・パラメータはいじりすぎない(例:MA期間を1刻みで調整し続けない)。
・バックテスト期間を十分に長くとる(数ヶ月〜数年)。
・テストで見つけた「最適パラメータ」から少し外した設定でも成績が崩れないかを確認する。

シンプルなロジックであっても、長期的に安定して動作するEAの方が、現実的な投資ツールとしては価値が高いです。

小額・デモから始める運用ステップ

最後に、EAを実際に運用していくときのステップをまとめます。重要なのは、「いきなり大きな金額で勝負しないこと」と「EA任せにしすぎず、定期的にモニタリングすること」です。

1. まずはデモ口座でEAを動かし、バックテストと同じような挙動になっているかを確認する。
2. デモで数週間〜数ヶ月運用し、想定外のエラーや挙動がないかをチェックする。
3. 問題がなければ、少額のリアル口座(生活に影響しない余裕資金)で運用を開始する。
4. 月次・四半期単位で成績を振り返り、ロット調整や停止判断を行う。
5. 相場環境が大きく変化したと感じたら、EAのロジックがその環境に合っているかを再検討する。

EAを自作できるようになると、自分の考え方やリスク許容度を反映させた「自分専用のトレードシステム」を持てるようになります。その一方で、「完全放置で勝てる魔法の箱」ではありません。この記事で紹介したような基本インジケーターとシンプルなロジックから始め、少しずつ改善と検証を重ねていくことで、自分なりの自動売買スタイルを築いていくことができます。

p-nuts

お金稼ぎの現場で役立つ「投資の地図」を描くブログを運営しているサラリーマン兼業個人投資家の”p-nuts”と申します。株式・FX・暗号資産からデリバティブやオルタナティブ投資まで、複雑な理論をわかりやすく噛み砕き、再現性のある戦略と“なぜそうなるか”を丁寧に解説します。読んだらすぐ実践できること、そして迷った投資家が次の一歩を踏み出せることを大切にしています。

p-nutsをフォローする
FX自動売買
スポンサーリンク
【DMM FX】入金
シェアする
p-nutsをフォローする

コメント

タイトルとURLをコピーしました