| / | Форум |
|
Integer
23.06.2010 22:24
Хотелось бы узнать подробней как происходит этот процесс. Допустим, происходит закрытии или удалении ордера, с сервера в терминал приходит новый список ордеров, имеющийся в терминале список сначала обрезается, а затем заполняется новыми данными. В связи с этим возможен момент, когда в списке отсутствует фактически существующий ордер (при этом удается пройтись в цикле по всем ордерам и выделить каждый ордер функцией OrderSelect()). Может быть и ошибаюсь. Хотелось бы услышать от разработчиков, возможно ли такая ситуация, или абсолютно гарантировано, что нет? |
|
Организуйте багтрекинг и техсаппорт для своей компании В TeamWox имеются все для того чтобы организовать багтрекинг. Интегрировав модуль Сервисдеск с веб-сайтом, Вы сможете получать заявки своих клиентов напрямую в TeamWox. Более того, вся переписка с клиентами автоматически распознается и попадает в архив, где ее без труда можно найти в будущем. |
|
wise
27.06.2010 11:56
Я думаю, что терминал не видит промежуточные состояния. Это как Ask и Bid, которые запоминаются в момент старта на приходе тика. То есть, все изменения окружения -- атомарны. Ордер или тут или там. А вообще, было бы лучше описать какую проблему решаем. =) ps Кстати, подумалось. Список-то один. Просто меняется статус ордера, и он уходит в хистори. |
|
PapaYozh
27.06.2010 13:22
wise: ps Кстати, подумалось. Список-то один. Просто меняется статус ордера, и он уходит в хистори. Не обязательно, если глубина истории ограничена, то ордер может пропасть из списка рыночных не появившись в истории. PS. Вообще, очень жать, что подобные "мелочи" никак не освещены в документации. Ведь, как известно, бес сидит в нюансах. |
|
keekkenen
27.06.2010 14:10
раз данная проблема всплывает постоянно у разных людей, значит так и есть, фактическое состояние ордеров может не соответствовать тому что отражено в журнале.. вероятно, стартовав тиком советник добавляет/удаляет ордер и тут же проверив, получим что ничего этого не произошло, хотя соответствующая операция выполнилась успешно, вероятно, журнал обновляется по тику любого открытого инструмента, т.е. есть некий промежуток времени, после выполнения операции и обновлением журнала... все это мои предположения, подождем просветителей..
|
|
JavaDev
27.06.2010 14:57
Integer: ... В связи с этим возможен момент, когда в списке отсутствует фактически существующий ордер (при этом удается пройтись в цикле по всем ордерам и выделить каждый ордер функцией OrderSelect())... Проблема есть если используешь 2+ терминала на 1 счёт. Для решения проблемы использую контроль ордеров внешней софтой (скидываю тикеты). Для контроля закрытых использую OrderSelect по тикету и OrderCloseTime()>0 - в этом случае нет разницы в каком списке закрытый ордер (Active/History) |
|
wise
27.06.2010 21:07
JavaDev: Вот-вот. Я тоже примерно так делал.Для контроля закрытых использую OrderSelect по тикету и OrderCloseTime()>0 - в этом случае нет разницы в каком списке закрытый ордер (Active/History) |
|
sanyooooook
28.06.2010 15:10
|
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий