Данные по бумагам в портфеле скриптом lua

Страницы: 1
RSS
Данные по бумагам в портфеле скриптом lua, Данные по бумагам в портфеле скриптом lua
 
Пытаюсь получить данные по бумагам в портфеле скриптом. Выдает то ошибки, то nill
неделю ковыряюсь, не понимаю в чем ошибка((
в портфеле одна акция Роснефти, нужно что бы при запуске скрипта вывел месседж что в портфеле 1 акция Роснефти.

 sec_code = "SIBN"
 Firm_ID = "MC00025000XX"
 Kod_klienta = "4XXXN"
ACCOUNT = "L01-00000F00"
limit_kind = "1"
 res = getDepo(Kod_klienta, Firm_ID, sec_code, ACCOUNT)
local lots = ("depo_current_balance")
message("Текущий остаток=" ..lots)


или


sec_code = "SIBN"
Firm_ID = "MC00025000XX"
Kod_klienta = "4XXXN"
ACCOUNT = "L01-00000F00"

function LB()
n = getNumberOf("depo_limits")
value = 0
res = nil
for y = 0, n-1 do
trade = getItem("depo_limits", y)
if (trade["client_code"] == Kod_klienta) and
(trade["firmid"] == Firm_ID) and
(trade["sec_code"] == sec_code) and
(trade["trdaccid"] == ACCOUNT) and
(trade["limit_kind"] == 2) then
res = trade["currentbal"]
break
end
end
return res
end

message(tostring(LB()), 0)


Выдают nill
 
function poz(class_code, sec_code)
--ищим открытые позиции по заданным тикерам
for i=0,getNumberOf("DEPO_LIMITS")-1 do
local limit = getItem("DEPO_LIMITS", i)
if limit~=nil and limit.sec_code == sec_code and limit.client_code == clientcode and limit.limit_kind==365 ---Tx
then
  balance = tonumber(math.floor(limit.currentbal))
  prc_p = limit.wa_position_price
end
end
return balance, prc_p
end

--массаж
message(balance.."   ".. prc_p)
 
 Описание:
Функция предназначена для получения значений параметров таблицы «Купить/Продать». Функция возвращает таблицу Lua с параметрами из таблицы QUIK «Купить/Продать», означающими возможность купить либо продать указанный инструмент «sec_code» класса «class_code», указанным клиентом «client_code» фирмы «firmid», по указанной цене «price». Если цена равна «0», то используются лучшие значения спроса/предложения. Таблица параметров

Формат вызова:
TABLE getBuySellInfo (STRING firm_id, STRING client_code, STRING class_code, STRING sec_code, NUMBER price)

Дополнительные таблицы:
Таблица параметров
Параметр Тип Описание
is_margin_sec STRING Признак маржинальности инструмента. Возможные значения:
«0» – не маржинальная;
«1» – маржинальная;

is_asset_sec STRING Принадлежность инструмента к списку бумаг, принимаемых в обеспечение. Возможные значения:
«0» – не принимается в обеспечение;
«1» – принимается в обеспечение;
Код
-- Запрашиваем данные
result = getBuySellInfo(firm_id, client_code, class_code, sec_code, 0)

-- Выводим таблицу результата
message(
    "is_margin_sec = " .. tostring(result.is_margin_sec) .. "; \n" ..
    "is_asset_sec = " .. tostring(result.is_asset_sec) .. "; \n" ..
    "balance = " .. tostring(result.balance) .. "; \n" ..
    "can_buy = " .. tostring(result.can_buy) .. "; \n" ..
    "can_sell = " .. tostring(result.can_sell) .. "; \n" ..
    "position_valuation = " .. tostring(result.position_valuation) .. "; \n" ..
    "value = " .. tostring(result.value) .. "; \n" ..
    "open_value = " .. tostring(result.open_value) .. "; \n" ..
    "lim_long = " .. tostring(result.lim_long) .. "; \n" ..
    "long_coef = " .. tostring(result.long_coef) .. "; \n" ..
    "lim_short = " .. tostring(result.lim_short) .. "; \n" ..
    "short_coef = " .. tostring(result.short_coef) .. "; \n" ..
    "value_coef = " .. tostring(result.value_coef) .. "; \n" ..
    "open_value_coef = " .. tostring(result.open_value_coef) .. "; \n" ..
    "share = " .. tostring(result.share) .. "; \n" ..
    "short_wa_price = " .. tostring(result.short_wa_price) .. "; \n" ..
    "long_wa_price = " .. tostring(result.long_wa_price) .. "; \n" ..
    "profit_loss = " .. tostring(result.profit_loss) .. "; \n" ..
    "spread_hc = " .. tostring(result.spread_hc) .. "; \n" ..
    "can_buy_own = " .. tostring(result.can_buy_own) .. "; \n" ..
    "can_sell_own = " .. tostring(result.can_sell_own) .. "; \n"
)
Страницы: 1
Читают тему
Наверх