можно ли в 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
кахто таг.
Новая аналитическая платформа для проф инвесторов — что умеет Андромеда?
На рынке аналитических сервисов для фондового рынка появился новый инструмент – платформа Андромеда . Это информационно-аналитическая система, ориентированная в первую очередь на...
11:41
РосДорБанк: итоги стратегии 2020–2025. Перевыполнение в жестком контуре экономики
Длительный горизонт стратегического планирования для любого банка — серьезное испытание. А когда этот период приходится на годы турбулентности и глобальных потрясений, адаптация к новым...
📈 Рынок инвестиционных платформ в России: новая точка роста
Российский рынок инвестиционных платформ продолжает активно развиваться и становится полноценной частью финансовой инфраструктуры. Таким образом бизнес получает дополнительный инструмент...
Мой Рюкзак #65: Ставка на энергетический и продовольственный кризис из-за перекрытия проливов
Если февраль радовал стоимостных инвесторов, то март пока радует только валютных спекулянтов и миноритариев Роснефти и Совкомфлота (в совкомфлоте идею подсветил в нефтяном срезе, но сам прошел...
sml386, в СБ НЕТ комиссии за свой фонд SBMM. Есть брокерская, но её тоже можно избежать, если выставлять ЛИМИТНУЮ заявку в стакан (чтобы заявка повисела), а не рыночную (когда сразу покупаешь по лу...
За последние 3 года мы выросли в 3 раза — директор сети "Магнит Аптека" Сергей Буйлов в интервью "Ведомости. Здоровье" Директор сети «Магнит Аптека» Сергей Буйлов в интервью «Ведом...
Мосгорсуд постановил, что ЮГК обязана взять нераспределённую прибыль за 2025 год и предыдущие периоды — не менее 33,3 млрд рублей — и положить её на депозитный счёт суда. Это не конфискация: деньги ле...
Хотите дополнительный доход без особых усилий? Просто пройдите простую регистрацию и начните получать вознаграждение за каждый активный шаг!
👉 Регистрация займет меньше минуты, а ваши доходы начн...
YgrOK, И не надо, просто смотрите стакан, на продажу в акциях стоит мейкер с лотом 265412 по цене 233,4 и смотрите стоимость фьючерса!))Кто кого хеджирует и кто кому создает ливкидность.
Трамп назвал «нечестным», что Иран блокирует Ормузский пролив, потому что «США победили в войне»
«Это даже нечестно с их стороны. Мы уже выиграли! Они не имеют права продолжать то, что они творят...
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
кахто таг.