Неприятность таблицы "Клиентский портфель"

Страницы: 1
RSS
Неприятность таблицы "Клиентский портфель", Вопрос "совсем новичка":
 
Коллеги, прошу подскажите, что я не так делаю?
Не возвращает прочитанные количества лотов:

-- функция возвращает количество лотов в клиентском портфеле по заданному инструменту
function get_lots(arg_Sec_Code)
   local lots = 0                
   for i = 0, getNumberOf("FUTURES_CLIENT_HOLDING") - 1 do            
      if getItem("FUTURES_CLIENT_HOLDING",i).sec_code == arg_Sec_Code then
         lots = getItem("FUTURES_CLIENT_HOLDING",i).totalnet
      end
   end      
   return lots
end
 
А зачем два раза получать строку через getItem?
Строку проще получить один раз, проверить что она не пустая, т.к. такое бывает и потом уже из нее получать данные, сверив, что она по нужному инструменту, счету.
 
Цитата
Павел написал:
Коллеги, прошу подскажите, что я не так делаю?
Не возвращает прочитанные количества лотов:

-- функция возвращает количество лотов в клиентском портфеле по заданному инструменту
function get_lots(arg_Sec_Code)
   local lots = 0                
   for i = 0, getNumberOf("FUTURES_CLIENT_HOLDING") - 1 do            
      if getItem("FUTURES_CLIENT_HOLDING",i).sec_code == arg_Sec_Code then
         lots = getItem("FUTURES_CLIENT_HOLDING",i).totalnet
      end
   end      
   return lots
end
Буквы высокие.
Код
local function get_lots (arg_Sec_Code)
   for i = 0, getNumberOf ("FUTURES_CLIENT_HOLDING") - 1 do
       local fch = getItem ("futures_client_holding", i)   
       if fch and fch.sec_code == arg_Sec_Code then
           return fch.totalnet     -- or 0
       end
   end      
   return 0
end
 
Цитата
Игорь М написал:
getItem ("futures_client_holding"
Игорь, большое спасибо! А нужно держать созданной (открытой) какую-либо из таблиц Квика для выполнения getItem ("futures_client_holding"...?
 
Коллеги, я прошу прощения! Возвращает nil. Не пойму, что не так. Напишите в двух словах, пожалуйста, что в Квик нужно настроить для выполнения запроса кол-ва лот по инструменту!
Код
-- функция возвращает количество лотов в клиентском портфеле по заданному инструменту
local function get_lots (arg_Sec_Code)
   for i = 0, getNumberOf ("FUTURES_CLIENT_HOLDING") - 1 do
       local fch = getItem ("futures_client_holding", i)   
       if fch and fch.sec_code == arg_Sec_Code then
           return fch.totalnet     -- or 0
       end
   end      
   return 0
end
 
Цитата
Павел написал:
Цитата
Игорь М написал:
getItem ("futures_client_holding"
Игорь, большое спасибо! А нужно держать созданной (открытой) какую-либо из таблиц Квика для выполнения getItem ("futures_client_holding"...?
Игорь, 1000 извинений разобрался, все понятно с фьючерсом. А в какой таблице узнать лоты по акциям фонды?
 
Цитата
Так я получу количество лот газпрома в портфеле?
Код
    -- Задаем параметры запроса

    firm_id = "MC0292900000"
    client_code = "397790"
    class_code = "TQBR"
    sec_code = "GAZP"


    -- Запрашиваем данные
    result = getBuySellInfo(firm_id, client_code, class_code, sec_code, 0)

    lots = result.balance
 
Цитата
Павел написал:
 Так я получу количество лот газпрома в портфеле?
Код
       -- Задаем параметры запроса 

    firm_id  =   "          " 
    client_code  =   "        " 
    class_code  =   "TQBR" 
    sec_code  =   "GAZP" 


     -- Запрашиваем данные 
    result  =   getBuySellInfo (firm_id, client_code, class_code, sec_code,  0 )

    lots  =  result.balance
  
Вы поменьше выкладывайте персональных данных. По поводу выведется что-то или нет проверяйте на практике самостоятельно, вопросов у вас и без мелочей ещё ворох останется. В "Интерпретаторе языка Lua" описаны функции, таблицы и пр. - пользуйтесь, и поиском по форуму тоже, здесь уже многие вещи обмусолены.
 
Цитата
Павел написал:
Код
Спасибо за код!
Страницы: 1
Читают тему
Наверх