Возможно, лучший копировщик сделок
KopirMT4 — это лучший копировщик сделок между терминалами MT4. Я использую этот копир для синхронизации своей торговли между счетами уже более трёх лет. В этой статье я расскажу о том, как копир работает и поделюсь накопленным опытом его практического использования.
Схемы копирования сделок
Основная задача копира — копировать сделки из одного открытого терминала МТ4 (терминал-сервер) в другой терминал МТ4 (терминал-клиент) открытый на том же компьютере.
Типовые схемы копирования выглядят следующим образом.
Существуют и другие более сложные схемы когда один и тот же терминал может быть как клиентом так и сервером, но это всё уже частные специфические случаи. Также могут быть многоуровневые схемы когда сначала сигналы собираются с разных счетов на базовый, а затем с базового торговля тиражируется на другие счета. Но в основном копир используется для указанных выше трёх основных типов копирования.
- Обычное копирование нужно для самой простой задачи. Если у вас есть доступ (достаточно инвест-пароля) к отличному счёту и вы хотите копировать его торговлю, тогда просто настраиваем копирование с требуемого счёта на ваш.
- Дублирование одной торговли на различные счета. Эта методика особенно актуальна для управляющих. Я её активно использую для копирования торговли с базового счёта на все свои ПАММ-счета. До использования копира я настраивал на каждом отдельном счёте всех своих торговых роботов. Такой подход себя не оправдал — при многократном увеличении торговых счетов внесение изменений в настройки начинает отнимать очень много времени. К тому же независимые роботы, работающие на различных сетах, хоть и работают по одному алгоритму, но зачастую их торговля может довольно сильно отличаться. Использование копира позволяет гораздо лучше синхронизировать торговлю на всех счетах, что в итоге вызывает меньше вопросов о несоответствии торговли у инвесторов. С другой стороны добиться полной синхронизации и идентичного копирования на всех счетах невозможно в силу ряда причин и результаты на счетах все равно будут отличаться.
- Сбор сигналов на один счёт. KopirMT4 очень удобно использовать для агрегирования различных торговых систем на одном счёте, добиваясь таким образом глубоко диверсифицированной торговли.
Описание настроек копира с моими комментариями
В копире довольно много настроек. Автор в своём мануале даёт довольно короткие комментарии по их использованию. В этом разделе я продублирую описание настроек из мануала автора и дам свои комментарии с примерами из своего опыта использования копира. Текст из мануала автора коричневый, а мои комментарии обычным цветом.
Delay
Частота работы советника. По умолчанию равна 100 мс, то есть за одну секунду советник 10 раз запускает алгоритм своей работы. Практика показывает что величины равной 100 хватает с избытком для моментального копирования сделок. Чем меньше установлена величина задержки, тем больше советник жрёт ресурсов компьютера. Если средняя загрузка процессора VPS-сервера вырастает до неприятных для меня величин, то я первым делом увеличиваю Delay на копирах до значения 200-300. Обычно это существенно снижает нагрузку на процессор и по моим наблюдениям никак не влияет на скорость копирования.
Важно отметить тот факт, что загрузка процессора играет очень важную роль в копировании. Если загрузка процессора достигает 100%, это означает что процессор вашего компьютера не успевает «на лету» выполнять все операции и у него формируется очередь из задач, которые он выполняет поочередно. При высокой загрузке процессора копир начинает выполнять свою работу существенно медленнее и копирование начинает происходить с очень ощутимой задержкой в десятки секунд или даже в минуты. По этой причине не стоит гнаться за минимальным Delay, большинство причин связанных с задержкой копирования вызваны не этой настройкой, но этой настройкой можно существенно нагрузить или разгрузить ваш процессор. Особенно это актуально когда на одном компьютере работают десять и больше экземпляров копира одновременно.
Mode
Роль данного экземпляра советника.
- Server – режим работы в качестве мастер счета (передающая сторона).
- Client – режим работы в качестве клиента (принимающая сторона).
- Duplication — режим дублирования сделок на счете, при открытии сделок, например, по сигналу mql5 или вручную/советником, копировщик открывает сделку с заданными настройками объема. Все настройки можно использовать в данном режиме для более гибкой настройки копирования.
Очевидно, что режим Duplication был добавлен с одной единственной целью — для копирования сигналов с площадки mql5.com с повышенными рисками. Как мы знаем на упомянутой площадке нельзя копировать с повышенным коэффициентом риска, можно только с меньшим коэффициентом. Многим это, безусловно, не нравится. Один из способов «обхода» это копирование сигнала через счёт-прокладку.
По следующей схеме [сигнал MQL5]=>[Демо счёт с риском х1] => [Реальный счёт с риском х2,3… с любым риском].
В целом, это неплохая схема, но использование режима дупликатора вместо режима копира позволяет её несколько упростить.[Сигнал MQL5]=>[Реальный счёт с риском х1] => [Дублирование ранее открытых сделок с требуемым коэффициентом риска].
В итоге вместо двух терминалов MT4 и двух отдельных счетов, достаточно будет только одного терминала с одним счётом. С другой стороны схема с копированием позволяет копировать несколько сигналов с площадки mql5.com на один реальный счёт, а с дублированием такой «трюк» уже не получится.
Server accounts
Список номеров аккаунтов через запятую, с которых копируем.
Если необходимо копировать в один клиентский терминал сделки с нескольких открытых терминалов-серверов, открытых на этом же компьютере, тогда достаточно открыть на одном графике один экземпляр советника и в этом параметре указать номера всех счетов-серверов, с которых вы хотите копировать сделки.
Важно, что в таком случае вы будете копировать со всех серверов торговлю с одними и теми же настройками. В целом довольно сложно себе представить ситуацию когда такое оправданно. Обычно при копировании торговли с различных счетов-серверов требуется для каждого направления копирования выставлять свои специфические настройки. Я не использую копирование одновременно с нескольких серверов с использованием одного экземпляра копира-клиента. Для решения такой задачи для каждого направления копирования я запускаю отдельный экземпляр копира-клиента со своими настройками.
History count(days)
Количество истории, которую обрабатывать при анализе на закрытие сделок. Рекомендуется оставить значение по умолчанию.
Автор очень расплывчато пишет об этом параметре. Мне пришлось довольно плотно столкнуться с проблемами связанными с этим параметром, поэтому расскажу о нём несколько подробнее.
Этот параметр говорит советнику-копиру о том историю закрытых сделок за сколько дней необходимо записывать в файл со сделками, который будет отправлен терминалам-клиентам.
По умолчанию значение этого показателя равно 1. Это означает, что в файл копира записывается информация о закрытых сделках в терминале-сервере за сегодня и за вчера. В большинстве случаев этого абсолютно достаточно.
Увеличивать этот показатель необходимо только если вы копируете среднесрочную торговлю, на которой используется частичное закрытие сделок. МТ4 так устроен, что частичное закрытие сделок технически выглядит как закрытие сделки и открытие новой с меньшим лотом. KopirMT4 хорош тем, что умеет правильно обрабатывать частичное закрытие позиций. Но для правильного учета частично закрытых позиций он должен заглядывать в историю закрытых сделок терминала-сервера. Если на терминале-серевере History count=1 и терминал-клиент скопировал частичное закрытие сделки, то если на сервере «остаток» от частичного закрытия не закроется в течении двух дней, то терминал-клиент потеряет привязку сделки к серверу и сделка станет «висяком», которую придется закрывать вручную.
Эту особенность стоит учитывать. При этом без явных причин увеличивать показатель History count точно не нужно, так как это приведет к тому, что в файл которым обмениваются экземпляры советника будет записывать дополнительная ненужная информация, что приведет к увеличению нагрузки на сервер, что нам совершенно не нужно.
Time manager use
Работа копировщика по графику
Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday – диапазон времени в который разрешается открывать сделки. На закрытие это не влияет. Формат: HH:MM-HH:MM Допускается указывать в формате HH-HH, а также можно указать несколько диапазонов через запятую.
HH – часы, MM – минуты.
Я не использую эту настройку, так как считаю, что самое главное в копирование — это минимальное время между открытием на терминале-сервере и терминале-клиенте, поэтому искусственные ограничения по времени открытия сделки лишние. С другой стороны вполне допускаю, что по каким-либо частным причинам эту настройку вполне можно использовать.
Filter magic list
Фильтр по magic идентификатору сделок. Данная система очень гибкая и позволяет использовать специальные символы:
“-“ режим исключения, отключает указаный меджик при копировании
“*” начало меджика должно совпадать с указанным, тогда сделка копируется.
-123 то все меджики будут копироваться, кроме 123
0,123,345 указанные меджики будут копироваться, остальные не будут!
*123, будут копироваться все меджики начинающиеся с 123 (т.е. 123568, 123888 и т.п.)
Очень гибкие и удобные настройки фильтра, иногда использую.