Подскажите. Не могу сообразить. Сканирую таблицу depo_limits в самой функции видит позиции, но возращает только одну и туже позицию, что через return, что через присваивание глобальных переменных. Результат одинаковый. Как сделать что бы возращались параметры по каждой позиции, а не только одной и той же?
Код |
---|
IsRun = true
ACCOUNT = 'NL0011100043' -- Код счета
CLASS_CODE = 'QJSIM' -- Код класса
EXPIRY_DATE = 'TODAY' -- Срок действия стоп-заявки: 'TODAY' - до окончания текущей торговой сессии, 'GTC' -до отмены, или время в формате 'ГГГГММДД'
PriceStep = 0
Procent = 2
IsRun = true
SEC_CODE = '' -- Код инструмента
QTY_LOTS = 0
function OnStop()
IsRun = false
end
function main()
while IsRun do
ScanerPortfelya()
PrintDbgStr("SEC_CODE_"..SEC_CODE.."_QTY_LOTS_"..QTY_LOTS)
sleep(1000)
SEC_CODE = ""
QTY_LOTS = 0
end
end
-- Сканирует Портфель
ScanerPortfelya = function()
-- Акции
-- Перебирает таблицу "Позиции по инструментам"
local num = getNumberOf('depo_limits')
local depo_limit
for i = 0, num - 1 do
depo_limit = getItem('depo_limits', i)
if depo_limit.limit_kind == 0 and depo_limit.currentbal ~= 0 then
SEC_CODE = depo_limit.sec_code
QTY_LOTS = depo_limit.currentbal
PrintDbgStr("-----------------START--------------------")
PrintDbgStr("Код бумаги_"..depo_limit.sec_code) -- Код бумаги (STRING)
--PrintDbgStr("Счет депо_"..depo_limit.trdaccid) -- Счет депо (STRING)
--PrintDbgStr("Идентификатор фирмы_"..depo_limit.firmid)
PrintDbgStr("Код клиента_"..depo_limit.client_code)
-- PrintDbgStr("Входящий остаток по бумагам_"..depo_limit.openbal)
-- PrintDbgStr("Входящий лимит по бумагам_"..depo_limit.openlimit)
PrintDbgStr("Текущий остаток по бумагам_"..depo_limit.currentbal)
-- PrintDbgStr("Текущий лимит по бумагам_"..depo_limit.currentlimit)
-- PrintDbgStr("Заблокировано на продажу количества лотов_"..depo_limit.locked_sell)
-- PrintDbgStr("Заблокированного на покупку количества лотов_"..depo_limit.locked_buy)
-- PrintDbgStr("Стоимость ценных бумаг, заблокированных под покупку_"..depo_limit.locked_buy_value)
-- PrintDbgStr("Стоимость ценных бумаг, заблокированных под продажу_"..depo_limit.locked_sell_value)
PrintDbgStr("Цена приобретения_"..depo_limit.awg_position_price)
PrintDbgStr("Тип лимита_"..depo_limit.limit_kind)
PrintDbgStr("==================END=======================")
-- return depo_limit.sec_code, depo_limit.currentbal, depo_limit.awg_position_price
-- return depo_limit.sec_code, depo_limit.currentbal
end
end
end
|