Пытаюсь найти оставшиеся заявки по текущей цене внутри OnTrade
Но, в таблице заявок к этому моменту не успевают обновится данные, даже флаги, что заявка исполнена.
Как их принудительно перепроверить внутри этой функции?
myLog('norders='..tostring(#norders)) возвращает количество в последней сделке, даже если там несколько заявок было и все они разом исполнились.
Точно такой же код поиска нормально работает в main cо старыми долговисящими заявками
Код |
---|
function findNumOrderPrice(ordtable, TRADE_CLASS_CODE, TRADE_SEC_CODE, fPrice) function myFindPriceNum(C,S,F,P) if (tostring(C) == tostring(TRADE_CLASS_CODE)) and (tostring(S) == tostring(TRADE_SEC_CODE)) and (bit.band(F, 0x1) ~= 0) and (tostring(P) == tostring(fPrice)) then return true end return false end local norders = SearchItems(ordtable, 0, getNumberOf(ordtable)-1, myFindPriceNum, "class_code,sec_code,flags,price") if (norders ~= nil) and (#norders > 0) then myLog('norders='..tostring(#norders)) return #norders end return 0 end |
Как их принудительно перепроверить внутри этой функции?
myLog('norders='..tostring(#norders)) возвращает количество в последней сделке, даже если там несколько заявок было и все они разом исполнились.
Точно такой же код поиска нормально работает в main cо старыми долговисящими заявками