Снятие стоп-заявок

Страницы: 1
RSS
Снятие стоп-заявок, ответ на транзакцию
 
снимаю стоп-заявку по номеру  - примерно каждый 4й -5й раз приходит Статус "4", но заявка снимается. Причем сразу после сообщения о снятии заявки.. Не могу понять как с этим бороться.
Код
-- СНИМАЕМ СТОПЫ 
function Rem_ST_TP(ST_orderNum)
   trans_id = trans_id + 1
   message("2 ST_orderNum"..ST_orderNum, 1)
   local transaction={
                    ["TRANS_ID"] = tostring(trans_id),
                    ["ACTION"] = "KILL_STOP_ORDER",
                    ["CLASSCODE"] = p_classcode,
                    ["SECCODE"] = p_seccode,
               ["STOP_ORDER_KEY"] = tostring(ST_orderNum+0),
               ["COMMENT"]             = "ТЭЙК-ПРОФИТ и СТОП-ЛОСС"   
   }
    local res=sendTransaction(transaction)
   message ("res "..tostring(res), 1)   
   while is_run and trans_Status == nil do 
      sleep(10);
   end;
    
   -- Запоминает значение
    local Status = trans_Status;
   -- Очищает глобальную переменную
    trans_Status = nil;
    -- Если транзакция не выполнена по какой-то причине
   if Status ~= 3 then
      -- Выводит сообщение с ошибкой
      message("Status ~= 3: "..tostring(Status) ..". Снятие ПРОФИТ-ЛОСС не удалось!\nОШИБКА: "..trans_result_msg);
     
      -- Возвращает FALSE
      -- return false;
   else
      -- Выводит сообщение
      message('Снят ТЭЙК & ЛОСС: '..trans_id);
      OrderNum_CLOSE = nil;
     SP = 0
     ST_orderNum = nil
   end;
   
end
Вот такие сообщения приходят: в порядке поступления - сверху вниз

14:22:01  2 ST_orderNum"..ST_orderNum
14:22:01
14:22:01 Стоп-заявка с № [ST_orderNum] снята.
14:22:01 Не удается снять стоп-заявку № [ST_orderNum].
14:22:01 Status ~= 3: 4. Снятие ПРОФИТ-ЛОСС не удалось! ОШИБКА: Не удается снять стоп-заявку № [ST_orderNum].

Получается, что OnTransReply отвечает мне дважды на один и тот же запрос?...но запрос то один..

Расскажите, пожалуйста, как это победить и как работает логика ответа на транзакции в  Quik ?
 
Победить решил проверкой Флага на стоп-заявке, после получения ошибки снятия.

Но был бы крайне признателен, если кто-нибудь хотя бы намекнул почему возможна ситуация, описанная выше...  
 
Цитата
Сергей Качурин написал:
Но был бы крайне признателен, если кто-нибудь хотя бы намекнул почему возможна ситуация, описанная выше...
По логам видно что сначала приходит ответ что стоп успешно снят а потом что его снять невозможно (так как он уже снят)
Предполагаем что транзакция по каким-то причинам отправляется дважды.
Но чтобы не было "предположений" (которых может быть еще с десяток) нужна полная версия кода
Страницы: 1
Читают тему
Наверх