MACD EAの作り方をノーコードで解説!条件設定と検証手順

MACDを使ったEAは、クロス条件がわかりやすく、初めて自動売買ルールを形にする題材に向いています。ただし、「MACDが上抜けたら買う」だけでは、形成中の足でシグナルが消えたり、レンジ相場で売買を繰り返したりしやすくなります。
この記事では、MACD EAの作り方をノーコード前提で解説します。確定足でのクロス判定、フィルター、損切り・利確、重複エントリー防止までを一つのルールにまとめ、バックテストとデモ口座で確認する順番まで整理しました。最初から利益を約束するものではなく、狙った条件どおりに動く小さなEAを作るための手順です。
- MACDクロスを確定足で判定する方法がわかる
- 買い・売り・決済・停止条件を一つの仕様にできる
- ノーコードでMACD EAを組む順番がわかる
- バックテストで過剰最適化を避ける視点がわかる
MACD EAの作り方と売買条件

MACDの値と初期設定を決める
MACDは、短期EMAと長期EMAの差から相場の方向と勢いを捉えるトレンド追随型の指標です。MetaTrader 5の公式ヘルプでは、12期間EMAと26期間EMAの差をMACDとし、その9期間移動平均をシグナルラインとして表示する基本形が説明されています。
最初の検証では、一般的な12・26・9を基準にすると挙動を比べやすいです。ただし、これはどの通貨ペアや時間足でも最適という意味ではありません。期間を変える前に、対象通貨ペア、時間足、買いと売りの両方を扱うかを固定してください。EA自作全体の流れは、EA自作を初心者がノーコードで始める手順でも確認できます。
| 設定項目 | 最初の基準 | 先に固定する理由 |
|---|---|---|
| 短期EMA | 12 | 直近の値動きへの反応を決める |
| 長期EMA | 26 | 比較する大きな流れを決める |
| シグナル | 9 | クロスの基準線を決める |
| 時間足 | 一つに固定 | 異なる条件の結果を混ぜない |
確定足でクロスを判定する
買い条件の基本は、MACDラインがシグナルラインを下から上へ抜けるゴールデンクロスです。売り条件は、上から下へ抜けるデッドクロスになります。EAでは単に「MACDがシグナルより上」と比較するだけでなく、クロス前後の2本を比較しないと、上にいる間ずっと条件が成立してしまいます。
再現しやすい判定は、2本前の確定足と1本前の確定足を使う方法です。買いなら「2本前はMACDがシグナル以下、1本前はMACDがシグナルより上」、売りならその逆にします。形成中の現在足を使わないため、あとから見たときにクロスが消える問題を減らせます。
| 判定 | 2本前の確定足 | 1本前の確定足 |
|---|---|---|
| 買いクロス | MACD ≦ シグナル | MACD > シグナル |
| 売りクロス | MACD ≧ シグナル | MACD < シグナル |
現在足は反応が速い一方、足が確定するまでMACD値が変わります。最初のEAは確定足で作り、反応速度を比較したくなった段階で現在足版を別ロジックとして検証する方が原因を追いやすいです。
重複エントリーを防ぐ
正しいクロスを作っても、同じティックや同じ足で複数回注文を出せば、想定とは別のEAになります。エントリー前に、対象通貨ペアとマジックナンバーが一致するポジションを保有していないか確認します。1シグナル1回に制限し、新しい足へ切り替わったときだけ判定する設計も有効です。
買いと売りを同時に許可するか、反対シグナルでドテンするかも先に決めます。最初は「ポジションなしのときだけ新規注文」「保有中は決済条件だけを見る」と分けると、注文の流れが単純になり、検証もしやすいですね。
- 新しい確定足で一度だけ判定する
- 同じ通貨ペアとマジックナンバーの保有数を見る
- 保有中の追加注文を許可するか決める
- 反対シグナル時の決済と新規注文を分ける
フィルターは一つずつ足す
MACDクロスだけのEAは、方向感のない相場で小さな交差を繰り返しやすいです。そこで、ゼロライン、長期移動平均線、時間帯、スプレッドなどから、避けたい負け方に対応するフィルターを一つ選びます。
たとえばトレンド方向へ絞るなら、「買いはMACDがゼロより上」「終値が200EMAより上」といった候補があります。ただし、両方を一度に追加すると、取引回数が減った原因や成績が変わった理由を切り分けにくくなります。基準版を保存し、追加前後を同じ条件で比べるのが大切です。
| 避けたい場面 | フィルター候補 | 確認する副作用 |
|---|---|---|
| 逆方向のクロス | ゼロライン・長期EMA | トレンド初動を逃さないか |
| 値動きの小さい時間 | ATR・取引時間 | 取引回数が減りすぎないか |
| 取引コストの急増 | 最大スプレッド | 停止が想定どおりか |
| 重要指標時の急変 | 時間帯停止 | 停止と再開の時刻が正しいか |
損切りと利確を数値化する
エントリー条件と同時に、損切り、利確、最大保有時間、1回の許容損失を決めます。同じMACDクロスでも、出口が違えば成績とリスクは大きく変わります。最初は固定SL・固定TPのように、結果の理由を説明しやすい出口から試すのが扱いやすいです。
ロットは、口座資金だけで固定せず、許容損失額と損切り幅から逆算します。「許容損失額=口座資金×自分で決めたリスク割合」とし、損切りまで到達したときにその範囲へ収まるロットを使います。割合は、想定する連敗に耐えられるかを先に考えて決めてください。
時間足と通貨ペアを固定し、確定足のMACDクロスで1回だけエントリーします。ポジション保有中は新規注文を止め、固定SL・固定TPで決済。最初のバックテスト後にフィルターを一つだけ追加します。
MACD EAをノーコードで作る手順

売買ルールを日本語で書く
ノーコードツールを開く前に、条件を日本語で一文ずつ書きます。「上がりそうなら買う」ではなく、「いつ、何と何を比較し、成立したら何をするか」まで分解するのがポイントです。画面操作より先に仕様を作ると、必要なブロックと不足条件が見えます。
確定足のMACDクロス、売買方向、時間足、フィルターを文章にします。
SL、TP、ロット、最大保有時間、同時保有数を数値で決めます。
スプレッド、取引時間、連続注文、異常時に止める条件を加えます。
NoCode EA Studioで組む
仕様ができたら、NoCode EA Studioで条件をブロックへ置き換えます。公式案内では、ブラウザ上で条件ブロックを線でつなぎ、MT4・MT5用のEAを作成できます。まずMACD、クロス判定、買いまたは売り、SL・TPだけをつないだ最小版を作りましょう。
最小版を先に動かせば、注文が出ないときも、MACD値、クロス方向、確定足、ポジション制限のどこに原因があるか追いやすくなります。画面で条件を組めるため、MQLの文法よりも売買ルールの確認に時間を使えるのがノーコードの利点です。
MACD条件を画面で組みたいなら
NoCode EA Studioなら、MACDクロスから売買、損切り・利確までをブロックで組み立て、MT4・MT5向けのEA作成を試せます。
- MACDの期間と適用価格をそろえる
- クロス方向を買いと売りで分ける
- 確定足の参照位置を確認する
- SL・TPと保有数制限を設定する
注文前に動作を確認する
EAが完成しても、最初から損益だけを見ないでください。まず、MACDがクロスした足と注文した足が一致しているか、買いと売りが逆になっていないか、同じ足で複数回入っていないかを確認します。
取引が一度も出ない場合は、すべてのフィルターを外して最小版へ戻します。MACDクロスだけで注文が出ることを確認してから、ポジション制限、ゼロライン、長期EMA、時間帯の順に一つずつ戻すと、止めている条件を特定できます。
- 買いと売りの比較記号が逆になっている
- 形成中の足と確定足が混在している
- 保有ポジション判定が別通貨まで止めている
- フィルターが厳しすぎて取引が出ない
バックテストで採否を決める

注文位置が合っていると確認できたら、同じ通貨ペア、時間足、スプレッド、手数料、初期資金で基準テストを作ります。最終利益だけでなく、最大ドローダウン、取引回数、期待利得、プロフィットファクター、連敗数を並べてください。各指標の読み方は、MT4 EAバックテスト結果の見方で詳しく解説しています。
改善するときは、期間の一部を調整用、残りを未使用の確認用に分けます。調整用データで良くても、未使用期間で大きく崩れるなら、相場の特徴ではなく過去データの偶然へ合わせた可能性があります。パラメーターを細かく探すより、近い値でも成績が極端に変わらない範囲を選ぶ方が実運用へつなげやすいです。
| 確認項目 | 見たいこと | 危険な状態 |
|---|---|---|
| 取引回数 | 判断できる回数があるか | 数回の大勝ちだけで利益が出る |
| 最大ドローダウン | 資金減少を許容できるか | 利益に対して下落が大きい |
| 期間別損益 | 特定相場へ偏っていないか | 一期間だけ極端に強い |
| コスト | 実際の条件に近いか | スプレッドや手数料を無視する |
デモ口座で実運用との差を見る
バックテストを通過したEAは、デモ口座でフォワードテストします。実時間で動かすと、スプレッドの変化、約定タイミング、VPSや回線、取引時間のずれが見えてきます。過去データの成績と一致することを期待するのではなく、注文とリスク管理が設計どおり再現されるかを確認する工程です。
確認期間は日数だけで決めず、想定したシグナル数が集まったかも見ます。取引が少ないEAは判断まで時間がかかります。EAのフォワードテストをMT4デモ口座で行う確認項目を使い、注文漏れ、重複注文、SL・TP、停止条件を点検してください。
- バックテストと同じパラメーターで動かす
- エントリーした確定足を記録して照合する
- 重複注文と決済漏れがないか確認する
- 想定外の動作があれば最小版へ戻す
MACD EAの作り方で大切なのは、条件を増やすことではなく、クロス前後の値、確定足、保有数、出口、停止条件を曖昧にしないことです。まず12・26・9の最小版を作り、注文位置を確認し、その後に必要なフィルターを一つだけ足してください。
今すぐ最小版を形にしたい方は、NoCode EA StudioのアプリでMACD EA作成を試せます。作成したEAを実資金で使う前に、バックテストとデモ口座で挙動を確認し、許容できる損失範囲をご自身で決めてください。
