Всем добрый день.
Есть такой код:
Работает нормально, только после выполнения кода почему-то повторяются сообщения, которые находятся внутри functon OnTrade(trade). См. вложенный файл с серией сообщений после выполнения кода.
Подскажите, пожалуйста, с чем это связано и как исправить.
С уважением.
Есть такой код:
Код |
---|
ticker = {"VTBR"} lot = {"1"} trans_id = {os.time()+1} account = "xxxxxx" class_code = "yyyy" client_code = "zzzzzzzz" LastStatus = {nil} run = true function main() TransOpenPos() while run do sleep(1) end end function OnStop() run = false end function TransOpenPos() for j = 1, #ticker do local Transaction={ ACCOUNT = account; CLIENT_CODE = client_code; CLASSCODE = class_code; SECCODE = ticker[j]; ACTION = 'NEW_ORDER'; OPERATION = 'S'; TYPE = 'M'; PRICE = 0; QUANTITY = lot[j]; TRANS_ID = tostring(trans_id[j]); } local Res = sendTransaction(Transaction) if Res ~= '' then message('TransOpenPos(): Ошибка отправки транзакции: '..Res) else message('TransOpenPos(): Транзакция отправлена') end end end function OnTrade(trade) for j = 1, #ticker do if trade.trans_id == trans_id[j] then sleep(100); message('OnTrade(): По транзакции №'..trade.trans_id..' успешно совершена сделка №'..trade.trade_num..' по цене '..trade.price..' объемом '..trade.qty) qty_trades = getNumberOf("trades"); num_trade = 0; for i = 0, qty_trades - 1 do trade_find = getItem("trades", i); if trade_find.sec_code == ticker then num_trade = trade_find.trade_num end end message("Номер сделки в торговой системе - "..trade.trade_num); sleep(100); end end end |
Работает нормально, только после выполнения кода почему-то повторяются сообщения, которые находятся внутри functon OnTrade(trade). См. вложенный файл с серией сообщений после выполнения кода.
Подскажите, пожалуйста, с чем это связано и как исправить.
С уважением.