прошу подсказать.
Я считаю сумму проторгованных контрактов из таблицы всех сделок. Мне интересны только сделки за последние 60 секунд.
В только что написанном коде следующий алгоритм.
Он внутри колбека OnAllTrade
simple_volume-это глобальная таблица. В ней есть микро-таблицы, посвящённые каждой сделке.
В каждой из микро-таблиц есть поля time_time(время) и deal (объём)
Моё сомнение связано со строкой
simple_volume[n]=nil
Я делаю перебор таблицы, и в ходе этого перебора удаляю элемент.
Можно ли так делать, и не собьётся ли итоговый подсчёт суммы контрактов?
Я считаю сумму проторгованных контрактов из таблицы всех сделок. Мне интересны только сделки за последние 60 секунд.
В только что написанном коде следующий алгоритм.
Он внутри колбека OnAllTrade
Код |
---|
sum_vol=0 for n,w in pairs (simple_volume) do vremya_diff=stime-simple_volume[n].time_time if vremya_diff>60 then simple_volume[n]=nil else sum_vol=(sum_vol or 0)+simple_volume[n].deal end end |
В каждой из микро-таблиц есть поля time_time(время) и deal (объём)
Моё сомнение связано со строкой
simple_volume[n]=nil
Я делаю перебор таблицы, и в ходе этого перебора удаляю элемент.
Можно ли так делать, и не собьётся ли итоговый подсчёт суммы контрактов?