FX EAツール

MT4コピー補助ツール 無料配布

GJOG.JP / FX / MT4 / VPS / COPY TOOL / 自己責任でどうぞ

MT4コピー補助ツール 無料配布

MT4をいじっていると、たまにこういう場面があります。

  • こっちのMT4で入ったポジションを、別のMT4にもコピーしたい
  • 複数の口座に同じエントリーを流したい
  • GOLD_USDとXAUUSDpのような、証券会社ごとの銘柄名の違いを吸収したい
  • 部分決済後の残ロットも、なるべくズレずに追従したい
  • 受信側で裁量取引をしても、コピーEAに触らせたくない

そんなわけで、MT4間の注文コピーを補助するツールを作りました。

発信側MT4で発生した成行ポジション情報を、共通ファイル経由で受信側MT4へ渡し、受信側MT4でも同じように注文・決済・残ロット補正を行うためのコピー補助ツールです。

最新版は Sender v2.6 SAFEWRITE / Receiver v8.3 CYCLE IGNORE SHARE 版です。

うまく使えば便利です。設定を間違えると普通に事故ります。まずはデモ口座か最小ロットで試してください。


最新版の構成

現在の配布版は、以下の組み合わせを前提にしています。

役割最新版ファイル名内容
発信側EACT_OriginalSender_JP_v2_6_DIRECT_END_STATE_SAFEWRITE_MT4発信側MT4にセットし、現在の成行ポジション状態をStateファイルへ安全に書き出します。
受信側EACT_OriginalReceiver_Multi_JP_v8_3_CYCLE_IGNORE_SHARE_MT4受信側MT4にセットし、Stateファイルを読み取ってコピー注文・決済・残ロット補正を行います。
同期方式Stateファイル方式 / ENDチェック付き / 残ロット同期型コピー元の現在状態を見て、受信側のコピーEA注文を合わせる方式です。
安全対策SAFEWRITE / SHARE / CYCLE IGNOREファイル書き込みエラーや読み込み途中の空State誤認、旧サイクルの残骸処理を避けるための安全機能です。

v2.6 Sender の変更点

Sender v2.6では、Stateファイルの書き込み処理を見直しました。

  • CT_CopyTrade_state.csv を直接追記する方式ではなく、SAFEWRITE方式へ変更
  • 一時ファイルへ書き込み後、完成したStateファイルへ置き換え
  • FileOpen時に共有許可を追加し、5004系のファイルオープンエラーを起こしにくく調整
  • Receiver側が読み込み途中のStateを誤認しにくいよう、END行付きStateを出力

画面左上に State written SAFEWRITE と表示されていれば、Stateファイルの書き込みは正常です。

v8.3 Receiver の変更点

  • Stateファイル読み込み時の共有許可を強化
  • 裁量注文や他EA注文をMagicNumberで分離
  • 起動時点で既にあるシグナルは安全のためスキップ可能
  • コピー元ゼロ判定を複数回確認し、空Stateの一発誤認を避ける
  • 旧サイクルや手動決済後の再コピーを避けるためのCYCLE IGNORE機能を搭載
  • コピー元の合計ロットに対して、受信側コピーEA注文の残ロットを寄せる方式

このツールでできること

MT4コピー補助ツールの流れ
  • MT4から別のMT4へ成行ポジション情報をコピー
  • 1つの発信側MT4から、複数の受信側MT4へコピー
  • GOLD_USD → XAUUSDp のような通貨ペア名の変換
  • 受信側ごとのロット倍率設定
  • 部分決済後の残ロット同期
  • コピー元が全決済された時の受信側全決済
  • 受信側の裁量注文をコピーEAの管理対象から分離
  • 旧シグナル・旧サイクルの再コピー防止

投資助言でも、勝てるEAでも、利益保証ツールでもありません。MT4間のコピーを補助するための道具です。


大事な仕様

1. コピー対象は約定済みの成行ポジション

buy limit / sell limit / buy stop / sell stop などの未約定注文は、基本的にコピー対象外です。

DOW30などで指値注文が置かれているだけの状態ではコピーされません。指値が約定して成行ポジションになった時点で、コピー対象になります。

2. 見るべきは本数ではなく合計ロット

最新版は、コピー元のチケットを完全再現するというより、コピー元の現在合計ロットに受信側のコピーEA注文を合わせる考え方です。

たとえばDOW30でコピー元が0.08ロットから段階的に部分決済していく場合、受信側も同じ方向・同じ銘柄のコピーEA注文合計ロットが 0.08 → 0.06 → 0.04 → 0.02 → 0 のように追従することを確認します。

3. 起動前からあるポジションはスキップされる場合があります

安全のため、Receiver起動時点ですでに存在していたシグナルは「既存シグナル」としてスキップされる場合があります。

クリーンに検証する場合は、コピー元・受信側ともノーポジ、予約注文なしの状態にしてからテストしてください。

4. 複数Senderはファイル名を分ける

同じCommon Files上で複数のSenderを動かす場合、Stateファイル名を分ける必要があります。

複数のSenderが同じ CT_CopyTrade_state.csv を書き換えると、Receiverが別口座のStateや空Stateを読んで、勝手な決済・再エントリーの原因になります。


配布ファイル構成

場所内容
MQL4 / ExpertsCT_OriginalSender_JP_v2_6_DIRECT_END_STATE_SAFEWRITE_MT4.ex4
CT_OriginalReceiver_Multi_JP_v8_3_CYCLE_IGNORE_SHARE_MT4.ex4
Common / FilesCT_CopyTrade_state.csv
CT_symbol_map.csv
CT_processed_口座番号.csv
CT_ticket_map_口座番号.csv
CT_cycle_ignore_口座番号.csv
マニュアル設定方法、通貨ペア変換、クリーンテスト、免責事項

ZIPファイルをダウンロード後、Expertsフォルダ内のEAをMT4の MQL4 / Experts へ入れ、MetaEditorでコンパイル済みの場合はEX4を利用してください。


基本構成

発信側MT4にSenderを入れ、受信側MT4にReceiverを入れます。

Senderが発信側MT4の成行ポジション状態を共通ファイルへ書き出し、ReceiverがそのStateファイルを読み取って受信側MT4でコピー注文・決済・残ロット補正を行います。

役割使うEA設置場所
発信側MT4CT_OriginalSender_JP_v2_6_DIRECT_END_STATE_SAFEWRITE_MT4MQL4 / Experts
受信側MT4CT_OriginalReceiver_Multi_JP_v8_3_CYCLE_IGNORE_SHARE_MT4MQL4 / Experts

通貨ペア名の変換について

シンボル名変換と設定の自由度

証券会社によって、同じGOLDやDOW30でも銘柄名が違うことがあります。

たとえば、発信側ではGOLD_USD、受信側ではXAUUSDpという名前になっている場合があります。

その場合は、外部ファイルの CT_symbol_map.csv に以下のように書きます。

GOLD_USD=XAUUSDp
GOLD_U=XAUUSDp
DOW30_USD=DOW30_USD
EURUSD=EURUSD
USDJPY=USDJPY

左側が発信側MT4の銘柄名、右側が受信側MT4の銘柄名です。受信側ブローカーに存在しない銘柄名を指定すると注文できません。


推奨設定の考え方

Sender側

項目推奨説明
共通フォルダを使うtrueCommon Filesを使って受信側MT4と共有します。
書き込みシグナルファイル名CT_CopyTrade_raw.txt互換用。最新版ではState同期が中心です。
現在状態ファイル名CT_CopyTrade_state.csvReceiver側と完全一致させます。
監視間隔ミリ秒250前後短すぎると負荷が上がります。
起動時の既存ポジションを新規送信するfalse推奨既存ポジションの重複コピーを避けるため。
成行ポジションのみ送信true推奨指値・逆指値は送信しません。
マジックナンバーで絞るfalseコピー元口座の成行ポジションを全部送りたい場合はfalse。
TOTAL行も出力trueReceiverが合計ロット同期に使います。

Receiver側

項目推奨説明
共通フォルダを使うtrueSenderと同じCommon Filesを読みます。
現在状態ファイルで同期trueStateファイル方式で同期します。
rawシグナル新規コピーを完全無視true旧raw方式の影響を避けます。
状態ファイルEND行を必須にするtrue未完成Stateを読まないための安全機能です。
コピー元ゼロ判定の連続確認回数3以上空Stateの一発誤認を避けます。
裁量注文を完全無視するtrue手動注文や他EA注文を触らないため。
TOTAL同期では同一通貨同方向を全て対象false裁量注文を合算しないため、基本false推奨。
不足ロットを自動で追加通常 true / DOW30検証時は慎重に不足分を追加します。DOW30の段階利確検証時はfalseで見ることもあります。
受信側ロット過多を自動部分決済trueコピー元より多い分を減らします。
コピー元消滅時に受信側も全決済trueコピー元がゼロになった時にコピーEA注文を閉じます。
SLTPコピーfalse推奨建値差・スプレッド差が出るため、まずはfalseで検証推奨。

クリーンテスト手順

旧バージョンのマップや処理済みファイルが残っていると、コピー漏れ・残ロットズレ・旧ポジション無視などの原因になります。検証前は一度クリーンにしてください。

削除候補ファイル

CT_CopyTrade_raw.txt
CT_CopyTrade_state.csv
CT_CopyTrade_state.csv.tmp
CT_processed_口座番号.csv
CT_ticket_map_口座番号.csv
CT_cycle_ignore_口座番号.csv

場所は通常、以下です。

C:\Users\ユーザー名\AppData\Roaming\MetaQuotes\Terminal\Common\Files

本当にまっさらに検証する場合は、コピー元・受信側ともノーポジ、予約注文なしの状態で行ってください。

動作確認の順番

  1. コピー元・受信側ともノーポジにする
  2. Sender / Receiverを外す
  3. Common FilesのCT系ファイルを削除
  4. Sender v2.6だけを発信側MT4にセット
  5. 画面左上に State written SAFEWRITE と出ることを確認
  6. Receiver v8.3を受信側MT4にセット
  7. 受信側が state empty, confirmed receiver positions should be zero のような待機状態になることを確認
  8. コピー元でGOLD 0.01成行を1本だけ入れる
  9. 受信側に倍率通り1本だけ入ることを確認
  10. コピー元で決済し、受信側も決済されることを確認
  11. DOW30など特殊銘柄は、最後に小ロットで検証

無料配布について

本ツールは無料配布版として提供しています。

無料配布版のため、個別サポート、設定代行、VPS設定、複数MT4構築、個別環境での動作確認は原則として含まれません。

導入や設定のサポートが必要な場合は、有料対応となる場合があります。

設定サポートについて

導入、VPS設定、複数MT4設定、通貨ペア変換リストの作成などでサポートが必要な場合は、LINEからご相談ください。

VPSについて

EA運用では、MT4を安定して動かし続ける環境がかなり大事です。

パソコンの電源、Windowsアップデート、回線切断などでMT4が止まると、コピーも止まります。複数MT4を動かすならVPS運用を推奨します。


必ず確認してください

  • 必ずデモ口座、または最小ロットで検証してください。
  • 証券会社やプロップファームの規約は自分で確認してください。
  • スプレッド、約定拒否、通信遅延、MT4停止、VPS停止などで動作が変わることがあります。
  • 意図しない注文、決済、重複注文、コピー漏れが発生する可能性があります。
  • 取引損益、口座停止、出金拒否、プロップファーム失格などについて、配布者は責任を負いません。
  • 同じCommon Files上で複数Senderを動かす場合は、必ずStateファイル名を分けてください。

ダウンロード

以下から配布ファイルとマニュアルをダウンロードできます。


更新履歴

日付内容
2026.06.18Sender v2.6 SAFEWRITE / Receiver v8.3 CYCLE IGNORE SHARE版へ更新。Stateファイル書き込みの安定化、5004系エラー対策、CYCLE IGNORE・共有読み書き対応を追加。
2026.05.05無料配布版を公開。

だいたい便利ですが、油断すると普通に壊れます。まずは小さく試してください。

FXカテゴリの記事一覧

MT4、VPS、EAまわりの記事はFXカテゴリーにもまとめています。