В таблице "Текущие торги" в столбце "Кол. спрос" вижу отрицательное число акций, при этом в стакане в строке по цене лучшей покупки это число выводится нормально и если его сложить с модулем числа в столбце "Кол. спрос", то получается > 4 млрд (> UINT_MAX). Когда в стакане в этой строке число акций становится < 2 млрд., в таблице торгов это значение совпадает со значением в стакане.
Вывод очевиден: в этой таблице Квика (а, возможно, и в других) количества акций для покупки/продажи хранятся в типе int (32 бита со знаком (на фига ещё и со знаком?)), поэтому происходит переполнение разрядной сетки.
Хочу предупредить, что я в стакане по этой акции на moex по лучшей цене покупки видел заявок в сумме > 3.5 млрд., поэтому сразу меняйте тип этих чисел на int64 (т.к. Lua не понимает uint64).
Вывод очевиден: в этой таблице Квика (а, возможно, и в других) количества акций для покупки/продажи хранятся в типе int (32 бита со знаком (на фига ещё и со знаком?)), поэтому происходит переполнение разрядной сетки.
Хочу предупредить, что я в стакане по этой акции на moex по лучшей цене покупки видел заявок в сумме > 3.5 млрд., поэтому сразу меняйте тип этих чисел на int64 (т.к. Lua не понимает uint64).