Trade Copier Console — локальный копир сделок между терминалами MetaTrader на одном компьютере или VPS. Он не закрывает ваши сделки, когда что-то пошло не так: он их удерживает и говорит, что происходит. Это главное свойство продукта, и всё руководство построено вокруг него.
Сборка MT5 копирует между терминалами MT5, а также с MT4 и на MT4. Сборка MT4 делает то же самое со стороны MT4. Мост работает во все стороны — 5→5, 4→4, 4→5, 5→4 — и для него нужны обе сборки: каждый терминал запускает свою.
Полные версии — в Маркете, по одной на платформу: (Trade Copier Console — MT5) и (Trade Copier Console — MT4).
Руководство общее для обеих платформ. Там, где MT4 и MT5 ведут себя по-разному, это сказано отдельно. Как поставить бесплатное демо и сделать первый прогон, описано в отдельной статье: (демо: установка и первый запуск).
Что нужно перед началом
Оба терминала — на одной машине. Копир общается через общую папку MetaTrader (%APPDATA%\MetaQuotes\Terminal\Common\Files). Это не ограничение продукта, а ограничение платформы: сеть между машинами потребовала бы DLL, а Маркет их запрещает. Побочный плюс: локальное копирование не выглядит для проп-фирмы как облачный сервис копи-трейдинга, который многие фирмы запрещают отдельным пунктом.
Разрешите советникам торговать в обоих терминалах — кнопка «Алготорговля» в MT5, «Авто-торговля» в MT4.
Хеджинговый счёт на приёмнике — предпочтительно. Неттинг поддерживается, но с оговорками, они собраны в последнем разделе.
Начните с демо-счёта. Всегда. Любой копир — это чужие решения на вашем счёте.
Быстрый старт за пять минут
Советник ставится на любой один график в каждом терминале. Символ и таймфрейм значения не имеют: копир работает со всем счётом целиком.
Терминал-источник. Настройка одна:
| Настройка | Значение |
|---|---|
| Account role | Source (send my trades) |
Источник публикует свои позиции и не торгует никогда.
Терминал-приёмник. Настроек три:
| Настройка | Значение |
|---|---|
| Account role | Receiver (copy trades to this account) |
| Master account numbers (comma separated) | номер счёта источника, например 50934471 |
| Lot sizing method | Risk a fixed percent of my equity |
| Risk per copy, % of my equity | 1.0 |
Несколько источников перечисляются через запятую, до восьми: 50934471, 61200318.
Готово. Панель приёмника покажет счёт мастера, зелёный статус LIVE и задержку шины. Откройте сделку на источнике — она появится на приёмнике.
Если мастер в панели не появился, а источник запущен, значит терминалы пишут в разные общие папки. Работающий источник кладёт в Common\Files\TCC\ файл m_<номер своего счёта>.bin. Файла нет — один из терминалов работает в portable-режиме или запущен от другого пользователя Windows, и общая папка у него своя. Копировать файлы руками бессмысленно, терминал нужно переставить.
Как читать панель
Панель приёмника читается сверху вниз, и каждый блок отвечает на свой вопрос.
| Блок | Что это |
|---|---|
| Два узла и линия между ними | Счёт мастера, ваш счёт и линия связи между ними с бегущими импульсами. Импульс — один доехавший снимок книги. |
| Подписи под узлами | Статус связи и число позиций с обеих сторон: LIVE — снимки свежие, MIRRORING — столько копий ведётся сейчас. |
| SIZING | Метод расчёта объёма, действующий прямо сейчас, вместе с параметром. |
| GUARD | Сколько израсходовано от дневного лимита, полосой и числом. |
| SPEED | Три честных числа: poll, bus, fill. Разбор ниже. |
| TODAY | Скопировано, пропущено, не удалось за сегодня. |
| Mirror | Построчное сличение позиций мастера с вашими копиями. Прокручивается; строки, требующие внимания, всплывают наверх. |
| EVENTS | Журнал последних событий с временем и задержкой. |
| Кнопки внизу | PAUSE, RESYNC, CLOSE COPIES. На источнике набор другой: PAUSE FEED, RESYNC, CLEAR LOG. |
На источнике панель отвечает на другой вопрос — не «что я скопировал», а «кто меня слушает». Слева свой счёт, сервер и число открытых позиций; справа — сколько приёмников подключено и сколько из них в синхроне; внизу вместо Mirror таблица RECEIVERS: счёт, сервер, число копий вида 4/4 и задержка по каждому приёмнику.
Цвета панели
Цвет означает кто должен действовать, а не «хорошо или плохо».
| Цвет | Значение |
|---|---|
| Зелёный | Сделано и живо. Копия открыта, объёмы сошлись, связь есть. |
| Медный | В пути или «обрати внимание». Ордер отправлен и ждёт брокера; отложка ждёт своего уровня; guard перевалил половину лимита. |
| Красный | Нужен человек. Отказ с причиной, потеря связи, сработавший guard. |
| Серый | Мастер молчит, либо копия осиротела — пары ей не нашлось. |
Направление сделки, buy или sell, цветом не кодируется — иначе цвет перестаёт что-либо значить.
Строка SPEED — три честных числа
| Число | Что означает |
|---|---|
| poll | Как часто копир смотрит на снимок мастера. Это ваша настройка Copy speed. |
| bus | Сколько сделка ехала по шине. В среднем это половина периода опроса — так устроена доставка: сделка появляется в случайный момент между двумя проверками. При poll 100 увидеть bus 48 нормально и правильно. |
| fill | Сколько думал ваш брокер над ордером. Обычно в разы больше первых двух. |
Если копирование кажется медленным — смотрите на третье число. Почти всегда медлит брокер, а не копир.
Кнопки
| Кнопка | Что делает |
|---|---|
| PAUSE | Остановить копирование. Открытые копии остаются и продолжают управляться. |
| RESYNC | Забыть карту и пересобрать её по рынку. Ничего не закрывает. Стирает историю закрытий — открытые сделки мастера будут скопированы заново. |
| CLOSE COPIES | Закрыть все копии, открытые копиром. Ручные сделки и сделки других советников не трогаются. |
Настройки:
Все настройки работают по умолчанию. Дальше они разобраны группами, в том же порядке, в каком идут в окне свойств советника.
Role
| Настройка | Смысл |
|---|---|
| Account role | Source — публиковать свои сделки. Receiver — копировать чужие. Self copier — умножать свои собственные сделки на этом же счёте. |
| Master account numbers (comma separated) | Номера счетов-источников через запятую, до восьми. Для роли Source не нужен. |
Lot sizing — как считается объём копии
Объём не переносится лотом. У вашего брокера золото может иметь размер контракта 10 против 100 у брокера мастера — «тот же лот» означал бы десятикратный риск. Копир переносит деньги.
| Метод | Что делает | Нужен стоп у мастера |
|---|---|---|
| Risk a fixed percent of my equity (по умолчанию) | Каждая копия рискует X% вашего эквити | Да |
| Mirror the master's risk share | Мастер рискнул 2% своего счёта — вы рискуете 2% своего | Да |
| Risk a fixed money amount | Каждая копия рискует ровно N долларов | Да |
| Proportional to equity | Лот × (ваш счёт / счёт мастера) | Нет |
| Master lot x multiplier | Лот мастера × коэффициент | Нет |
| Fixed lot | Всегда один и тот же лот | Нет |
| Same lot as master | Копия лота один в один | Нет |
| Lot per 1000 of my account | 0.01 лота на каждую 1000 счёта | Нет |
Если у мастера нет стопа, а метод требует стопа, копир не отказывает: он считает по пропорции и пишет об этом в журнал — no stop on master - sized proportionally.
| Настройка | Смысл |
|---|---|
| Account size means… | Эквити, баланс или свободная маржа — от чего считать |
| Scale for mirrored / proportional sizing | Общий множитель для пропорциональных методов |
| Minimum / Maximum copied lot | Границы объёма копии, 0 — без ограничений |
| Per-symbol lot override | Свой лот на символ: EURUSD=0.10; XAUUSD=0.05 |
| Per-symbol multiplier | Свой множитель на символ: EURUSD=2; XAUUSD=0.5 |
| Split a copy that exceeds the broker maximum lot | Копия больше максимума брокера режется на части автоматически |
| Split every copy into parts of this lot | Принудительно резать каждую копию на куски по N лотов — проп-фирмы иногда лимитируют лот на сделку. Потолок 64 ордера на копию: если кусков потребовалось бы больше, кусок увеличивается, но объём копии остаётся полным |
| Broker volume step override | Шаг объёма, если брокер сообщает его неверно — например 0.001 для крипты |
Filters — что копировать, а что нет
| Настройка | Смысл |
|---|---|
| Copy only these symbols / Never copy these symbols | Белый и чёрный списки. Имя можно писать в любом написании — сравнение идёт по ядру названия, так что EURUSD, eurusd.m и .EURUSDcash это один символ |
| Copy only these magic numbers / Never copy… | Фильтр по советникам мастера |
| Direction to copy | Обе стороны, только buy или только sell |
| Maximum spread to copy | Не копировать при широком спреде, 0 — выключено |
| Maximum slippage | Допустимое проскальзывание, пункты |
| Copy only trades whose comment contains / Never copy… | Фильтр по комментарию сделки мастера |
| Copy master positions already open at start | По умолчанию выключено: при запуске копируются только новые сделки. Включите, если хотите подхватить уже открытые |
| Copy stop loss and take profit | Переносить стопы мастера. Стопы едут как дистанция, а не как цена — при разных котировках это единственный правильный способ |
| Reverse | Копировать buy как sell и наоборот |
| Ignore master trades smaller / bigger than | Отсечь по размеру лота мастера |
| Skip if price already ran this far from master entry | Не влезать в сделку, которая уже ушла на N пунктов, 0 — выключено |
| Wait for a better price than the master entry + …better by at least | Ждать цену лучше входа мастера. Сделка может не открыться вообще — это по замыслу |
| Per-symbol spread caps | XAUUSD=50; BTCUSD=1500 |
Как считается «лучше» и «убежало». Только в координатах мастера: цена его входа против его же текущей цены. Сравнивать вашу котировку с ценой чужого брокера бессмысленно — они разъезжаются сами по себе.
Copy window — когда копировать
| Настройка | Смысл |
|---|---|
| Copy on Monday … Sunday | Дни недели |
| Copy only during these hours | Часы: 09:00-18:00. Можно несколько интервалов через запятую: 09:00-12:00,14:00-18:00. Работает и через полночь: 22:00-03:00 |
| Delay each copy by at least / at most | Задержка копии в секундах. Диапазон означает случайное значение внутри него |
| Do not copy a trade older than | Не копировать сделку, которой уже больше N секунд — защита от догоняния после долгого отключения |
Окно ограничивает только открытие. Закрытие работает всегда — иначе копия зависла бы открытой до понедельника.
Symbol matching — имена инструментов
Копир сам разбирается с именами символов, и обычно эту группу трогать не нужно. Мастер публикует свои префикс и суффикс, ваши определяются по вашему списку символов. EURUSD.r находит EURUSD, GOLD находит XAUUSD, USTEC100m находит NDX100.
Неоднозначность — это отказ, а не догадка. Копир скорее откажется и покажет список кандидатов, чем откроет не тот инструмент.
| Настройка | Смысл |
|---|---|
| Symbol aliases | Ручное соответствие, если автоматика не справилась: US500=SPX500; GOLD=XAUUSD |
| My symbol prefix / My symbol suffix | Ваши аффиксы, если автоопределение ошиблось |
Copy management — жизнь копии после открытия
Работает только на хеджинговых счетах.
| Настройка | Смысл |
|---|---|
| Leave SL/TP alone after I move them by hand | Вы двинули стоп копии рукой — копир больше не трогает её стопы никогда |
| Virtual SL/TP | Стопы не уходят брокеру. Копир держит их у себя и закрывает позицию при касании |
| Reopen a copy that hit its stop while the master still holds | По умолчанию выключено: копия, словившая стоп, не воскресает |
| My stop loss / take profit if none was copied | Свои уровни там, где мастер их не поставил |
| …or take profit as reward/risk of the stop | Тейк как R:R от стопа, например 2.0 |
| Move stop to entry after… + …plus offset | Безубыток |
| Start trailing after… · Trailing distance · Move the trail in steps of | Трейлинг-стоп. Шаг обязателен: без него модификация уходила бы на каждом тике |
| Close a copy after N minutes | Срок жизни копии |
| Close all copies on <день> at HH:MM | Закрытие по расписанию, например все копии в пятницу в 23:45. Переживает перезапуск терминала — второй раз за день не сработает |
| Close all copies at combined profit / loss | Корзина: суммарный плавающий результат всех копий, в деньгах или процентах |
Risk guard — защита счёта приёмника
| Настройка | Смысл |
|---|---|
| Daily loss limit (% и деньги) | Дневной убыток. Достигли — копирование стоп до следующего дня |
| Stop for the day after this profit (% и деньги) | Дневная цель прибыли. Хороший день забирается, а не отдаётся обратно |
| Total loss limit | Общая просадка от исторического пика баланса |
| Close everything if equity falls below / rises above | Жёсткие рельсы по эквити |
| Pause copying while master / my floating drawdown exceeds | Пауза при просадке. Открытые копии не трогаются |
| Trade server requests per day cap | Бюджет запросов к серверу. Проп-фирмы банят советники за флуд — у FTMO порог 2000 в день |
| Trip the guard at this % of the limit | По умолчанию 80%: остановиться на −4% при лимите −5% лучше, чем нарушить лимит на волатильной свече |
| Close open copies when the guard trips | Закрывать копии при срабатывании гарда |
| Maximum open copies / per symbol | Потолки по количеству |
| Maximum total / per-symbol open volume | Потолки по объёму |
| Maximum risk of all open copies / per symbol | Потолки по риску, нужны стопы |
| Never hold opposite positions on one symbol | Anti-hedge |
| Trading day starts this many hours from broker midnight | Для проп-счетов. Фирма считает день по своему времени, брокер по своему. Расхождение — это нарушение, которого ваш советник не видел |
Trading
| Настройка | Смысл |
|---|---|
| Copy speed | 25 / 50 / 100 (по умолчанию) / 250 / 500 мс. Разницы в исполнении между 50 и 100 на практике не видно, а машину 100 нагружает вдвое меньше. 250–500 — для слабого VPS с несколькими терминалами |
| Magic number for copied trades | Магик копий. По нему копии отделяются от ваших ручных сделок |
| Comment on copies | Комментарий. Подстановки: # — комментарий мастера, @ — его тикет, % — его магик, & — его счёт |
Panel и Notifications
Тема — тёмная или светлая, размер — автоматически по DPI экрана, позиция и шрифты настраиваются. Push-уведомления: на каждую копию, на срабатывание гарда, на потерю связи. Плюс дублирование на e-mail, для которого нужны почтовые настройки терминала.
Готовые рецепты
Копирование один в один на такой же счёт. Lot sizing method = Same lot as master.
Копирование на счёт другого размера. Lot sizing method = Proportional to equity. Счёт мастера 10 000, ваш 2 000 — лот делится на пять.
Копирование с честным риском, рекомендуется. Lot sizing method = Risk a fixed percent of my equity, Risk per copy, % of my equity = 1.0. Каждая копия рискует одним процентом вашего счёта — независимо от того, каким лотом торгует мастер, какой у него брокер и какой размер контракта у инструмента.
Мост MT4 → MT5. На MT4-терминале — MT4-сборка в роли Source. На MT5-терминале — MT5-сборка в роли Receiver, номер MT4-счёта в Master account numbers. Больше ничего. Частичные закрытия, доливки и отложки переезжают корректно в обе стороны.
Осторожный старт на чужом счёте:
| Настройка | Значение |
|---|---|
| Copy master positions already open at start | false — только новые сделки |
| Maximum open copies | 3 |
| Daily loss limit, % | 3.0 |
| Close open copies when the guard trips | true |
Отложенные ордера
| Режим | Что делает |
|---|---|
| Place a matching pending order (recommended) — режим по умолчанию | Ставит вашу отложку того же типа |
| Copy at trigger | Отложку не ставит. Когда она сработает у мастера, копирует получившуюся позицию по рынку |
| Do not copy pending orders | Отложки видны в панели, но не копируются |
Уровень переносится как расстояние от рынка. Buy-limit на 30 пунктов ниже рынка мастера станет buy-limit на 30 пунктов ниже вашего рынка. Абсолютную цену чужого брокера переносить нельзя — котировки не совпадают никогда.
Срок жизни переносится так же, как расстояние во времени. Если ваш брокер не поддерживает срок жизни ордеров, копир поставит ордер бессрочным и один раз напишет об этом в журнал: потерять срок лучше, чем не скопировать сделку.
Уровень уже пройден? Если у вашего брокера цена ушла дальше уровня, ордер исполняется по рынку немедленно: лимит за своим уровнем — это цена не хуже запрошенной, стоп за своим уровнем — это тот самый пробой.
Отложка сработала у мастера — ваша тоже срабатывает, а если не успела, догоняет по рынку. Дальше это обычная копия: подрезка, доливка и закрытие работают как всегда.
Reverse вместе с отложками. При развороте buy-limit должен был бы стать sell-stop — это другой тип ордера с другим смыслом. Копир не подменяет тип молча: при включённом Reverse отложки автоматически копируются по срабатыванию.
Стоп-лимиты MT5 не копируются — в MT4 такого типа нет, а тихо превращать их в обычные стопы значит исполнять по цене, которую мастер не просил. В панели — честный отказ с причиной.
Self copier: умножение своих сделок
| Настройка | Значение |
|---|---|
| Account role | Self copier |
| Lot sizing method | Master lot x multiplier |
| Master lot multiplier | 2.0 |
Ваша ручная сделка 0.10 — копир открывает свою на 0.20, итого в рынке 0.30. Закрыли ручную — копия закрывается. Копии несут магик копира и сами себя не копируют, иначе была бы экспонента.
Зачем это нужно: масштабирование ручной торговли без пересчёта лота в уме, и работает на MQL5 VPS.
На неттинговом счёте режим Self запрещён — советник не запустится. В неттинге ваша сделка и её копия сливаются в одну позицию, и «закрыть копию» означало бы закрыть вашу собственную сделку. Отказаться от старта честнее, чем сделать это.
Проп-счета
Что на самом деле убивает проп-счета при копировании — не детект копирования, а лаг копира. При развороте ордера уходят один за другим: на долю секунды один счёт уже short, а другой ещё long. Фирма видит counter position — и отключает все счета.
Поэтому разворот здесь исполняется как «закрыть → подтвердить flat → открыть». Новая сторона не отправляется, пока flat не подтверждён по книге. Состояния «часть long, часть short» не существует.
Профиль настроек под фирму:
| Настройка | Значение |
|---|---|
| Daily loss limit, % | 5.0 — правило фирмы |
| Total loss limit, % | 10.0 — правило фирмы |
| Trip the guard at this % of the limit | 80 — сработать заранее |
| Trading day starts this many hours… | смещение таймзоны фирмы относительно брокера |
| Trade server requests per day cap | 1500 — FTMO банит выше 2000 |
| Close open copies when the guard trips | true |
Каждое действие пишется в аудит-файл с миллисекундами — Common\Files\TCC\audit_<счёт>.csv. Им можно доказывать фирме форс-мажор.
Чего копир не делает: не рандомизирует лоты и не маскирует копирование. Фирмы ищут именно попытки обфускации, а FTMO и The5ers прямо запрещают позиции «существенно больше или меньше» остальных — то есть джиттер объёма сам становится нарушением. Детерминированный размер от эквити объясняется риск-менеджментом и защитим в апелляции.
Что копир говорит и что это значит
Причина отказа стоит прямо в той строке, где была бы копия.
| Сообщение | Что произошло | Что делать |
|---|---|---|
| symbol not found here (tried: BTCUSD, BTCUSD.r, BTCUSDT) | Инструмента нет у вашего брокера. Перечислено всё, что копир перепробовал | Добавить соответствие в Symbol aliases — или ничего, если инструмент вам не нужен |
| ambiguous symbol (candidates: …) | Подошло несколько имён. Копир не гадает | Указать явно в Symbol aliases |
| spread 42 > 30 pts | Спред шире вашего лимита | Ничего. Копир ждёт нормального спреда |
| not enough margin (need 412, free 180) | Не хватает свободной маржи | Уменьшить риск или пополнить счёт |
| lot rounds below the broker minimum | Расчётный объём меньше минимального лота | Увеличить риск или множитель |
| daily guard -5.0% reached | Сработал дневной лимит | Копирование возобновится в начале следующего торгового дня |
| master silent | Мастер не отвечает. Копии удерживаются | Проверить, что терминал-источник запущен |
| account number clash | Под этим номером счёта вещают два разных сервера — так бывает, когда у двух брокеров совпали номера. Копирование заморожено, копии удерживаются, ничего не закрыто | Оставить источником только один из терминалов, затем нажать RESYNC |
| no master pair (сирота) | Копир нашёл свою позицию, но не нашёл ей мастера | Решить самому: оставить или закрыть руками. Копир не закроет её сам |
| closed here - it will not be reopened | Копия закрыта вами или по стопу — она не воскреснет | Это ожидаемое поведение |
| pending, waiting | Отложка стоит и ждёт уровня | Ничего |
| pending level already passed | Уровень у вас уже пройден — вошли по рынку | Ничего |
| master holds both sides, anti-hedge is on | Мастер держит и buy, и sell по символу при включённом anti-hedge | Выключить anti-hedge или оставить как есть |
| … - retrying in 30 s | Брокер отказал по причине, которая за секунду не исправится | Прочитать саму причину перед этой припиской |
| netting: copying paused | Вы нажали CLOSE COPIES на неттинговом счёте | Нажмите PAUSE, чтобы возобновить копирование |
Диагностика
Копии не появляются. Панель показывает мастера и LIVE? Нет — значит неверен номер счёта в Master account numbers, либо источник не запущен, либо у терминалов разные общие папки. Строка в Mirror есть, но с причиной? Смотрите таблицу сообщений выше. Строки нет вообще? Сделку отсекли фильтры: символ, магик, комментарий, размер, направление, окно времени. Проверьте Copy master positions already open at start — по умолчанию он выключен, и уже открытые до старта сделки не копируются.
Копий стало больше, чем сделок у мастера. Скорее всего, запущены два экземпляра советника на одном счёте. Копир это ловит и отказывается стартовать вторым — Already running on <график> — но если вы видите дубли, проверьте графики.
Задержка выглядит большой. Смотрите строку SPEED. Число после fill — это ваш брокер, копир на него не влияет. Число после bus в среднем равно половине poll, это нормальная арифметика доставки.
Копия закрылась, а мастер держит. Так и должно быть в двух случаях: сработал ваш собственный стоп — у вашего брокера своя котировка — или сработало правило из Copy management: lifetime, корзина, расписание, виртуальный стоп. Причина в журнале и в аудит-файле. Хотите, чтобы копия восстанавливалась после своего стопа, — включите Reopen a copy that hit its stop.
Файлы, куда можно заглянуть:
| Файл | Что внутри |
|---|---|
| Common\Files\TCC\audit_<счёт>.csv | Полный журнал с миллисекундами |
| Common\Files\TCC\audit_<счёт>.1.csv | Предыдущий журнал — файл переворачивается на 5 МБ |
| Common\Files\TCC\m_<счёт>.bin | Снимок книги мастера |
| MQL5\Files\TCC\map_<счёт>.bin | Карта копий, локальная для терминала |
Карту можно удалить при остановленном советнике — копир пересоберёт её по рынку и ничего не закроет: то, что не удалось сопоставить, станет сиротой и будет ждать вашего решения.
Ограничения — честно
- Оба терминала — на одной машине. Сеть между машинами потребовала бы DLL, а Маркет их запрещает.
- MT4 и MT5 — отдельные покупки. Маркет платформо-специфичен. Мост работает во все стороны, но каждый терминал запускает свою сборку.
- Стоп-лимиты MT5 не копируются — в MT4 такого типа ордеров нет.
- Неттинговый приёмник должен быть выделен под копир. В неттинге позиция по символу одна на весь счёт, и отличить копию от вашей ручной сделки невозможно в принципе. На неттинге недоступны отложки и весь блок Copy management, а CLOSE COPIES дополнительно ставит копирование на паузу. Режим Self copier на неттинге запрещён.
- В тестере стратегий копирование не работает — копировать там не с кого. Панель при этом живёт, чтобы можно было посмотреть на продукт.
Попробовать всё это на демо-счёте можно бесплатно и без ограничений по функциям: (демо: установка и первый запуск). Полные версии — в Маркете: (Trade Copier Console — MT5) и (Trade Copier Console — MT4).


