Как найти идентификатор запроса? - страница 4

 
Mikalas:

Yurich, я вообще не использую таймер для проверки (вернее использую "на крайний случай").

А History, потому что ордера только там, если не пришел OnTradeTransaction 

OnTradeTransaction мог пропасть, а ордер не попасть в history, т.к. он еще действующий.
 
Yurich:
OnTradeTransaction мог пропасть, а ордер не попасть в history, т.к. он еще действующий.

Yorich, вы частенько ссылаетесь на справочник, посмотрите в нем, когда ордер попадает в историю.

Свойства ордеров

Приказы на проведение торговых операций оформляются ордерами. Каждый ордер имеет множество свойств для чтения, информацию по ним можно получать с помощью функций OrderGet...() и HistoryOrderGet...(). 

 

Мдя... я бы вообще не использовал OnTradeTransaction, кстати и не использую...

Событие может быть потеряно от сервера к клиенту, события могут приходить не в той последовательности, в которой они отправлены. 

То есть не гарантируется вообще ничего. Максимум что разработчики могут сделать это расширить структуру ордера и определить функцию что-то типа OrderRequestId(),

которая и будет возвращать ID последнего запроса на отправку/модификацию... но тут тоже свои грабли будут... да и не будет она отличаться от OrderComment() как предлагается.

а нужна ли асинхронная отправка?

Кстати, таймер на таких малых периодах работает нестабильно, все таки операционке нужно еще и другие ресурсы обслуживать...

 

1121 х 2 = 2242 транзакции

 

papaklass, если у вас ешё остались сомнения, то дайте мне в личку ваш скайп, я покажу вам всё в реальном времени. 

 
Mikalas:

Yorich, вы частенько ссылаетесь на справочник, посмотрите в нем, когда ордер попадает в историю.

Свойства ордеров

Приказы на проведение торговых операций оформляются ордерами. Каждый ордер имеет множество свойств для чтения, информацию по ним можно получать с помощью функций OrderGet...() и HistoryOrderGet...(). 

Ну что я могу сказать :) - читайте внимательно документацию.

А еще лучше ручками попробуйте, например, разместите отложенный ордер и поищите его в history... 

 
Yurich:

Ну что я могу сказать :) - читайте внимательно документацию.

А еще лучше ручками попробуйте, например, разместите отложенный ордер и поищите его в history... 

Yurich, 

Я никогда не пользовался историей, но из документации

Приказы на проведение торговых операций оформляются ордерами. Каждый ордер имеет множество свойств для чтения, информацию по ним можно получать с помощью функций OrderGet...() и HistoryOrderGet...().  

я понял, что как только мы отослали ордер, то он сразу заносится в историю.

Конечно, механизм отслеживание ордера не может быть очень простым,

но он должен быть реализован не нами, а разработчиками.  

 
Mikalas:


я понял, что как только мы отослали ордер, то он сразу заносится в историю.

Конечно, механизм отслеживание ордера не может быть очень простым,

но он должен быть реализован не нами, а разработчиками.  

Вы неправильно поняли :(

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

 
papaklass:

 Человеку еще полгода назад советовали отказаться от функции OnTradeTracsaction() ввиду ее неоднозначности возвращаемого результата. Но человек упорствует.

Интересно, Mikalas, если ордер потеряется по дороге к серверу, то какой Вам Id должны прислать разработчики?

И вообще, как человек, совершающий 2000 тракзакций в день (!), на реальном счете (!) может пользоваться функциями, результаты которых он не может проконтролировать?

Фейк все это. 

Ну то что упорствует, тут я поддержу. Не бьешься - не добьешься.

Мне даже интереснее имитировать асинхронный запрос, написать DLL, создать отдельный поток, для запуска ордеров другим роботом...

Таким образом и задержек не будет в основном алгоритме и все ордера гарантированно могу проконтролировать, даже отменить (убрать из очереди) если надо...

 
Yurich:

Вы неправильно поняли :(

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

Yurich, а меня не устраивает, уверен, что и Вам было бы лучше, если бы разработчики позаботились об этом. 
 
Да, кстати, когда вы обнуляете magic ( присваиваете изначальное значение, не в в момент установки советника )?
Причина обращения: