Программа выставляет заявки в терминал QUIK и др. из простого текстового файла. Поэтому можно из советника Metatrader ставить заявки в QUIK. В качестве примера в архиве лежит советник, который копирует сделки с демо-счета MT4 в QUIK, в параметре советника нужно задать имя тикера.
Программа представляет собой консольное приложение, которое находится в режиме ожидания команды. При обнаружении команды, сервер выполняет команду путем взаимодействия с API брокеров, подключенных к бирже. Время выполнения команды, при множественных заявках на разных тикерах достигала 1-2 минуты, поэтому частые команды не желательны(скальпир. и прочее).
Особенности: - на каждый тикер(имя торгуемого инструмента) запускается свой экземпляр сервера. - каждый сервер ведет свой лог всех событий обмена с API брокера и прибыли каждой сделки. - можно ограничить портфель тикеров(по количеству торгуемых в момент времени). - сервер работает в "событийном режиме", т.е. например, если сервер закрыть во время открытой сделки, и затем произойдет событие в результате которого сделка закроется, далее если запустить сервер - то сервер будет считать что сделка существует (возникает ошибка синхронизации - сам сервер определить это не сможет). Поэтому перезапускать сервер желательно(но не обязательно) при отсутствии сделок.
- сервер может выставлять автоматически SL ордера(если задать 0, то работа будет без SL). - сервер может автоматически отменять активированные СТОП-ЛИМИТ заявки выставленные брокером(по времени) вместе с закрытием сделки(или ее частичных остатков) по рынку. В случае нехватки ликвидности на СТОП заявку. - можно считывать из советника состояние позиции. (состояние сервер хранит в папке POZA. внутри файлов описание строк)
- можно запускать несколько экземпляров групп серверов(у каждого можно задать имя для идентификации). Тем самым из одного советника, можно выставлять заявки одновременно у нескольких брокеров. - в папке PLAY лежит плеер MPC с mp3 для проигрывания звука. signal.mp3 - при подачи команды, sl.mp3 - при срабатывнии SL.
Файл команды:
имя файла команды должно соответствовать имени тикера (папка Command)
формат файла: 1строка [имя тикера]
2строка [команда] 3строка [цена] пример функции подачи команды: Список команд
BUY - покупает по рынку
SELL - продает по рынку
BUYLIMIT - выставляет лимит заявку на покупку по цене в 3строке
SELLLIMIT - выставляет лимит заявку на продажу по цене в 3строке modif - меняет цену установленного SL по цене в 3строке stop - закрывает сделку или отменяет все лимит ордера reset - сброс состояния сервера в исходное состояние(для сброса ошибки синхронизации). (исходное состояние - отсутствие ордеров и сделок по тикеру сервера) newSL - новый SL в процентах, для конкретного тикера
Каждая команда на сделку отменяет предыдущюю. Т.е. Если позиция BUY и приходит команда SELL. Выводится заявка на SELL с удвоеным размером - для перекрытия позиции BUY.
Настройка и установка Настройка заключается в редактировании файла ticker.ini - список тикеров, размер сделки. и файла trade.ini - логины, пароли, величина SL, пути файлов.
Установка: скачайте архив и распакуйте в папку Filles, далее скачайте API описание в архиве.
Запуск запускается с параметрами командной строки, через bat файлы run1.bat, run2.bat и т.д. Вспомогательным файлом является runconnector.exe запускает все bat-файлы. первым параметром командной строки является тикер, примеры запуска для 4 тикеров в архиве.