MT4の基本インジケーターで作るシンプルEA入門

自動売買

本稿では、MT4に標準搭載されている基本的なインジケーターだけを使って、自分でEA(自動売買プログラム)を組む方法を解説します。プログラミング経験がない投資初心者でも、「どのようなロジックで売買が動いているのか」「どこから手を付ければよいのか」がイメージできるよう、できるだけ具体的に説明していきます。

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

MT4自動売買とEAの全体像

MT4のEAは、簡単に言うと「一定の条件になったら自動で発注・決済をしてくれるロボット」です。チャートを見ていない時間帯でも、あらかじめ決めたルールに従って淡々とトレードしてくれます。

裁量トレードでは、チャートを見て「そろそろ上がりそうだ」「ここは反発しそうだ」とその場で判断します。一方、EAでは「◯期間移動平均線が×期間移動平均線を上抜けたら買い」「RSIが30以下でボリンジャーバンドの下限にタッチしたら買い」のように、ルールを数値と条件として明文化します。そして、その条件を満たした瞬間にEAが自動で発注を行います。

EAの本質は、「自分がチャートを見て行っている判断を、機械に任せられる形に落とし込むこと」です。高度な数学や難しいプログラミングが必要だと思われがちですが、最初はMT4に元々入っているインジケーターを組み合わせるだけでも十分にEAを作ることができます。

なぜ基本インジケーターでEAを作るのか

インターネット上には、高度なカスタムインジケーターや複雑なアルゴリズムを使ったEAも多く存在します。しかし、最初の一歩としては、MT4標準のシンプルなインジケーターに限定した方が理解が進みやすく、検証もしやすいです。

基本インジケーターだけでEAを組むメリットは大きく分けて次の3つです。

1つ目は「情報量が整理される」ことです。移動平均線、RSI、MACD、ボリンジャーバンド、ストキャスティクスなどは、多くのトレーダーが日常的に使っており、解説情報も豊富です。インジケーターの意味や弱点を理解しながらEAを作れるため、ロジックの中身がイメージしやすくなります。

2つ目は「再現性が高い」ことです。標準インジケーターであれば、他のトレーダーも同じ条件を使って検証できますし、別の証券会社や別のPC環境でも同じ結果が得やすくなります。再現性が高いことは、戦略の検証において非常に重要です。

3つ目は「処理が軽く、動作が安定しやすい」ことです。カスタムインジケーターを大量に読み込むEAは、チャート表示が重たくなったり、約定処理が遅れたりすることがあります。まずは軽量でシンプルな構成から始め、必要に応じて少しずつ複雑さを増やしていく方が、リスクを抑えながら経験を積むことができます。

MT4代表的インジケーターの特徴とEAでの使い方

移動平均線(MA)

移動平均線は、一定期間の終値の平均を線でつないだインジケーターです。トレンドの方向や勢いをシンプルに把握するのに向いています。短期線と長期線を組み合わせた「ゴールデンクロス」「デッドクロス」は、EAでも定番のシグナルです。

EAでは、「短期MAが長期MAを上抜けたら買い」「短期MAが長期MAを下抜けたら売り」というような形で、トレンドの転換点を捉えるロジックを組むことができます。FXであれば、例えば「5期間MAと20期間MA」「20期間MAと80期間MA」など、時間軸に応じて組み合わせを変えることが多いです。

RSI

RSIは、一定期間の上昇幅と下落幅のバランスから「買われすぎ」「売られすぎ」を数値化したオシレーターです。一般的には70以上で買われすぎ、30以下で売られすぎとされます。

EAでは、「RSIが30以下になったら買い目線」「RSIが70以上になったら売り目線」といったフィルターとして使うのが基本です。例えば、トレンド方向は移動平均線で判断し、エントリーのタイミングはRSIの反発を待つ、という組み合わせがよく使われます。

MACD

MACDは、2本の移動平均線の差をベースにしたトレンド系とオシレーター系の性質を併せ持つインジケーターです。MACDラインとシグナルラインのクロス、MACDのゼロラインとの位置関係などで、トレンドの強さや転換を判断します。

EAでは、MACDラインがシグナルラインを上抜けたら買い、下抜けたら売りという単純なロジックが考えられます。さらに、ゼロラインより上でのゴールデンクロスだけを買い条件にするなど、トレンド方向を絞り込む工夫も可能です。

ボリンジャーバンド

ボリンジャーバンドは、移動平均線の上下に標準偏差を用いたバンドを描き、価格の振れ幅(ボラティリティ)を視覚化するインジケーターです。バンドの収縮(スクイーズ)と拡大、バンドウォークなどのパターンが有名です。

EAでは、レンジ相場では「バンド上下端からの反発を狙う逆張り」、トレンド相場では「バンドブレイク方向に順張り」といった使い分けが考えられます。単独で使うのではなく、トレンド判定のインジケーターと組み合わせることで、ダマシを減らすことができます。

ストキャスティクス

ストキャスティクスは、一定期間の高値・安値のレンジの中で現在価格がどの位置にあるかを示すオシレーターです。%Kと%Dの2本のラインと、80以上・20以下のゾーンがよく使われます。

EAでは、「トレンドは移動平均線で判断し、押し目・戻りのタイミングはストキャスティクスのクロスで取る」といった構成がよく用いられます。特にレンジ気味の時間帯ではシグナルが多く出るため、フィルターを適切に掛けることが重要です。

EAの基本構造をイメージする

MT4のEAは、基本的に「起動時に一度だけ呼ばれる処理」「チャートから外すときの終了処理」「価格が更新されるたびに繰り返し呼ばれる処理」で構成されています。細かなコードの書き方はマニュアルやサンプルに任せるとして、まずはフローだけ押さえておきましょう。

イメージとしては、次のような流れです。

1. EA起動時にパラメーター(移動平均線の期間やRSIの閾値など)を読み込む。
2. 新しいティック(価格更新)が来るたびに、各インジケーターを計算しなおす。
3. すでにポジションを持っているかどうかを確認する。
4. ポジションがなければ、売買条件をチェックしてエントリーするか判断する。
5. ポジションを持っていれば、決済条件(利確・損切・時間切れなど)をチェックする。
6. 条件を満たしたら注文・決済を実行する。

この流れは、どのようなインジケーターを使うEAでも共通です。違いは「どんな条件でエントリー・決済するか」「どのくらいのロットサイズで入るか」というロジック部分だけです。

移動平均線クロスEAの設計例

最もシンプルで分かりやすい例として、「短期移動平均線と長期移動平均線のクロス」を使ったEAを考えてみます。ここではFXの1時間足チャートを例にしますが、株式や暗号資産にも同じ考え方を応用できます。

例えば、次のようなルールを設定します。

・短期MA(期間20)が長期MA(期間80)を下から上に抜けたら買いエントリー。
・短期MAが長期MAを上から下に抜けたら売りエントリー。
・利確は30pips、損切は20pipsに固定。
・すでにポジションを持っているときは、新たなエントリーは行わない。

このルールだけでもEAとしては成立しますが、実際のチャートではダマシが多くなりやすいです。そこで、後述するRSIやボリンジャーバンドを組み合わせて、エントリー条件を絞り込む工夫を加えていきます。

RSIフィルター付きMAクロスEAのロジック例

移動平均線クロスだけでは、方向性は合っていてもエントリータイミングが早すぎたり遅すぎたりします。RSIを追加して「押し目買い」「戻り売り」に近い形にすることで、無駄なエントリーを減らすことができます。

例えば、次のようなロジックが考えられます。

【買い条件】
1. 短期MAが長期MAを上抜けており、価格が短期MAより上にある(上昇トレンド)。
2. RSI(期間14)が一度30近辺まで下がった後、40を再び上抜けた(押し目からの反発)。
3. 直近の安値から20pips以上離れている場合はエントリーを見送る(直近安値のブレイクに備えるため)。

【売り条件】
1. 短期MAが長期MAを下抜けており、価格が短期MAより下にある(下落トレンド)。
2. RSIが一度70近辺まで上がった後、60を下抜けた(戻りからの反落)。
3. 直近の高値から20pips以上離れている場合はエントリーを見送る。

このように、トレンド方向の判定を移動平均線に任せ、タイミングの判定をRSIに任せることで、「トレンドに沿った押し目・戻り」のエントリーを狙うEAになります。同じロジックは、ビットコインなどボラティリティの高い暗号資産にも応用できますが、その場合は利確・損切幅やRSIの閾値をボラティリティに合わせて調整する必要があります。

ボリンジャーバンドを使ったブレイクアウトEAのロジック例

次に、ボリンジャーバンドを使ったシンプルなブレイクアウトEAを考えてみます。基本的な考え方は、「バンド幅が縮小している静かな相場の後に、バンドを抜けて大きく動き出す局面を取る」というものです。

例として、次のようなルールを設定します。

【買い条件】
1. 一定期間(例:直近20本)のボリンジャーバンド幅が、過去一定期間の平均よりも小さい(スクイーズ状態)。
2. ローソク足の終値が、ボリンジャーバンド+2σを終値で明確に上抜けた。
3. 直近数本のローソク足の安値をまとめたラインを損切ラインとして設定できる。

【売り条件】
1. バンド幅が縮小している。
2. 終値がボリンジャーバンド-2σを下抜けた。
3. 直近高値を損切ラインとして設定できる。

このEAでは、トレンドの初動に乗ることが狙いなので、「逆行したら早めに切る」「目標利益に届いたら機械的に利確する」といったリスク管理が特に重要になります。FXだけでなく、株式の寄り付き後のブレイクや、暗号資産の急騰局面などでも似たようなロジックを応用できます。

パラメーター設計とリスク管理の基本

どんなに優れたインジケーターの組み合わせでも、パラメーター設定とリスク管理が適切でなければ安定した結果にはつながりません。EAで特に意識したいポイントを整理しておきます。

まず、パラメーターについてです。移動平均線の期間、RSIの閾値、ボリンジャーバンドの期間や偏差などは、バックテストの結果を見ながら調整していきます。ただし、「最も成績が良かった数値をそのまま本番で使う」と、過去のデータに合わせすぎてしまい、将来の相場では機能しない可能性が高くなります。

過剰最適化を避けるためには、「ある程度広いレンジでそれなりの結果が出ているか」を確認することが重要です。例えば、移動平均線の期間を18〜22の範囲で変えても大きく成績が変わらないのであれば、ロジックに一定の頑健性があると判断しやすくなります。

次に、リスク管理です。ロットサイズは、口座残高に対する割合で考えるのが基本です。1トレードあたりの最大損失を残高の1〜2%以内に抑えるようにロットを設定しておくと、連敗が続いても口座が急激に減りにくくなります。

また、EAは24時間稼働させることが多いため、「どの時間帯は取引しないか」をあらかじめ決めておくことも重要です。流動性が低い時間帯や、重要指標発表前後など、スプレッドが広がりやすい時間帯はエントリーを停止する条件を組み込むことで、思わぬ損失を減らすことができます。

バックテストとフォワードテストの進め方

EAを作ったら、必ず過去のデータでバックテストを行い、その後デモ口座や小さなロットでフォワードテストを行うことが重要です。バックテストはロジックの大まかな優位性を確認するためのものであり、フォワードテストは「実際の約定環境でどう動くか」を確認するためのものです。

バックテストでは、期間をできるだけ長く取ること、異なる相場環境(トレンド・レンジ・高ボラティリティ・低ボラティリティ)を含めることがポイントです。例えば、数年間のデータを通して、「どのような相場環境でドローダウンが大きくなるのか」「連敗は最大で何回くらい起きるのか」を把握しておくと、実際の運用でメンタルがぶれにくくなります。

フォワードテストでは、最初はデモ口座でEAを動かし、想定通りのタイミングでエントリー・決済が行われているかを確認します。その後、本番口座でロットを小さくして動かし、「スプレッド」「スリッページ」「約定拒否」など、実際の環境特有の要素を踏まえて調整していきます。

初心者がハマりやすい落とし穴と回避の考え方

MT4でEAを自作し始めると、どうしても「もっと勝率を上げたい」「もっと利益を伸ばしたい」と考えてしまい、条件やインジケーターを増やしがちです。しかし、条件が複雑になるほど過去のチャートにロジックがフィットしすぎてしまい、将来の相場では機能しにくくなる傾向があります。

よくあるのが、「MACD」「RSI」「ストキャスティクス」「ボリンジャーバンド」「ADX」などをすべて組み合わせ、さらに時間帯フィルターや曜日フィルターを入れた結果、バックテストではほとんど負けないのに、リアル運用では成績が崩れてしまうパターンです。

これを避けるには、まず「ロジックの核となるインジケーターを1〜2個に絞る」ことが重要です。例えば、「トレンド方向は長期移動平均線」「エントリータイミングはRSI」のように役割分担を明確にし、それ以外は最小限のフィルターに留めます。

また、EAの損失をすべてロジックのせいにせず、「想定していたドローダウンの範囲内か」を冷静に確認する姿勢も大切です。どんなEAでも、負ける局面は必ず存在します。事前に「このロジックは、こういう相場では苦手」というパターンを理解しておくことで、感情的に止めたり、パラメーターを頻繁にいじってしまったりするリスクを減らせます。

まとめ:まずは1つのシンプルEAを小さく回してみる

MT4の基本インジケーターだけでも、十分にEAを自作し、検証していくことができます。ポイントは、難しいことをしようとするのではなく、「自分がチャートを見て行っている判断を、シンプルなルールに書き下ろす」ことです。

移動平均線でトレンド方向を決め、RSIやストキャスティクスで押し目・戻りを捉え、ボリンジャーバンドでブレイクアウトの局面を狙う。こうした基本的な組み合わせを、1つずつ丁寧に検証していくことで、自分なりのEAのスタイルが固まっていきます。

最初から大きなロットで運用する必要はありません。むしろ、小さなロットで「EAがどのように負けるのか」「どのような局面で利益が伸びるのか」を体感することが、長期的に安定した自動売買につながります。

基本インジケーターを使ったシンプルなEAは、派手さこそありませんが、「仕組みを理解しながら自分で改善していける」という大きな強みがあります。まずは1つ、移動平均線とRSIを組み合わせたEAなどから取り組み、自分のトレードスタイルに合った自動売買の形を探っていくとよいでしょう。

p-nuts

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

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

コメント

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