Получение стакана котировок

Страницы: 1
RSS
Получение стакана котировок, EUR_RUB_TOM
 
Здравствуйте, пытаюсь получить стакан котировок по инструменту EUR_RUB_TOM, но почему то данные не возвращаются. Использую следующирй код
--[[function main()
local Name = 1;
message(tostring(Name)); -- Чтобы вывести текстовые данные в сообщении, нужно их сначала преобразовать в текстовый формат
local nameTable = {};
--Заполнение таблицы числами от 1 до 10 с шагом 1 с последующим выводом на экран
for i=1,10 do
nameTable[i] = i+1;
message(tostring(nameTable[i]));
end
end

function main()
t = {};
t["red"] = 10;
t["green"] = 20;
t["blue"] = 30;
t["white"] = 40;
t["black"] = 50;
t["cyan"] = 100;
t["yellow"] = 1200;
for key, val in pairs(t) do
message("Ключ " .. key .. " | Значение " .. val);
end
end

LastPrice = GET_PARAM ("CETS", "USD000UTSTOM", "last")
message(tostring(LastPrice));]]
local stopped = false;
function OnStop(  )
stopped = true;
return 2000;
end

function main(  )
local Table = AllocTable()
AddColumn(Table,1,'Offer vol',true,QTABLE_INT_TYPE,15);
AddColumn(Table,2,'Offer price',true,QTABLE_INT_TYPE,15);
AddColumn(Table,3,'Bid vol',true,QTABLE_INT_TYPE,15);
CreateWindow(Table);
SetWindowCaption(Table,'Стакан котировок');
SetWindowPos(Table,0,10,300,100);
local RowN = 2;
for i=1,RowN,1 do
InsertRow(Table,-1);
end
local Offer_Vol;
local Offer_Price;
local Offer_Count;
local Bid_Vol;
local Bid_Price;
local Bid_Count;
local Quates = {};
local SecCode = "EUR_RUB__TOM";
while stopped  == false do
Quates = getQuoteLevel2("CETS",SecCode);
Offer_Count = tonumber(Quates.Offer_Count);
Bid_Count = tonumber(Quates.Bid_Count);
if Offer_Count > 0 then
Offer_Vol = tonumber(Quates.offer[1].quantity);
Offer_Price = tonumber(Quates.offer[1].price);
SetCeil(table,1,1,toString(Offer_Vol));
SetCeil(table,1,2,toString(Offer_Price));
end
if Bid_Count > 0 then
Bid_Vol = tonumber(Quates.bid[Bid_Count].quantity);
Bid_Price = tonumber(Quates.bid[Bid_Count].price);
SetCeil(table,2,2,toString(Bid_Price));
SetCeil(table,2,3,toString(Bid_Vol));
end
sleep(100)

end



end
 
Цитата
Олег написал:
но почему то данные не возвращаются.

Проблема в синтаксисе. В LUA регистр символов имеет значение. Так для LUA имя переменной table и Table это разные вещи.
Функция toString и tostring - это разные вещи.
Offer_Count и offer_count - это разные вещи.
Bid_Count и bid_count - это разные вещи.

приведите все названия в порядок
Страницы: 1
Читают тему (гостей: 1)
Наверх