EA運用を始めると、多くの人が次に考えるのが「複数EAの同時運用」です。
実際、EA-LabでもGENESIS・凜(RIN)・AXISを同時稼働させながら検証や運用を行っています。
ただ、この複数稼働というのは、単純にEAをたくさん起動すれば良いという話ではありません。
設定を間違えると、
・EA同士が干渉する
・ロットがおかしくなる
・注文が競合する
・MT5が重くなる
・最悪フリーズする
こうした問題が普通に起こります。
実際、EA-Labでも開発初期にかなり苦労しました。
今回は、MT5でEAを複数同時稼働させる方法と、実際に運用してわかった注意点を、開発者目線で解説していきます。
MT5は複数EAの同時稼働が可能
まず前提として、MT5は複数EA運用にかなり向いています。
MT4時代は制限も多く、動作も重くなりがちでしたが、MT5はマルチスレッド対応が強化されており、複数チャート・複数EAの運用がしやすくなっています。
例えば、
・GBPUSD M15 → GENESIS
・USDJPY M5 → 凜
・EURUSD M15 → AXIS
このように、別通貨・別時間足で同時稼働することが可能です。
EA-Labでも基本的にこの形で検証しています。
複数EA稼働の基本ルール
まず最重要なのはここです。
「1チャートに1EA」
これが基本です。
例えば、
・GENESIS用チャート
・凜用チャート
・AXIS用チャート
をそれぞれ分ける。
これを守らないと、EA同士が干渉する原因になります。
特に初心者の方で多いのが、
「同じチャートにEAを重ねる」
これはかなり危険です。
注文管理やポジション認識がズレる可能性があります。
通貨ペアと時間足は必ず確認する
意外と多いミスがこれです。
例えば、
GENESIS → GBPUSD M15専用
なのに、GBPUSD M5に入れている。
あるいは、
AXIS → EURUSD M15想定
なのに、USDJPYに適用している。
これ、普通に起きます。
EAはロジックごとに、
・想定通貨
・想定時間足
・想定スプレッド
・想定ボラティリティ
が決まっています。
なので、指定外環境で使うと、本来の性能はまず出ません。
EA-Labでも、開発時はかなり厳密に環境を固定しています。
実際の設定手順
手順自体はそこまで難しくありません。
① MT5を起動
まず通常通りMT5を立ち上げます。
② 通貨ペアごとにチャートを開く
例:
・GBPUSD
・USDJPY
・EURUSD
など。
③ それぞれ時間足を設定
例:
・GENESIS → M15
・凜 → M5
・AXIS → M15
④ ナビゲーターからEAをドラッグ
対象チャートへドラッグ&ドロップ。
⑤ 「自動売買を許可」にチェック
ここを忘れる人はかなり多いです。
また、MT5上部の「Algo Trading」がONになっているかも必ず確認してください。
⑥ スマイルマーク確認
チャート右上に表示される顔マークが正常なら稼働中です。
悲しい顔なら設定ミスの可能性があります。
EA同士の干渉で最も多い問題
これはかなり重要です。
複数EA運用で最も危険なのは、「ポジション管理競合」です。
例えば、
・AのEAが開いたポジションを
・BのEAが認識してしまう
こうした問題。
特にMagic Number未設定や、古いEAでは起こりやすいです。
Magic Numberとは?
簡単に言うと、「EAごとの識別番号」です。
EAはこの番号を使って、
「これは自分のポジションか?」
を判断しています。
つまり、
GENESIS → 1001
凜 → 2001
AXIS → 3001
のように分けることで、EA同士の干渉を防ぎます。
EA-LabのEAも、ここはかなり厳密に設計しています。
実際、開発初期にMagic Number管理が甘く、別EAがポジションを誤認識したことがありました。
これは本当に危険です。
VPS運用時の注意点
複数EA運用では、VPS性能もかなり重要になります。
おすすめのVPSに関してはこちらでまとめています。
特に、
・チャート数増加
・複数EA同時計算
・インジケータ負荷
が積み重なると、CPU使用率が上がります。
これが原因で、
・処理遅延
・約定遅れ
・MT5フリーズ
が起こることがあります。
EA-Labでも、検証EAを増やした際にVPSが重くなり、一時的に約定遅延が発生したことがあります。
以降は、
・不要チャート削除
・インジ最小化
・定期再起動
・余裕あるVPS選定
をかなり重視するようになりました。
EAでVPSで稼働するメリット・デメリットはこちらで開設しています。
複数EA運用で意外と危険なこと
初心者ほど見落としやすいのが、「リスクの重複」です。
複数EAの考え方が参考になります。
例えば、
・全部USD系
・全部ブレイクアウト系
・全部同じ時間帯エントリー
こうなると、実質1つのEAを大きなロットで回しているのと近くなります。
これはポートフォリオではありません。
運用リスクについてはこちらをどうぞ。
EA-LabがGENESIS・凜・AXISを分けているのは、
・ロジック
・通貨
・時間帯
・値動き特性
を分散したいからです。
実際、GENESISが苦しい相場でも、凜が安定する場面はあります。
逆もあります。
このズレが、長期運用ではかなり重要です。
EAを増やしすぎる問題
これもかなり多いです。
EAを増やすほど、安定すると思ってしまう。
ですが現実は逆で、
・管理難易度上昇
・監視負荷増加
・資金管理複雑化
・相関管理困難
が起こります。
EA-Labでも、「増やすより深める」を重視している理由はここです。
実際、3つを超えたあたりから管理負荷はかなり上がります。
だから初心者の方は、まずは1〜2本を安定運用できる状態を目指す方が圧倒的におすすめです。
MT5を複数起動する方法もある
上級者になると、「MT5自体を複数起動」するケースもあります。
例えば、
・リアル口座用MT5
・デモ検証用MT5
・別ブローカー用MT5
を分ける。
これはかなり便利です。
特にEA開発では、
・本番環境
・検証環境
を完全分離できるメリットがあります。
EA-Labでも、開発中は複数MT5を並行起動しています。
複数EA運用で本当に重要なこと
結局、一番重要なのは「増やすこと」ではありません。
重要なのは、
・各EAの役割を理解すること
・リスクを把握すること
・相関を考えること
・長期で継続できる構成にすること
です。
単にEAを増やすだけでは、逆に破綻リスクが上がることもあります。
これは実際に運用してみるとかなり感じます。
まとめ
MT5では、EAを複数同時稼働させることが可能です。
ただし、
・1チャート1EA
・Magic Number管理
・VPS負荷
・相関管理
・リスク分散
これらを理解せずに増やすと、思わぬ事故につながります。
EA-Labでも、GENESIS・凜・AXISを運用する中で、「増やすより、どう組み合わせるか」の方が圧倒的に重要だと感じています。
EAは数ではなく、構成です。
ここを意識するだけでも、長期運用の安定感はかなり変わります。