Добрый день.
Поле flags структуры all_trades нужно интерпретировать как битовую маску (т.е. рассматривать не как число в десятичной системе счисления, а как число в двоичной системе счисления).
В вашем случае:
1025 = 0100 0000 000
1 (бит 0 (0x1) Сделка на продажу)
1026 = 0100 0000 00
10 (бит 1 (0x2) Сделка на покупку)
Для работы с битовыми масками есть специальные функции (см. справку QLua, раздел "Функции для работы с битовыми масками в структурах данных")
Легче всего использовать функцию bit.test, вот примет:
Код |
---|
if bit.test(alltrade.flags, 0) then
message("Обезличенная следка на продажу")
elseif bit.test(alltrade.flags, 1) then
message("Обезличенная следка на покупку")
else
message("Направление обезличенной сделки не определено")
end
|