dk777

qpile

    • 03 февраля 2011, 12:32
    • |
    • dk777
  • Еще
Есть робот написанный на qpile, проблема такова, иногда работает как часы, выставляет заявки заявки все ок. Но иногда заявки тупо не выставляются, мистика какая то, отвожу время назад в винде, и заявка становится. Но почему тогда не встала хз.

Вопрос может кто сталкивался с такой проблемой?
Интернет не косячит, в алгоритме тоже все ок) 
  • Ключевые слова:
  • qpile
14 комментариев
Блин, куда не глянь — везде роботорговцы теперь!
И как выжить теперь в этом жестоком рынке?
еще бы они не подводили, было бы кашерно) а так приходится смотреть((
avatar
Надо строить робота — анти робота, устраивать кибернетические войны!!!
avatar
по моему рынок сплошное поле битвы, роботы, антироботы(сливают которые)))) люди))
avatar
я везде где нужно получать текущее время вместо GET_DATETIME использую GET_INFO_PARAM(«SERVERTIME») чтобы не зависеть от локального времени в компе, впрочем при выставлении заявок это никак не должно влиять, попробуй сохранить рез-т отправки транзакции в файл (пример из справки):
trans_result = SEND_TRANSACTION (30, trans_params)
WRITELN («qpile_trans.log», «Result: » & get_value (trans_result, «RESULT») & ", Result_ex: " & get_value (trans_result, «RESULT_EX») & ", OrderNum: " & get_value (trans_result, «ORDER_NUMBER») & ", Description: " & get_value (trans_result, «DESCRIPTION»))
avatar
спасибо попробую
avatar
Надо время Московское на компе поставить и всё заработает. У меня так было )
время и так московское стоит)
avatar
походу надо анализировать что возвращает функция SEND_TRANSACTION.
avatar
ну а вот почему может быть вообще такое что иногда выставляет а иногда нет? причем очень редко не выставляет
avatar
може просто не успевает обработать команду, так как комп перегружен
avatar
бывает, просто брокер возвращает статус «заявка отклонена» без объяснения причин…
связано может быть с перегрузкой серверов брокера??? да фиг пойми.
округление цены до нужного кол-ва знаков после запятой в заявке делаешь?
ну, как вот так скажешь, надо смореть анализы (моча там, кал, кардиограмма) :)))))))))))
avatar
Посмотри значение RESULT_EX.
вот какие значения может принимать:

«0» — транзакция отправлена серверу,
«1» — транзакция получена на сервер QUIK от клиента,
«2» — ошибка при передаче транзакции в торговую систему, поскольку отсутствует подключение шлюза ММВБ, повторно транзакция не отправляется,
«3» — транзакция выполнена,
«4» — транзакция не выполнена торговой системой, код ошибки торговой системы будет указан в поле «DESCRIPTION»,
«5» — транзакция не прошла проверку сервера QUIK по каким-либо критериям. Например, проверку на наличие прав у пользователя на отправку транзакции данного типа,
«6» — транзакция не прошла проверку лимитов сервера QUIK,
«7» — транзакция клиента, работающего с подтверждением, подтверждена менеджером фирмы,
«8» — транзакция клиента, работающего с подтверждением, не подтверждена менеджером фирмы,
«9» — транзакция клиента, работающего с подтверждением, снята менеджером фирмы,
«10» — транзакция не поддерживается торговой системой. К примеру, попытка отправить «ACTION = MOVE_ORDERS» на ММВБ,
«11» — транзакция не прошла проверку правильности электронной подписи.
Код для получения доступа к параметрам массива возвращаемого функцией SEND_TRANSACTION:
Code
result = SEND_TRANSACTION (30, transact)
N = get_value (result, " ORDER_NUMBER ")
M = get_value (result, «RESULT_EX»)

Тогда хоть понятней станет чего заявки в стакан не уходят
avatar

теги блога dk777

....все тэги



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