можно ли в lua прописать сортировку в таблице?
скажем мне нужны ТОЛЬКО заявки по покупкам, и если несколько покупок по одной бумаге, то отсортировать и их?
function fn(flags, class, sec)
return class==class_code and sec==sec_code and bit.band(flags,1)>0 -- flags>0 активные заявки
end
local orders = SearchItems(«orders», 0, getNumberOf(«orders»)-1, fn, «flags,class_code,sec_code») — выборка только активных ордеров
-------------------------------------------------------------------------------------------------
if orders~=nil then
indentpip = BookOrCancelStatus and indentpip+1 or 0
------------------------------------------------------------------------------------
local ask_price,bid_price = 0,0
ql2 = getQuoteLevel2(class_code, sec_code) — стакан
if ql2~=nil then
ask_price=tonumber(ql2.offer[1].price)
bid_price=tonumber(ql2.bid[ql2.bid_count-1].price)
end
if ask_price==nil or ask_price==0 then msg=string.format("<b>%s — %s</b> — Цена ASK не определена!",ScriptName,sec_code) mes(msg,3) break end
if bid_price==nil or bid_price==0 then msg=string.format("<b>%s — %s</b> — Цена BID не определена!",ScriptName,sec_code) mes(msg,3) break end
for key, value in pairs (orders) do
— направление заявки---------------------------------------------
local OrderSide=""
if bit.band(getItem(«orders»,orders[key]).flags,4)>0 then — заявки SELL иначе BUY
OrderSide=«SELL»
else OrderSide=«BUY» end
------------------------
local order_num = getItem(«orders»,orders[key]).order_num
local qty = round(getItem(«orders»,orders[key]).qty) — количество
local price = round(getItem(«orders»,orders[key]).price,dec) — цена
local neworderprice = TransSide==«S» and math.min(price,ask_price+indentpip) or math.max(price,bid_price-indentpip)
end
кахто таг.
GBP/CAD: Испытание на прочность — готовы ли медведи к затяжному пике?
Кросс-курс GBP/CAD провел точный тест области сопротивления в диапазоне 1.8306–1.8324. В этой зоне сформировалась разворотная свеча «падающая звезда», которая фактически оттолкнулась от указанных...
Почему P/E может плохо работать в циклических секторах?
Многие инвесторы, которые недавно пришли на рынок формируют такое мнение, что мультипликатор P/E (Price/Earnings, Цена/Прибыль) является универсальным инструментом. Низкий P/E значит “дешево”, а...
За первую половину марта российская валюта ослабла к основным на 6-9%. Что на это повлияло и чего ждать дальше — рассказывают аналитики МР. В начале года рубль держался за счет сильного...
есть акции, которые растут, несмотря на то, что ругают и эмитента и сами бумаги.
а есть акции, которые постоянно пиарят, но они не растут.
ВТБ это о втором.
Пока Костин с Пьяновым рулят, сомните...
Паша Сидоров, Есть эмитенты с более низким рейтингом и ведут себя стабильно по цене. Фондам никто не запрещает манипулировать ценами, да и рейтингами тоже. Никто их не контролирует в плане манипуля...
Нефть апрельскую на 112+ затащили под закрытие. Утром на перехаях могут прокатить. Проделки Трампа. Пора ему «заключить сделку» (уматывать нах с Ближнего Востока со всеми базами). Народ в шорты активн...
Этот ФОРДЕВИНД хочет на пол страны обратиться в суд с заявлением о банкротстве. Договорняк, чтобы панику раздуть. Не давно с ЕвроТрансом такой фокус был. Вначале наверх задёрнули и резко вниз вместе с...
Гейцам пора скотчем затариваться, чтобы СП-1 и 2 было чем отремонтировать
Ракетная атака пришлась по промышленному городу Рас-Лаффан, где расположен крупнейший в мире кластер по производству сжиж...
РУСАЛ: отчет за 2025 год - зеркало заднего вида. Надо смотреть в будущее, но акции уже выроли на 30% с начала года? РУСАЛ отчитался по МСФО за 2025 год, кто-то ждал хорошего отчета?
Крепкий...
return class==class_code and sec==sec_code and bit.band(flags,1)>0 -- flags>0 активные заявки
end
local orders = SearchItems(«orders», 0, getNumberOf(«orders»)-1, fn, «flags,class_code,sec_code») — выборка только активных ордеров
-------------------------------------------------------------------------------------------------
if orders~=nil then
indentpip = BookOrCancelStatus and indentpip+1 or 0
------------------------------------------------------------------------------------
local ask_price,bid_price = 0,0
ql2 = getQuoteLevel2(class_code, sec_code) — стакан
if ql2~=nil then
ask_price=tonumber(ql2.offer[1].price)
bid_price=tonumber(ql2.bid[ql2.bid_count-1].price)
end
if ask_price==nil or ask_price==0 then msg=string.format("<b>%s — %s</b> — Цена ASK не определена!",ScriptName,sec_code) mes(msg,3) break end
if bid_price==nil or bid_price==0 then msg=string.format("<b>%s — %s</b> — Цена BID не определена!",ScriptName,sec_code) mes(msg,3) break end
for key, value in pairs (orders) do
— направление заявки---------------------------------------------
local OrderSide=""
if bit.band(getItem(«orders»,orders[key]).flags,4)>0 then — заявки SELL иначе BUY
OrderSide=«SELL»
else OrderSide=«BUY» end
------------------------
local order_num = getItem(«orders»,orders[key]).order_num
local qty = round(getItem(«orders»,orders[key]).qty) — количество
local price = round(getItem(«orders»,orders[key]).price,dec) — цена
local neworderprice = TransSide==«S» and math.min(price,ask_price+indentpip) or math.max(price,bid_price-indentpip)
end
кахто таг.