Описание
🚀 TradeCopierBot — Быстрое, чистое и защищённое от брокеров копирование сделок (локально/на VPS) 🔁✨
Копируйте свои сделки с МАСТЕР счёта на один (или несколько) СЛЕЙВ счётов с помощью лёгкого, событийно-ориентированного копировщика, разработанного для реальных торговых условий: разные брокеры, разные названия символов, разные правила лотов.
Идеально подходит для исполнения на нескольких счетах, масштабирования риска и распределения стратегий — с подробными журналами отладки, чтобы вы всегда знали, что происходит. 🧠📈
✅ Оптимизировано для локальных / VPS установок (одна и та же машина).
❌ Не предназначено для cTrader Cloud (экземпляры изолированы, поэтому сигналы нельзя передавать). ☁️🚫
Внимание: если у вас два разных аккаунта cTrader, необходимо приобрести два cBot; иначе вы не сможете их копировать. Мы полностью к вашим услугам для любой информации.
🧠 Как это работает (МАСТЕР → СЛЕЙВ) 🧩
🔁 1) Передача сигнала (как «путешествуют» сделки)
Этот копировщик использует cTrader LocalStorage (область устройства) как общий «шина сообщений».
✅ МАСТЕР
- Отслеживает события позиций: Открыта / Изменена / Закрыта
- Создаёт
TradeSignal(ОТКРЫТИЕ / ИЗМЕНЕНИЕ / ЗАКРЫТИЕ) - Добавляет его в список сигналов в LocalStorageScope.Device
- Вызывает Flush() чтобы СЛЕЙВ мог сразу прочитать
✅ СЛЕЙВ
- Запускает таймер каждые Poll Interval секунд
- Вызывает Reload()
- Читает список сигналов
- Обрабатывает только новые сигналы (используя
_lastSignalIndexProcessed)
🧷 2) Сопоставление позиций (чтобы работало ЗАКРЫТИЕ)
Когда СЛЕЙВ открывает сделку, он сохраняет:
🧩 MasterPositionId → SlavePositionId
Это сопоставление также сохраняется в LocalStorage, чтобы сохраняться после перезапуска:
- ✅ ЗАКРЫТИЕ работает после перезагрузки
- ✅ ИЗМЕНЕНИЕ находит правильную позицию
🧭 3) Перевод символов (символ МАСТЕРА → символ СЛЕЙВА)
🗺️ Карта символов (МАСТЕР=СЛЕЙВ;...)
Используется, когда названия символов отличаются между брокерами/аккаунтами.
Формат:
МАСТЕР=СЛЕЙВ;МАСТЕР2=СЛЕЙВ2;...
Пример (ваш случай):
- МАСТЕР открывает
USTEC - СЛЕЙВ должен торговать
US100
➡️ USTEC=US100
✅ Левая сторона = символ, приходящий от МАСТЕРА
✅ Правая сторона = символ у брокера СЛЕЙВА
📏 4) Логика объёма (ключевая часть) 🔥
✅ Работает с лотами/количеством (поддерживаются десятичные)
Для работы с десятичными (0.10, 0.01 и т.д.) СЛЕЙВ:
- Вычисляет желаемые лоты
- Применяет множитель / минимум / шаг
- Преобразует лоты → объём с помощью
QuantityToVolumeInUnits(lots) - Отправляет ордер, используя перегрузку, принимающую double объём ✅
Это делает копировщик устойчивым даже при разных правилах точности лотов у брокеров.
⚙️ Объяснение параметров (с иконками)
🧩 Ядро
- 🧭 Режим
-
Master= публикует сигналыSlave= читает сигналы и копирует сделки
- 🧷 Идентификатор группы копирования
-
- Канал связи. МАСТЕР и СЛЕЙВ должны совпадать (например,
DEFAULT)
- Канал связи. МАСТЕР и СЛЕЙВ должны совпадать (например,
- ⏱️ Интервал опроса (сек)
-
- СЛЕЙВ проверяет новые сигналы каждые N секунд
- 🐞 Режим отладки
-
- Выводит подробные логи (рекомендуется при настройке)
🗺️ Перевод символов
- 🧾 Карта символов (МАСТЕР=СЛЕЙВ;...)
-
- Пример:
USTEC=US100;XAUUSD=GOLD;NAS100=USTEC
- Пример:
🎚️ Масштабирование объёма (САМЫЙ ВАЖНЫЙ) ✅
🔢 Глобальный множитель
- ➗ Множитель объёма
-
- Масштабирует все скопированные лоты:
desiredLots = masterLots * VolumeMultiplier
🎛️ Множитель для каждого символа (ваш основной инструмент)
- 🧷 Карта множителей объёма (SYM=mult;...)
-
- Переопределяет множитель для каждого символа (символ на стороне СЛЕЙВА)
- Пример:
-
US100= 0. 10- Итальянский формат тоже подходит:
US100=0,10
✅ Так вы достигаете: 1.00 на МАСТЕР → 0.10 на СЛЕЙВ
🧱 Ограничения лотов брокера (минимум и шаг)
- 🧱 Мин. количество по умолчанию (0=выкл)
-
- Глобальный минимум лотов, если включено
- 🧱 Карта мин. количества (SYM=val;...)
-
- Минимум лотов для каждого символа
- Пример:
US100=0. 10
- 🪜 Шаг количества по умолчанию (0=выкл)
-
- Глобальный шаг, если включено
- 🪜 Карта шагов количества (SYM=val;...)
-
- Шаг для каждого символа
- Пример:
US100=0. 10→ допустимые значения: 0.10, 0.20, 0.30…
🧯 Поведения безопасности
- 🧷 Использовать мин. количество как фиксированные лоты
-
- Если
true: СЛЕЙВ игнорирует размер мастера и всегда использует MinQty (фиксированный размер)
- Если
- ⚠️ Поведение при ниже минимума
-
UseMin= если ниже минимума → поднять до минимумаSkip= если ниже минимума → не открывать
- 🔁 Попытки исправления плохого объёма
-
- Если брокер возвращает BadVolume, пробует небольшие корректировки до N раз
🎯 Логика копирования SL/TP
- 🛡️ Копировать SL/TP как расстояние, если символы отличаются
-
- Если символы МАСТЕРА и СЛЕЙВА отличаются:
- SL/TP копируется как расстояние от входа, а не как абсолютная цена
- Это сохраняет контроль риска одинаковым для разных инструментов
✅ Рекомендуемая настройка (USTEC → US100, лот СЛЕЙВА = 0.10)
На СЛЕЙВЕ:
🗺️ Перевод символов:
Symbol Map=USTEC=US100
🎛️ Масштабирование объёма:
Volume Multiplier Map=US100=0,10
🧱 Ограничения брокера:
Min Qty Map=US100=0,10Qty Step Map=US100=0,10
Результат:
- ✅ МАСТЕР 1.00 → СЛЕЙВ 0.10 на US100
☁️ Важно: только локально/VPS (не Cloud) ❌
🖥️ Локально/VPS ✅
Работает, потому что МАСТЕР и СЛЕЙВ используют один и тот же LocalStorageScope.Device (одна машина/окружение).
☁️ cTrader Cloud ❌
Не работает, потому что экземпляры Cloud изолированы, они не разделяют LocalStorage, и СЛЕЙВ не видит сигналы МАСТЕРА.
✅ Вывод:
- ✔️ Используйте на одном ПК или VPS, где оба экземпляра работают вместе
- ❌ Для Cloud нужен внешний ретранслятор (HTTP/WebSocket сервер)
Сводка
Key features include:
- Position mapping to maintain correct trade management across restarts.
- Symbol translation via customizable symbol maps to handle differing broker symbol names.
- Volume scaling with global and per-symbol multipliers, supporting decimal lot sizes and broker-specific minimum quantity and step constraints.
- Safety behaviors such as fixed lot sizing and handling of trades below minimum lot sizes.
- Stop loss and take profit copying as distance from entry price when symbols differ, preserving consistent risk control.
Parameters include mode selection (MASTER or SLAVE), communication group ID, polling interval, debug mode, symbol maps, volume multipliers, and broker lot constraints. The bot is not compatible with cTrader Cloud due to isolated instances but functions reliably on local or VPS setups where MASTER and SLAVE share the same environment.
Отзывы покупателей
5 | 67 % | |
4 | 0 % | |
3 | 33 % | |
2 | 0 % | |
1 | 0 % |
