Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?
23.01.2025, 19:49:17
Начало Помощь Поиск Войти Регистрация
Новости: ООО «Скрин маркет системз», правообладатель программы «Система брокерского обслуживания «TRANSAQ» официально заявляет, что не ведет никакой деятельности в мессенджерах или социальных сетях. 
Подробности на нашем сайте  WWW.TRANSAQ.RU.

Transaq  |  СБО "Transaq"  |  Подсистема ATF  |  Topic: orderno=0 в исполнившейся условной заявке « предыдущая тема следующая тема »
Страниц: [1] Печать
Автор Тема: orderno=0 в исполнившейся условной заявке  (Прочитано 3122 раз)
ddd323
Sr. Member
****
Сообщений: 257


Просмотр профиля Email
« : 20.02.2012, 19:18:53 »

История следующая.
С вечера выставляю условный стоп. Запоминаю в файл его trnid. Собственно на следующее утро стоп срабатывает (не сразу, а примерно в 10.02).
Судя по логу робота последовательность следующая:
1) Вызывается OnClientTrade по сделке, соответствующей этому стопу (это не скрипт понимает, а я в ходе последующего анализа). Запоминаю orderno.
2) Чтобы убедиться, что это стработал собственно стоп скрипт (находясь внутри OnClientTrade)  вызывает статус условной заявки, установленной вечером, по ее trnid и получает хэш, в котором status=1 orderno=0, а в поле error - пусто.
3) Потом вызвается calc()
4) Потом вызывается OnClientOrder, проверяю хэш, это собственно моя условная заявка с запомненными trnid и orderno (из п. 1) и status=11 и пустым полем error.
(До этого раз 30 в аналогичной ситуации скрипт на шаге 2 получал правильный статус и orderno равный запомненному на шаге 1.)
Собственно вопрос. Это страшный глюк или нормально (архитектурно заложено), что после вызова OnClientTrade, когда хранилищу переменных транзака уже известен orderno реальной ушедшей на биржу заявки, возможна ситуация, что проверка (в п.2) статуса условной заявки дает нулевой  orderno=0 и уже как бы неактуальный статус?

Боевой транзак 5.02.275.01 rev. 48 ATF 1.8 на финаме. Фьюч на РТС
« Последнее редактирование: 21.02.2012, 20:13:18 от ddd323 » Записан
Heller
Разработчики
Hero Member
*****
Сообщений: 1277


Просмотр профиля Email
« Ответ #1 : 22.02.2012, 11:57:19 »

От сервера события "совершена сделка" и "выполнена заявка" приходят в произвольном порядке, так что закладываться на то что в OnClientTrade есть какая-то информация об обновленном статусе заявке нельзя.
Записан
Страниц: [1] Печать 
Transaq  |  СБО "Transaq"  |  Подсистема ATF  |  Topic: orderno=0 в исполнившейся условной заявке « предыдущая тема следующая тема »
Перейти в:  


Войти

Powered by MySQL Powered by PHP Powered by SMF 2.0.10 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS!