[MT4/MT5] コピートレードツール(EA) 使い方 無料ダウンロード
公開日:
:
コピートレードツール開発 MT4, MT5, コピートレード
目次/もくじ
[MT5→MT4]コピートレードツール(.ex5 .ex4)
まず、完成形をお見せします。

左がMT5で、右がMT4です。
ナビゲータの口座のところをみれば確認できると思います。
ローカルタイプのトレードコピーなので高速です。(パラメータを変更すればもっと早くできます。)
何でいきなりこんなものを作ったかというと、出来が良いMT5のEAがあったのですが、MQL5とMQL4の仕様の違いで移植できなかったので、MT4にコピーしようという魂胆です。
コピートレードツールとひとくくりに言ってもいろいろあるわけですが、シンプルに動く(専用外部ソフトを使用しない&早い&軽量な)コピートレードツールというのはなかなかないものです。
MT4は歴史が古く、広く普及している関係で、MT4間のコピートレードツールは、いくつかありますが、MT5MT4間のコピートレードツールはあまり見かけません。
ちょっと探して見つけたものもありましたが、外部ソフトを必要としたり、認証が必要なものでした。使えないことはないと思いますが、ちょっとバグがあったときに直せないのが嫌なので、エンジニアらしくDIYしました。
使い方
- MT4の適当な為替チャートにLocalCopyTradeTool(MT5toMT4).ex4をセット
- MT5の適当な為替チャートにLocalCopyTradeTool(MT5toMT4).ex5をセット
MT4のパラメータにMT5の口座番号を入力する(他にもPC上で稼働しているMT5がある可能性があるので、コピー元のMT5を特定する)
MT4のパラメータ設定
- SendersAccountNumber :MT5のアカウント番号
- FixedLot : ロット(固定)
- CopiedLot :ロット(MT5アカウントと同じロットにする)
- MaxSlippage : 最大許容スリッページ
- CopyTimeInterval : 反映サイクルインターバル(ミリ秒)
MT5EAのパラメータ設定
- CopyInterval :反映サイクルインターバル(ミリ秒)
やっていることは今までと同じですが、親(MT5)のロットをそのままコピーできる機能も付けておきました。(パラメータ:CopiedLot)
下記の画像は、CopiedLotをtrueにした場合です。MT5のオーダーのロットがMT4側にも反映されています。

[MT5->MT4]コピートレードツール(EA)ダウンロード
[MT5->MT4]コピートレードツール(EA)(.ex4)試用版ダウンロード
[MT5->MT4]コピートレードツール(EA)(.ex5)試用版ダウンロード
[MT5->MT4]コピートレードツール(EA)(.ex4)パスコード版ダウンロード
[MT5->MT4]コピートレードツール(EA)(.ex5)パスコード版ダウンロード
現在、EAを持て余したプログラマによる EA無料使い放題企画をしています。EAのパスコードは企画参加者に配布しています。詳しくはこちら
【口座番号の制限なしexファイル(0.1BTC~)、ソースコードmqファイル 譲渡可(価格応相談 0.3BTC~)】
仕様
- MT5側がネットアカウントタイプで、かつ、ロットの買い増し、分割決済をした場合、チケットナンバーのフラグがたたないので、MT4側には反映されません。ヘッジアカウントタイプの場合は問題ありません。
- 予約注文は約定したタイミングでコピーされます。・コピー元(親)でポジションを持っている状態で、コピー先(子)でそのポジションを手動決済した場合は該当のポジションは再度建玉しません。
- コピー中はコピー先(子)のアカウントで他の裁量・自動トレードできません。(汎用版はOKです)
[MT4→MT5]コピートレードツール(.ex4 .ex5)
まずは様子をご覧ください。

ちょっとラグがありますが、パラメータの設定を変えればもっと早くしたり遅くしたりすることができます。
(確認サイクルを早くすれば早くなりますが、負荷も増えます)
パラメータ設定
MT4側(.ex4) パラメータ設定:
- CopyInterval:コピーを監視する時間間隔(ミリ秒)
MT5側(.ex5) パラメータ設定:
- SendersAccountNumber ;コピーする親アカウントの口座番号
- CopyLot :親アカウントのロットをそのままコピーする場合true
- FixedLot :固定ロットでコピー
- Slippage :最大許容スリッページ
- CopyInterval :コピーを監視する時間間隔(ミリ秒)
- FillingMode:FOKかIOC(上手く動作しなかったら変えてください)
受け手のMT5はいくつでも同時にコピー可能なので、同時に2つのMT5にコピーすることも可能です。
仕様
- 予約注文は約定したタイミングでコピーされます。
- コピー元(親)でポジションを持っている状態で、コピー先(子)でそのポジションを手動決済した場合は該当のポジションは再度建玉しません。
- コピー中はコピー先(子)のアカウントで裁量トレードできません。(汎用版は裁量OKです)
[MT4→MT5]コピートレードツール(EA)ダウンロード
[MT4→MT5]コピートレードツール(EA)(.ex4)試用版ダウンロード
[MT4→MT5]コピートレードツール(EA)(.ex5)試用版ダウンロード
[MT4->MT5]コピートレードツール(EA)(.ex4)パスコード版ダウンロード
[MT4->MT5]コピートレードツール(EA)(.ex5)パスコード版ダウンロード
現在、EAを持て余したプログラマによる EA無料使い放題企画をしています。EAのパスコードは企画参加者に配布しています。詳しくはこちら
【口座番号の制限なしexファイル(0.1BTC~)、ソースコードmqファイル 譲渡可(価格応相談 0.3BTC~)】
[MT5→MT5]コピートレードツール(.ex5)
MT5からMT5にトレードをコピーするツールです。

これはMT5(IFC)からMT5(FXOpen)にトレードをコピーしている様子です。
パラメータ設定
- SenderOrReceiver:送り側か受け側か
- SendersAccountNumber:送り手の口座番号(受け手の場合入力)
- CopyLot:送り手のロットをそのままコピーする場合はtrue(受け手の場合入力)
- FixedLot :送り手のロットを無視して、固定ロットでトレードする場合はロットを入力(受け手の場合入力)
- TaskCycle:演算間隔の時間(ミリ秒)小さくするほど早くなります。
- Slippage:最大許容スリッページ
- FillingMode:FOKかIOC(動かなかったら変更してください)(受け手の場合)
受け手のMT5はいくつでも同時にコピー可能なので、同時にMT5を3つ起動させて、2つのMT5にコピーすることも可能です。
EAダウンロード
[MT5->MT5]コピートレードツール(EA)試用版ダウンロード
[MT5->MT5]コピートレードツール(EA)パスコード版ダウンロード
現在、EAを持て余したプログラマによる EA無料使い放題企画をしています。EAのパスコードは企画参加者に配布しています。詳しくはこちら
【口座番号の制限なしexファイル(0.1BTC~)、ソースコードmqファイル 譲渡可(価格応相談 0.3BTC~)】
仕様
- 予約注文は約定したタイミングでコピーされます。
- コピー元(親)でポジションを持っている状態で、コピー先(子)でそのポジションを手動決済した場合は該当のポジションは再度建玉しません。
- コピー中はコピー先(子)のアカウントで裁量トレードできません。(汎用版は裁量OKです)
[MT4→MT4]コピートレードツール(.ex4)
MT4からMT4へのコピートレードツールに関しては開発の仕方から解説しているので、ダウンロードも含めてそちらのページを参照してください。
[MT4からMT4へ]コピートレードツールを作る,使い方,ダウンロード
[MT4⇔MT5] 一体型コピートレードツール(.ex4 .ex5)
これまで、MT4->MT4, MT4->MT5, MT5->MT4, MT5>MT5のコピートレードツールを全4種類作ってきたわけですが、「管理も更新もめんどくさいよ」と作った本人が思っていたわけです。
という訳で、MT4、MT5それぞれ一つずつのEAで、かつ、パラメータでコピー元(親)、コピー先(子)を変更できるEAを開発しました。

gif画像はこれまでのものですが、基本的な操作は一緒です。
EAのパラメータ(MT4,MT5共通)
- SenderOrReceiver:コピー元(親)の場合はSender, コピー先(子)の場合はReceiver
- SendersAccountNumber :親のアカウント番号(レシーバーのとき)
- CopiedLot:親のロットごとコピーする場合にtrue;(レシーバーのとき)
- FixedLotForReceiver :親のロットとは関係なく固定ロットの場合は入力;(レシーバーのとき)
- ReverseMode:リバースモード。親と逆向きにエントリーする場合にtrue;(レシーバーのとき)
- MaxSlippage:最大許容スリッページ;(レシーバーのとき)
- CopyInterval:コピー監視時間間隔(ミリ秒);
- FillingMode:(MT5だけ)FOKかIOC動かなかったら変更してください。(レシーバーのとき)
これ一つあれば、コピー元、コピー先がMT4でもMT5でもコピーできます。MT5用の良いEAもMT4に移植したり、MT4の良いEAをMT5にコピーできるようになります。
ただし、MT5がネッティングアカウントの場合は、親にしないようにするか、ナンピン・部分決済を避けて使う必要があります。
仕様
- 予約注文は約定した瞬間にコピーされます。
- コピー元(親)でポジションを持っている状態で、コピー先(子)でそのポジションを手動決済した場合は該当のポジションは再度建玉しません。
- コピー中はコピー先(子)のアカウントでも裁量トレードできます。
[MT4⇔MT5] 一体型コピートレードツールEAのダウンロード
CrossPlatformLocalTradeCopier(MT5MT5_MT5MT4_MT4MT5) 試用版.ex4ダウンロード
CrossPlatformLocalTradeCopier(MT5MT5_MT5MT4_MT4MT5) 試用版.ex5ダウンロード
CrossPlatformLocalTradeCopier(MT4MT4_MT4MT5_MT5MT4)パスコード版.ex4ダウンロード
CrossPlatformLocalTradeCopier(MT5MT5_MT5MT4_MT4MT5)パスコード版.ex5ダウンロード
現在、EAを持て余したプログラマによる EA無料使い放題企画をしています。EAのパスコードは企画参加者に配布しています。詳しくはこちら
【口座番号の制限なしexファイル(0.1BTC~)、ソースコードmqファイル 譲渡可(価格応相談 0.3BTC~)】
2020最新版 MT4⇔MT5 コピートレードツール
基本的にこれまでのコピートレードツールは約定のタイミングでオーダーが反映されるという仕様でした。しかし、「指値、逆指値注文も反映するようにしてほしい」、「親口座の資金とロットの比率から受信口座のロットを自動算出してほしい」などの要望があったので、その二つを主軸に新たに実装しました。
また、全体的にプログラミングを加筆・修正することで、より高速で安定したオーダーの反映がされるようになっています。(この点においては、我ながらかなり向上したと思います。MT4/MT5のウィンドウを切り替えてコピーされたか確認するころにはコピーが反映されています。)
MT5/MQL5の悪い癖も以前よりも把握した状態でコーディングを行ったので、以前よりもフェイルセイフ(安全装置)も充実しています。
2020版コピートレードツール使い方
コピーするMT4/MT5とコピーされるMT4/MT5にそれぞれ一つずつチャートを用意し、EAを一つずつセットします。ひとつのチャートにセットすれば、そのほかの通貨ペアも自動的にチェック/トレードされます。
時間枠は1分足~日足どれでも構いません。ただし、チャートはFX,仮想通貨など6文字か6文字+αで構成されるものである必要があります。(良い例:USDJPY, USDJPYm, USDJPY., BTCUSD, BTCUSD_。ダメな例:SPXm, JP225, gold)
外部ソフト、DLL、追加ライブラリなどは一切必要ありません。EA単体で動作します。
パラメータ設定
- SenderOrReceiver:トレードを送信する側(親、配信元、配信口座)の場合はSender, トレードを受信する側(子、配信先、受信口座)の場合はReceiver
- SendersAccountNumber_whenReceiver:受信口座の場合のみ。配信口座の口座番号をここに半角で入力。
- AutoLotOrFixedLot_whenReceiver:受信口座の場合のみ。ロットを固定にするか配信口座のロット比率にするか選択
- FixedLot_whenReceiver:受信口座の場合のみ。固定ロットの場合に固定ロットをここに入力。
- CalcInterval_in_milisec:コピーを監視する時間間隔。100=100ミリ秒=0.1秒ごとにチェック。
- FillingMode:MT5、かつ、受信口座の場合のみ。MT5のオーダーのフィリングモード。
- CheckingHistoryDays:MT5、かつ、受信口座の場合のみ。オーダーの重複をさけるための履歴をチェックする履歴の日数。
2020版コピートレードツールダウンロード
LocalTradeCopier(MT4MT5CrossPlatformVer)4.0パスコード版.ex4ダウンロード
LocalTradeCopier(MT4MT5CrossPlatformVer)4.0パスコード版.ex5ダウンロード
現在、EAを持て余したプログラマによる EA無料使い放題企画をしています。EAのパスコードは企画参加者に配布しています。詳しくはこちら
【口座番号の制限なしexファイル(0.1BTC~)、ソースコードmqファイル 譲渡可(価格応相談 1.0BTC~)】
仕様
- MT4->MT4, MT4->MT5, MT5->MT4, MT5->MT5のコピーが可能です。
- ティック到達に依存しないので、ZARJPYでもEURUSDでも同じ速度でコピーします。
- M1チャートにセットしてもD1チャートにセットしても同じ速度でコピーします。
- 成行注文同様に、予約注文(指値注文、逆指値注文)、決済予約注文(指値注文、逆指値注文)も反映されます。
- 受信口座、配信口座とも、ZARJPYmのように通貨ペア名に添え字がついている場合でも、ついていない場合でも問題ありません。
- ライブ口座、デモ口座どちらでも稼働します。
- 受信口座のストップレベルが広く、ストップレベル未満の予約注文をコピーしようとすると(当たり前ですが)エラーになります。
- MT4ではストップリミット注文が実装されていない関係上、MT5を配信口座に設定してストップリミット注文を行った場合は反映されません。
- 業者によってシンボル名が著しく異なる銘柄(日経225や商品先物)は反映されません。
- 受信口座がAutoLotを選択して、計算されたロットが最小ロット未満の場合は最小ロットに修正されます。
- 自動ロット計算は、配信口座の資産(円換算):配信口座のロット=受信口座の資産(円換算):受信口座のロット になるように計算されます。(レバレッジは関係ありません。)
- 対応口座通貨は、JPY, jpy, USD, usd, EUR, eur, BTC, btc, BIT, bitです。それ以外の口座通貨ではAutoLotが正常に機能しない可能性があります。
- MT5はヘッジアカウントをご利用ください。
- コピーするには配信MT4/MT5と受信MT4/MT5が同じコンピュータ上(同じ起動OS上)にある必要があります。
WEBを経由するコピートレードツール(MT4⇔MT5)
[MT4/MT5]WEBサーバーを経由するコピートレードツール[EA]
MT5のアカウントタイプに関する注意事項
マージンタイプ
MT5には現在ネッティングアカウントとヘッジアカウントが存在します。
オーダー毎にポジションを分けて管理するのがヘッジアカウントで、合体させるのがネッティングアカウントです。
これをごっちゃにするとおかしなことになります。
パターン1:親:ヘッジタイプ 子:ヘッジタイプ
MT4と同じ。 何の問題もなし
パターン2:親:ネットタイプ 子:ネットタイプ
追加建玉、部分決済は反映されない。これをコピーさせるにはディールの処理が必要。(不可能ではないので、需要があれば実装するかも)
パターン3:親:ヘッジタイプ 子:ネットタイプ
通常オーダーの場合は問題なし。
ただし、親が追加ポジションを取った場合は、親の最後のチケット番号で子のマジックナンバーが上書きされるので、
親が最後に取ったポジションを決済したときに子のポジションが一気に決済される。
パターン4:親:ネットタイプ 子:ヘッジタイプ
追加建玉、部分決済は反映されない
ややこしいですが、要するに、
- ナンピンなどをしないのなら気にする必要なし。
- ナンピンをするのならヘッジアカウントタイプ同士で。
ということになります。
チャートの左上にどちらの口座タイプか表示するようにしたので、そちらも確認してください。
MT5のオーダーフィリングモード
MT5にはフィリングモードという約定方式があります。FOKとIOCとRETURNがあります。それぞれ対応しているフィリングモードが異なるので、FX会社が対応しているフィリングモードを選ぶ必要があります。
具体的には、XMはFOKに対応していないのでIOCにしなければなりません。
FOK : 注文数量を全部すぐに約定させる。ダメな場合、全部リクオートする
IOC:注文数量が部分的に約定できる場合は、部分的に約定させる
注:ネッティングのMT5では決済という概念がない
MT5では決済という概念が口座種別によっては存在しない場合があります。具体的に言うと、反対ポジションのオーダーをする=決済をするという処理になります。(ネッティングタイプの口座の場合)
これがコピートレードにどのような影響があるかというと、MT5で新規のオーダーが送信された場合に、それが新規のポジションなのか決済処理なのかを判別することが簡単にはできない、ということになります。
このことが次に繋がります。
注:MT5(ネッティング)ではロットを追加した場合、チケット番号が出ない
MT4では同じ通貨ペアに対して同じ方向にオーダーを送信すると、別途新しいチケット番号が発行されます。コピートレードではその新規のチケット番号をもとにオーダーを識別管理することが可能でした。
しかし、MT5の場合、チケット番号がオーダー処理ベースではなく、ポジションベースのため、ここでMT4と照らし合わせたとき、不都合が生じます。(ヘッジアカウントタイプは別)
1つ、2つ、オーダーを出して、それを決済するような”普通の”トレードロジックの場合、問題はありません。ピラミッティング、部分決済の場合は新しいオーダーはコピーされません。
関連記事
-
-
[MT4/MT5]WEBサーバーを経由するコピートレードツール[EA]
この記事ではWEBサーバーを経由するMT4/MT5のコピートレードシステムの作り方について解説します
-
-
[MT4からMT4へ]コピートレードシステムを作る,使い方,ダウンロード
ツールの特徴 MT4で自動売買ソフトを稼働させるトレーダーには、ときとしてトレードを別のMT4にコ
コメント
コピーツールに関してですが、実際の使用にあたって、やはりコピーするLotの比率を変えられると良いかと思います。
し運用する口座によって、資金が違ったりしますので。
MT4⇨MT4のコピーツールを使用させていただきましたが、非常にスムーズに作動しますね。
Lot比率だけ対応できるようであれば、すぐ実用できそうなので、ご対応いただけると嬉しいです!