Copy Receiver
- Утилиты
- Версия: 3.27
- Активации: 20
EmilonCopy Receiver — советник-приёмник для платформы MetaTrader, который автоматически повторяет сделки провайдера на счёте подписчика. Работа построена по схеме «сервер сигналов»: сделки провайдера публикуются на сервере Emilon, а приёмник через заданный интервал опрашивает сервер по протоколу HTTPS (WebRequest) и приводит состояние счёта подписчика в соответствие с состоянием счёта провайдера.
Ключевая особенность архитектуры — полная синхронизация по состоянию, а не по событиям. Приёмник не «догоняет» пропущенные сигналы, а каждый цикл сверяет полный список позиций провайдера со своими: недостающие открывает, лишние закрывает, изменившиеся по объёму — пересинхронизирует. Это делает работу устойчивой к обрывам связи, перезапускам терминала и пропускам опросов.
Кросс-платформенность: MT4 ↔ MT5
Приёмник существует в двух сборках — MQL4 и MQL5, обе работают с одним и тем же сервером сигналов. Это даёт главную возможность продукта:
- MT4 → MT5: провайдер торгует в MetaTrader 4 — подписчик получает сделки на счёте MT5.
- MT5 → MT4: провайдер на MetaTrader 5 — сделки повторяются на счёте MT4.
- MT5 → MT5 и MT4 → MT4: классическое копирование внутри одной платформы.
Поскольку передача идёт через сервер по протоколу HTTP, терминалам провайдера и подписчика не обязательно даже совпадать по брокеру, валюте счёта или типу исполнения. Провайдеру для публикации сделок нужен соответствующий передатчик (EmilonCopy Transmitter), работающий на той же версии платформы, что и его счёт.
Отличия реализаций учтены на уровне кода:
- в MT4 — прямые вызовы OrderSend / OrderModify / OrderClose , счёт всегда допускает разнонаправленные позиции (проверка хеджинга не требуется);
- в MT5 — торговый слой на CTrade , отдельная проверка ACCOUNT_MARGIN_MODE_RETAIL_HEDGING : на неттинговом счёте мульти-копирование отключается с сообщением;
- лицензия MQL5 Market определяется автоматически ( ACCOUNT_LICENSE_TYPE ), для сайта-версии предусмотрена отдельная активация.
Режимы копирования
Одиночный режим. Копируются сделки одного счёта провайдера. Все позиции подписчика получают магик MagicNumber и комментарий EmilonCopy .
Мульти-режим (пакет «все сигналы»). Поле ProviderAccounts принимает список счетов через запятую ( 123, 456 → нормализуется в 123,456 ) или значение ALL (регистр не важен). Каждому счёту провайдера соответствует свой магик (равен номеру счёта) и комментарий prov:NNNNN — позиции разных источников физически не смешиваются и не объединяются по объёму. Пакет подтверждается сервером; при попытке мульти-копирования без него приёмник показывает понятную ошибку MULTI_ACCOUNT_REQUIRES_PACKAGE . В панели выводится блок «Копируемые счета» со списком: счёт, имя трейдера, число открытых сделок.
Маппинг символов
Символы брокеров редко совпадают, поэтому предусмотрен механизм приведения:
- суффикс дописывается к символу провайдера ( EURUSD → EURUSD.pro );
- авто-подбор: приёмник пробует список типовых суффиксов ( .m , .pro , .ec , .raw , .ecn , _m и другие) и, наоборот, срезает известные суффиксы, если символ провайдера уже с расширением;
- каждый вариант проверяется через SymbolSelect — берётся первый реально существующий в терминале символ, попытка логируется.
Управление объёмом
- LotMultiplier — пропорциональный режим: лот подписчика = лот провайдера × множитель. Множитель больше 1 — увеличение, меньше 1 — редукция.
- FixedLot — фиксированный лот для всех сделок (приоритетнее множителя; 0 — работает множитель).
- Приведение к шагу лота, ограничение по MINLOT / MAXLOT символа. Три режима при объёме ниже минимума: округление до минимума (по умолчанию), пропуск сделки, копирование минимумом.
Стопы и тейки
- CopyStopLoss и CopyTakeProfit — включение переноса каждого уровня;
- SLTP_AddPoints — сдвиг уровней на N пунктов относительно провайдерских (полезно, чтобы ваши стопы не совпадали с общими точками скопления);
- проверка SYMBOL_TRADE_MODE и торговых сессий символа: закрытый рынок не блокирует весь советник — только эта сделка пропускается с одной строкой в журнале, копирование остальных продолжается (крипта без сессий считается всегда открытой);
- учёт стоп-уровня и freeze-уровня: при изменении SL/TP замороженная сторона не трогается, обновление откладывается без спама ошибками;
- если брокер отклонил ордер из-за стопов (ошибка 130 в MT4, 10016 в MT5) — сделка повторно открывается без SL/TP с записью в журнал.
Паузы и восстановление
При выключенной автоторговле или закрытом рынке советник не «штурмует» сервер и не забивает журнал: печатается одна строка о паузе, статус панели меняется на PAUSE, опрос продолжается по таймеру, при устранении причины копирование возобновляется автоматически.
При истечении подписки сервер возвращает ошибку — приёмник останавливается, запускает периодическую проверку подписки (раз в 5 минут) и сам возобновляет работу после продления. Блокировка торговли не мешает опросу: серверная синхронизация и торговые действия разделены.
Панель и тикер
- Информационная панель: счёт и брокер, статус (ONLINE / PAUSE / STOPPED / Подключение), время последней синхронизации, число позиций провайдера и своих, счётчики открытых/закрытых/резинхронизированных сделок, обновлений SL/TP, пропусков по freeze-уровню, данные провайдера (счёт, брокер, имя трейдера), тип подписки и блок «Копируемые счета» (динамические строки — панель растёт под число счетов).
- Бегущий тикер внизу графика: события копирования, ошибки, статусы; цвет строки отражает тип сообщения (обычное / успех / предупреждение / ошибка). История хранит до 40 событий.
- Полностью двухъязычный интерфейс: параметр Language переключает все сообщения панели, тикера и журнала между английским и русским.
Параметры
| Параметр | По умолчанию | Описание |
|---|---|---|
| Language | English | Язык интерфейса: English / Russian |
| ProviderAccounts | пусто | Счета провайдеров: 123 , 123,456 , ALL или пусто (якорный счёт) |
| LotMultiplier | 1.0 | Множитель лота (>1 — увеличение, <1 — редукция) |
| FixedLot | 0.0 | Фиксированный лот для всех сделок; 0 — по множителю |
| Slippage | 30 | Допустимое проскальзывание в пунктах |
| MagicNumber | 770077 | Магик якорного счёта (и позиций, открытых до перехода на мульти-режим) |
| CopyStopLoss | true | Копировать стоп-лосс провайдера |
| CopyTakeProfit | true | Копировать тейк-профит провайдера |
| SLTP_AddPoints | 0 | Сдвиг SL/TP относительно уровней провайдера, пункты |
| UseSymbolMapping | true | Авто-подбор варианта символа при отсутствии точного совпадения |
| SymbolSuffix | пусто | Суффикс символа вашего брокера ( .pro , _m и т. п.) |
Служебные (не для ручной настройки): интервал опроса PollInterval , скорость тикера, цвета панели, адреса сервера. Пароль и привязка к счёту задаются на стороне подписки.
Установка и запуск
- Файл EmilonCopyReceiver.ex5 (или .ex4 ) скопировать в папку MQL5\Experts (соответственно MQL4\Experts ) и перезапустить терминал.
- В настройках терминала (Сервис → Настройки → Советники) разрешить WebRequest для домена сервера сигналов — без этого запросы не выполняются.
- Перетащить советника на любой график (символ графика не влияет на копирование — каждая сделка проверяется по своему символу), включить автоторговлю.
Требования и ограничения
- Терминал MT4 (сборка 600+) или MT5; на счёте MT5 — хеджинговый режим для мульти-копирования.
- Разрешённый URL сервера сигналов в настройках WebRequest.
- Минимальная поддерживаемая точность лота — 0.01; параметры лота берутся с символа подписчика.
- Комментарии ордеров в MT4 ограничены ~27 символами — формат prov:NNNNN укладывается с запасом.
Типичные ситуации и как они обрабатываются
- Пропущен сигнал (интернет, перезапуск) — следующий цикл синхронизации восстановит позицию, дубликатов не будет: совпадение ищется по магику, символу и направлению.
- У провайдера закрылась сделка — ваша позиция закрывается на том же цикле, даже если рынок по символу был закрыт в момент сигнала закрытия (закрытие отложится до открытия рынка, о чём будет запись в журнале).
- Изменился объём у провайдера — позиция закрывается и переоткрывается новым объёмом (счётчик Re-sync).
- Символ отсутствует у вашего брокера — сделка пропускается с сообщением, копирование остальных продолжается.
Настройка терминала перед запуском
Чтобы приёмник мог общаться с сервером сигналов, домен Emilon нужно добавить в список разрешённых URL для WebRequest. Без этого советник запустится, но каждый запрос будет возвращать ошибку — терминал не даст обратиться к адресу вне белого списка.
- Откройте меню Сервис → Настройки → Советники.
- Отметьте галочку «Разрешить WebRequest для перечисленных URL».
- Добавьте в список строку:
- Нажмите OK и переснимите советника с графика (снимите и повесьте заново) — новые настройки подхватятся сразу.
Где посмотреть, что доступно для копирования
Все счета Emilon, открытые для подписки, собраны на странице мониторинга:
— на ней видны доступные счёта: имя трейдера, брокер, статистика и результаты. Выберите один или несколько счетов Emilon и впишите их номера в параметр ProviderAccounts (через запятую: 123, 456 ), либо ALL/пустое поле - все сигналы.
Через приёмник копируются счета провайдера Emilon — Валуца Александр (Alexandr Valutsa). Количество счетов у провайдера не ограничено — копируются все или на выбор - ProviderAccounts.
Все остальные счета (других провайдеров) доступны только по прямой подписке на сайте — при попытке скопировать их через приёмник сервер вернёт отказ.
Проверка
После запуска советника на тикере внизу графика появится сообщение о запуске, а через несколько секунд — первая синхронизация. Если тикер показывает «Ошибка запроса к серверу» — вернитесь к шагу с WebRequest: почти всегда причина в том, что домен не добавлен или добавлен с путём.
Зачем копировать, если можно купить робота?
- Не тратьте деньги на непонятного робота. Большинство советников продают вам бэктест. Копирование продаёт реальный живой трек-рекорд, который можно проверить до покупки.
- Не нужно оптимизировать и гонять бэктесты. Пропустите месяцы подгонки параметров. Стратегии уже торгуют вживую — цифры, которые вы видите, настоящие.
- Не нужно разбираться в сложных настройках. Установите приёмник, оставьте ProviderAccounts пустым — готово. Дальше всё происходит само.
- Не привязаны к одной стратегии. Один робот — одна ставка на одно состояние рынка. Копирование даёт много стратегий сразу: тренд, контртренд, скальпинг — результат не зависит от одного набора параметров.
- Копируете только прибыльные. Выбирайте счета по подтверждённой прибыли, просадке и стилю торговли на странице мониторинга. Убыточный счёт просто не копируете — ваши деньги мимо.
- Большой выбор сигналов за одну символическую цену. Вместо 200–500 долларов за одного робота — одна подписка открывает десятки готовых стратегий.
- Без эмоций и слежки за графиком. Приёмник исполняет сделку в момент, когда действует провайдер, — без колебаний, без ручных входов, без ночных «отыгрышей».
- Полная прозрачность. По каждому копируемому счёту на странице мониторинга видна живая история, прибыль и просадка. Ничего не спрятано за демо.
- Ваш капитал остаётся у вас. Сигналы копируются в ваш терминал — провайдер не получает доступ к вашим средствам, а отключиться можно в любой момент.
- Не нужны навыки программирования. Без DLL, без скриптов для VPS, без кода. Если умеете поставить советник — справитесь с приёмником.
- Диверсификация в один клик. Добавляйте и убирайте счета в настройках когда угодно — ребалансируйте портфель стратегий, не трогая открытые сделки.
