Правила копирования: основные принципы
Trade Copier - приложение для автоматизированного копирования сделок со счета одного терминала на несколько счетов на других терминалах с гибкими возможностями фильтрации и модификации копируемых сделок.
Как работает приложение?
С Trade Copier копирование (маршрутизация), фильтрация и модификация сделок осуществляется через сервер, то есть возможно копирование сделок с терминала-источника на терминалы-приемники в пределах как одного, так и нескольких компьютеров.
При этом, так как маршрутизация, применение правил и расчеты производятся на сервере, не создается дополнительная нагрузка на приложение или торговый терминал, что повышает скорость работы приложения. Средняя скорость копирования - 100 мс (зависит от географического положения и интернет-соединения) - в худшем случае - 500 мс.
Также архитектура позволят поддержать высокий уровень безопасности: не сохраняется история сделок, нет идентификации личности трейдера (простой и быстрый вход при помощи уникального идентификатора UUID).
Основные характеристики и возможности
- Работа приложения с терминалом MetaTrader 5
- Работа приложения с любой из платформ на выбор: PC, Linux, MAC или VPS
- Копирование на несколько терминалов в пределах одного или нескольких компьютеров
- Копирование с демо-счета на реальные счета
- Копирование сделок с любыми инструментами, предоставляемыми брокерами
- Копирование сделок с разных счетов: с netting на hedging и наоборот*
- Применение правил фильтрации и модификации сделок для терминала-источника и терминала-приемника**
- Поддержка всех фильтров, доступных в Metatrader 5
- Копирование всех типов ордеров, фильтрация и модификация
- Поддержка обратного копирования
- Расчет копируемого лота в абсолютных и относительных значениях
- Расчет ордеров SL и TP[d] в абсолютных значения и поинтах
С Trade Copier доступно копирования сделок с hedging-аккаунта на netting-аккаунт.
- Неттинговый учет позиций: по одному инструменту можно иметь только одну позицию, поэтому все дальнейшие операции по нему ведут к изменению объема, закрытию или развороту существующей позиции.
- Хеджинговый учет позиций: по одному инструменту можно иметь множество позиций, в том числе — разнонаправленных. Это позволяет реализовывать торговые стратегии с так называемым локированием — если цена пошла против трейдера, он имеет возможность открыть позицию в противоположном направлении.
Источник: https://www.mql5.com/ru/articles/2299
(!) Примечание: Обязательное условие для корректного копирования сделок с hedging-аккаунта на netting: отсутствие сделок с противоположным направлением на аккаунте hedging. В случае открытия разнонаправленных позиций, сделка на netting аккаунте-приемнике будет закрыта (частично или полностью).
-
Для терминала-источника и приемника при копировании сделок можно использовать правила фильтрации и трансформации:
- Фильтрация сделок - копирование только определенных сделок / копирование всех сделок за исключением определенных.
- Трансформация сделок - копирование сделок с изменением одного или нескольких параметров сделки (например, валютная пара, направление, размер лота или стоп-лосса).
(!) Примечание: При использовании Trade Copier на терминале-источнике, возможно использовать прочие приложения для автоматизированной торговли (во вкладке Expert Advisors). Однако для терминалов-приемников использовать другие приложения не разрешено по причине риска закрытия или искажения копируемых позиций.
При копировании сделок возможно применять правила фильтрации или модификации на терминале-источнике (1) и приемнике (2):
(1) Трансформация или фильтрация сделок, поступающих с источника на терминале-приемник[e] ####
Это значит, что сделки будут копироваться с источника на несколько терминалов, но установленные правила фильтрации/трансформации будут действовать только на текущем терминале-приемнике (на котором устанавливаются правила).
Для этого необходимо зайти в аккаунт терминала-приемника и нажать на иконку Edit в разделе Destinations.
(2) Трансформация или фильтрация сделок, поступающих с источника на терминале-приемник/терминалы-приемники ####
При установке правил на терминале-источнике, ко всем копируемым на другие терминалы сделки будут применены правила.
Чтобы установить правила копирования для терминала-источника, зайдите в аккаунт терминала-источника и нажмите на иконку Edit раздела Sources.
QuickStart Guide: Получение UUID & Login
Вход в приложение осуществляется при помощи уникального идентификатора (UUID), который можно получить в вашем торговом терминале (Metatrader 5).
Получение уникального идентификатора (UUID) в терминале
- Зайдите в терминал.
Скачать терминал Metatrader 5 можно на официальном сайте Metatrader. Инструкция по первоначальной настройке находится по ссылке. 2. Скачайте приложение TradeCopier в маркетплейсе терминала. 3. После скачивания зайдите на вкладку Experts в поле Toolbox (1). Нажмите правой кнопкой на поле, выберите Open (2). Выберите файл replicator на вашем компьютере.
- Проверьте, что replicator отображается в поле Experts Advisors (меню слева) главного окна терминала.
- Разрешите автоматическую торговлю, нажав на кнопку AutoTrading в верхнем меню главного окна.
Иконка с зеленым знаком сигнализирует о том, что автоматическая торговля разрешена.
- Добавьте адрес сервера в окне настроек терминала. Для этого:
- Откройте вкладку Tools в верхней панели настроек.
- Перейдите в окно Options.
- В окне Options откройте вкладку Expert Advisors (1).
- Разрешите осуществлять запрос к серверу (2).
- Впишите адрес сервера в поле ниже (3): https://tickhub.space/. О принципах работы приложения и взаимодействии с сервером читайте по ссылке.
- Нажмите ОК.
- Удерживая левую кнопку мыши, перенесите файл replicator из списка Expert Advisors на график терминала.
- Откроется окно с характеристиками приложения:
Доступны поля: money_management_type - измерение объема лота (правила применяются только при копировании на терминал-приемник). На выбор: а) mm_relative - относительные значения (по умолчанию). Расчет размера позиции относительно депозита в процентах. Пример: Терминал-источник:
- Депозит $10 000.
- Открываем позицию размером 1% от депозита.
- Позиция $100.
Терминал-приемник:
- Депозит $1000.
- Открываем позицию размером 1% от депозита.
- Позиция $10.
b) mm_absolute - абсолютные значения без привязки в процентах к депозиту.
Пример:
Терминал-источник:
- Депозит $10 000.
- Открываем позицию размером $100.
- Позиция $100, это 1% от депозита.
Терминал-приемник:
- Депозит $1000.
- Открываем позицию размером $100.
- Позиция $100, это 10% от депозита.
server_url - название сервера, к которому подключается приложение (заполняется автоматически). terminal_name - название вашего терминала в приложении. Поле необходимо заполнить. designation - опции копирования для терминала. На выбор: а) source - терминал может быть только источником сделок. b) destination - терминал может быть только приемником сделок. c) dontcare - терминал может быть как источником, так и приемником сделок (опция по умолчанию). logging _level - инструмент для отслеживания и работы с логами. При помощи параметра level вы можете установить, какой уровень сообщений журнала будет записываться. Доступны уровни в порядке увеличения важности (severity). При выборе определенного уровня, будут регистрироваться вызовы все вызовы logging на этом уровне или выше: a) ll_debug b) ll_info c) ll_warning d) ll_error Нажмите ОК.
- Далее появится окно Alert с информацией об уникальном идентификационном номере (UUID) вашего терминала. Сохраните этот номер и используйте для входа в приложение TradeCopier и дальнейшей работы.
Логин при помощи уникального идентификатора (UUID)
- Зайдите на сайт приложения по ссылке https://tickhub.space/. Нажмите Login.
- Введите полученный UUID в поле и нажмите Login.
- Готово! Приложение привязано к вашему торговому терминалу.
Добавление терминалов для копирования сделок
Общий обзор интерфейса
На стартовой странице приложения можно увидеть:
- Ваш уникальный идентификатор UUID (по которому вы вошли в приложение).
- Язык интерфейса (на выбор: русский или английский).
- Ваш текущий тарифный план.
- Поля для
терминалов:
- Источники - ваш терминал, с которого будут копироваться сделки.
- Приемники - те терминалы, на которые будут копироваться сделки.
Способы добавления терминалов в приложение
Привязка терминалов осуществляется при помощи уникальных идентификаторов (UUID) и возможна в двух форматах:
1. Привязка при помощи полного идентификатора ####
Для привязки терминала к источнику не требует дополнительного подтверждения от терминала-источника. Обычно применяется при копировании на собственные счета.
Пример полного UUID: B0592618-238C-2975-15DD-FBEE2486BFA3:
2. Привязка при помощи частичного идентификатора ####
Для привязки терминала к источнику требует дополнительное подтверждение от терминала-источника. Обычно применяется при копировании на счета других участников рынка.
Пример частичного UUID: FBEE2486BFA3 (то есть последняя часть полного идентификатора B0592618-238C-2975-15DD-FBEE2486BFA3):
Добавление терминалов для копирования
Примеры: Терминал-источник: B0192618-238C-2975-15DD-FBEE2586BFA3 Терминал-приемник: D327d81f-3f11-11eb-b357-d5258bbc0010
При помощи полного идентификатора:
- Войдите в приложении в аккаунт терминала-приемника.
- Нажмите + в разделе Sources.
- В появившемся окне введите полный UUID терминала, с которого будут копироваться сделки на текущий терминал, и нажмите Save. Имя терминала отобразится автоматически (присваивается при установке replicator в терминале)
- Готово! Убедитесь, что:
- В Источниках (Sources) отображается терминал, с которого будут копироваться сделки.
- В Приемниках (Destinations) отображается терминал, на который будут копироваться сделки.
- Двусторонняя стрелка между терминалами означает, что связь подтверждена (при использовании полного UUID подтверждение осуществляется автоматически). С этого момента сделки будут копироваться с терминала-источника на приемник.
При помощи частичного идентификатора:
- Войдите в приложении в аккаунт терминала-приемника.
- Нажмите + в разделе Sources.
- В появившемся окне введите частичный UUID терминала, с которого будут копироваться сделки на текущий терминал, и нажмите Save.
- В окне в разделе Sources появится терминал-источник. Стрелка в одну сторону означает одностороннюю связь, т.е. необходимо подтверждение связи от терминала источника.
- Для подтверждения связи владельцу идентификатора терминала-источника необходимо войти в аккаунт и нажать + в разделе Destinations.
- Введите частичный UUID терминала-приемника в появившемся окне.
- Подтверждение пройдено! Убедитесь, что между терминалами появилась двусторонняя стрелка.
Удаление терминала из приложения
- Чтобы удалить привязанный терминал, нажмите на знак "Удалить" в одном из аккаунтов в приложении.
- Войдите в аккаунт другого терминала и также удалите связь.
- Между терминалами больше нет связи, в интерфейсе они не отображаются.
Правила копирования: фильтрация и трансформация
С TradeCopier доступны расширенные опции фильтрации и модификации сделок на терминале-источнике и приемниках.
Условные обозначения при фильтрации и копировании сделок
При использовании правил копирования и модификации используются следующие условные обозначения:
Значение | Описание |
---|---|
< | Значение (строго) меньше указанного |
<= | Значение меньше или равно указанному |
== | Значение равно указанному / действие соответствует указанному |
>= | Значение больше или равно указанному |
> | Значение (строго) больше указанного |
<> | Значения / действия за исключением указанных |
IN | Поиск по показателям в подстроке в строке |
Правила фильтрации сделок
Копирование только определенных сделок / копирование всех сделок за исключением указанных. Доступны фильтры:
Action
По типу ордера или сделки/действия, произведенного с ордером или сделкой:
Значение | Описание |
---|---|
DEAL | Копировать открытие сделок (реализация ордеров) |
PENDING | Копировать отложенные ордера |
SLTP | Копировать стоп-лоссы или тейк-профиты |
MODIFY | Копировать действия по изменению параметров сделок |
REMOVE | Копировать отмену ордера |
CLOSE_BY | Копировать ордер по закрытию позиции |
Comment
Копировать ордера и позиции с заданным комментарием*
Deviation
Максимальное отклонение цены для открытия позиции
Expiration
Время истечения ордера
Order_type
Тип ордера. Доступные типы ордеров:
Значение | Описание |
---|---|
BUY | Ордер - покупка по рыночной цене |
SELL | Ордер - продажа по рыночной цене |
BUY_LIMIT | Лимитный ордер на покупку |
SELL_LIMIT | Лимитный ордер на продажу |
BUY_STOP | Ордер на покупку указанной цене или дороже |
SELL_STOP | Ордер на продажу указанной цене или дешевле |
BUY_STOP_LIMIT | Стоп-ордер на установку лимитного ордера на покупку ("Buy Limit") |
SELL_STOP_LIMIT | Стоп-ордер на установку лимитного ордера на продажу ("Sell Limit") |
CLOSE_BY | Закрытие позиции вручную в окне Toolbox, вкладка Trades |
Подробнее о типах ордеров: https://www.metatrader5.com/ru/mobile-trading/iphone/help/trade/general_concept/order_types
Order_type_filling
Тип закрытия ордера:
Значение | Описание |
---|---|
FOK (Fill or Kill) | Мгновенное и полное исполнение ордера по определенной цене |
IOK (Immediate or Cancel order) | Мгновенное частичное или полное исполнение ордера и отмена неисполненной части ордера по определенной цене |
RETURN | Данный режим используется для рыночных (ORDER_TYPE_BUY и ORDER_TYPE_SELL), лимитных и стоп-лимитных ордеров (ORDER_TYPE_BUY_LIMIT, ORDER_TYPE_SELL_LIMIT, ORDER_TYPE_BUY_STOP_LIMIT и ORDER_TYPE_SELL_STOP_LIMIT) и только в режимах "Исполнение по рынку" и "Биржевое исполнение". В случае частичного исполнения рыночный или лимитный ордер с остаточным объемом не снимается, а продолжает действовать. |
Для ордеров ORDER_TYPE_BUY_STOP_LIMIT и ORDER_TYPE_SELL_STOP_LIMIT при активации будет создан соответствующий лимитный ордер ORDER_TYPE_BUY_LIMIT/ORDER_TYPE_SELL_LIMIT с типом исполнения ORDER_FILLING_RETURN |
Источник: https://www.mql5.com/ru/docs/constants/tradingconstants/orderproperties#enum_order_type_filling |
Price
Уровень цены, по которой открыт ордер
Reason
Причина выставления ордера:
Значение | Описание |
---|---|
CLIENT | Ордер выставлен из десктопного терминала |
MOBILE | Ордер выставлен из мобильного приложения |
WE | Ордер выставлен из веб-платформы |
EXPERT | Ордер выставлен из MQL5-программы – советником или скриптом |
SL | Ордер выставлен в результате срабатывания Stop Loss |
TP | Ордер выставлен в результате срабатывания Take Profit |
SO | Ордер выставлен в результате наступления события Stop Out |
Источник: https://www.mql5.com/ru/docs/constants/tradingconstants/orderproperties#enum_order_type_filling
SL / TP
Стоп-лосс / тейк-профит (абсолютные значения, то есть уровень цены, на котором выставляется ордер)
SL-points / Tp_points
Стоп-лосс / тейк-профит ордер в поинтах (разница между ценой и уровнем стоп-лосса в поинтах). 1 point = одна стотысячная от дробной части цены MetaTrader 5
StopLimit
Стоп-лимит ордер (абсолютные значения)
Symbol
Фильтрация по определенной валютной паре
Type_time
Значение | Описание |
---|---|
ORDER_TIME_GTC | Ордер будет находится в очереди до тех пор, пока не будет снят |
ORDER_TIME_DAY | Ордер будет действовать только в течение текущего торгового дня |
ORDER_TIME_SPECIFIED | Ордер будет действовать до даты истечения |
ORDER_TIME_SPECIFIED_DAY | Ордер будет действовать до 23:59:59 указанного дня. Если это время не попадает на торговую сессию, истечение наступит в ближайшее торговое время |
Источник: https://www.mql5.com/ru/docs/constants/tradingconstants/orderproperties#enum_order_type_filling
Volume
Расчет объема в абсолютных значениях
Volume_percent
Расчет объема в относительных значениях
Правила трансформации сделок
Трансформация - копирование сделок с изменением одного или нескольких параметров. Для модификации доступны следующие параметры:
Трансформации: | Set | Append | Multiply | Add | Reverse | |
---|---|---|---|---|---|---|
Установка значений, отличных от значений на терминале-источнике | Добавление символов и/или значений к уже существующим значениям | Увеличить показатель в N раз | Увеличить показатель на N | Открыть сделку в противоположном направлении | ||
Comment | Комментарий | + | + | |||
Deviation | Максимально приемлемое отклонение от запрашиваемой цены | + | + | |||
Expiration | Время истечения ордера | + | ||||
Price | Уровень цены | + | + | + | ||
SL | Стоп-лосс (абсолютное значение) | + | + | + | ||
Sl_points | Стоп-лосс (значение в поинтах) | + | + | + | ||
Stoplimit | Стоп-лимит ордер | + | + | + | ||
Symbol | Тикет | + | + | |||
Tp | Тэйк-профит (абсолютное значение) | + | + | + | ||
Tp_points | Тэйк-профит (абсолютное значение) | + | + | + | ||
Volume | Объем (абсолютные значения) | + | + | + | ||
Volume_percent | Объем в процентах | + | + | + |
Порядок применения правил к копированию сделок
В окне Processing rules будут указаны правила в порядке от наиболее старого к новому. Порядок применения правил к сделкам - “сверху вниз”.
Пример:
- Сначала копируемые сделки поменяют направление
- Затем среди сделок, у которых поменялось направление, будут скопированы только ордера на покупку
Действия для списка с правилами копирования:
- Чтобы поменять порядок правил, нажмите на иконку (1) справа и передвиньте правило выше или ниже.
- Правила также можно удалять при помощи иконки (2).