Работа завершена
Техническое задание
Требуется
написать копировщик сделок и ордеров для MetaTrader 5 для БКС.
Для демо и реальной торговли, в том числе на счетах ECN/NDD.
Исходный код должен быть в достаточной мере комментирован, и аккуратно
оформлен.
Характеристики:
Высокая скорость работы (возможность обработки события не ожидая тиков).
Корректное восстановление работы после обрыва связи, отключения питания
ПК.
Обработка ошибок выдаваемых сервером брокера (основные ошибки должны
обрабатываться: нет цен, неправильная цена в запросе, реквоты и т.д.).
Логирование всех операций в файлы,
источника и приемника.
Выбор способа исполнения торгового запроса FOK, IOC, Return
Мультитерминальный, количество терминалов
(приемник/источник) не ограничено.
Выбор терминала MT 5, с которого будет производиться копирование.
Должна быть возможность работы нескольких источников и соответственно приемников работающими с ними на одном компьютере.
Мультивалютный, торговых символов с ручным выбором каждого
из них. В источнике выбираются те символы, сделки или ордера
по которым будут копироваться. Если в терминале-источнике
присутствуют, или в процессе торговли будут открываться позиции по
незарегистрированным символам, то Копировщик их игнорирует.
Копирование с одного источника на несколько приёмников.
Работа совместно с любыми экспертами, скриптами.
Работа, как на домашнем ПК, так и на удаленном VPS server.
Копироваться 1к1
Корректная работа с префиксами и суффиксами символов на разных аккаунтах.
На приемнике в настройках должны быть следующие параметры указываться:
- Время после которого лот не ставить на выполнения при приходе с копира (по умолчанию 3с) , то есть если со времени постановки лота на копирование прошло более 3 секунд ордер не выполнять .
- возможность указания источника с которым будет работать приемник.
- выбор способа исполнения торгового запроса FOK, IOC, Return ( по умолчанию)
Проверка минимального уровня
остаточной маржи на приемнике перед совершением сделки (чтобы не выйти на stop
out сразу после копирования сделки на приемник).
Разработчик, ознакомившись с
техническим заданием, оценивает свои трудозатраты, сложность и предлагает
цену, и срок выполнения.
Если программист на начальном этапе посчитает, что какие-либо из положений
ТЗ реализовать невозможно, или сложно, прошу высказывать
ваши возражения своевременно.
Желательно, что бы разработчик был знаком с спецификой работы БКС (открытие
закрытие ордеров) так как работать он будет именно с forex-bcs.ru
И проверять работоспособность будем именно на этом сервисе.