Блог им. Eugene777

Запуск Sterling Trader Pro без диалогов при старте

Существует одна серьезная проблема при автоматизации торговли через API Sterling Trader. 

Суть в том, что сам Стерлинг должен быть запущен, и иногда возникает ситуация, когда соединение прерывается. На мой взгляд, в этот момент торговый робот должен его перезапустить, и тут как раз эта проблема вылезает. 

Вам надо ввести пароль и выбрать сервер соединения.

С паролем все просто.  У стерилнга существуют параметры командной строки, Pid, который устанавливается равным вашему UserID в момент установки Стерлинга, и Password, который можно установить вручную в параметрах значка Sterling.
Командная строка будет выглядеть примерно следующим образом:
«C:\Program Files (x86)\Sti\SterlingTraderPro\Base.exe» /Pid:USERID /Password:PASSWORD
Пароль больше вводить не надо. 

Дальше Стерлинг настолько суров, что при запуске предлагает выбрать два сервера. Cs и Qcs, список которых вместе со значением скорости пинга он получает при запуске. 
Существуют еще два параметра командной строки Cs и Qcs, да и диалог предлагает выбирать серверы с минимальным пингом автоматически, однако запуск этого окна не отменяется. Установка значений этих параметров вида IP:Port проблему не решает.

Я попытался понять логику работы этих параметров в коде, но ничего хорошего из этого не вышло. В итоге, пришлось вспомнить детство и поправить пару байт в коде. Результат получился положительный, за маленьким исключением: я не могу понять, каким образом стерлинг выбирает новое соединение, но, вроде, пинги минимальные, судя по логам. 

Если кому-то нужно такое решение, дате знать, поправлю ваш EXEшник, либо пришлю последнюю версию.
★2
2 комментария
Пока вроде разрывов не было, но все равно пригодится. Спасибо.
avatar
Alex Hurko, у меня вылетало несколько раз, возможно из-за обрыва соединения. Потом соединение не восстанавливалось.
avatar

теги блога Eugene777

....все тэги



UPDONW
Новый дизайн