Здравствуйте Помогите разобраться, почему не работает скрипт (это для нанесения сделок на график Квика) При запуске горит красный квадратик и дальше некуда Картинки buy.bmp, sell.bmp и файл trades.csv находятся в папке со скриптом --- Скрипт стащил отсюда ----------------------
function main()
local iif = function( cond, ifTrue, ifFalse )
if( cond ) then return ifTrue; end return ifFalse; end
local trades = {}; local charts = {};
local path = getScriptPath() .. "\\";
local IMAGE_BUY = path .. "buy.bmp"; local IMAGE_SELL = path .. "sell.bmp";
-- заполняем таблицу сделок for line in io.lines( path .. "trades.csv" ) do
-- суммируем лоты сделок одного инструмента в один момент времени (минута) по одинаковой цене, чтобы не заграмождать график for _, t in pairs( trades ) do if t.ticker == trade.ticker and t.timestamp == trade.timestamp and t.price == trade.price then t.lots = t.lots + trade.lots; isNewTrade = false; end end
if ( isNewTrade ) then -- запоминаем тикеры графиков, для последующий очистки charts[ trade.ticker ] = true; table.insert( trades, trade ); end
end
if( table.maxn( trades ) < 1 ) then
return; end
-- удаляем все предыдущие метки с используемых графиков for chart, _ in pairs( charts ) do
DelAllLabels( chart ); end
-- добавляем метки по таблице сделок for _, t in pairs( trades ) do
local label = { -- параметры текста метки - отрисовываются со смещением от точки сделки :-( --TEXT = iif( t.lots > 0, "5", "6" ), -- в шрифте "Webdings" это значки треугольников FONT_FACE_NAME = "Webdings", FONT_HEIGHT = 25, R = iif( t.lots > 0, 0, 255 ), G = iif( t.lots > 0, 255, 0 ), B = 0,