Пытаюсь найти оставшиеся заявки по текущей цене внутри 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о старыми долговисящими заявками