Добрый день. подскажите пожалуйста, как средствами qlua выставить заявку лимитированную заявку с условием "Полностью или отклонить"? В каком параметре это указывается?
Добрый день. В таблице всех сделок присутствует графа "операция". Там указано "покупка" или "продажа". Но как это определяется? В сделке же участвуют две стороны - и продавец и покупатель... Даже если за основу взять допустим, какая заявка лежит в стакане, то все равно встречная заявка будет противоположная. На каком основании одну из этих заявок считать именно той самой "операцией"? Если честно, сломал весь мозг, думая об этом. Разъясните, пожалуйста.
У меня почему-то этот код выдает нуль, хотя код фирмы и клиента беру из квика, копированием. И как посмотреть стоимость портфеля на начало дня (для ETC)?
Добрый день. Подскажите, пожалуйста, как на валютном рынке ETC получить начальное и текущее значение стоимости портфеля для целей вычисления прибыли/убытка за день? Делал вот так: portf=getPortfolioInfo(p_firm_id,p_clientcode) if tonumber(portf.profit_loss)/tonumber(portf.in_asset)*100>=p_loss_limit the но profit_loss получему то равно нулю, делал вот так: portf=getPortfolioInfoEx(p_firm_id,p_clientcode,0) message(tostring(portf.in_assets).." "..tostring(portf.portfolio_value))
но почему то тоже в результате получал одни нули. Подскажите пожалйста, как правильно поучить стоимость портфеля на ETC?
Добрый день. Подскажите пожалуйста, как получить из таблице всех сделок дату со временем а также какая была совершена операция (покупка или продажа)? Делаю вот так:
Код
function to_log(a_msg)
p_file:write(os.date().." "..a_msg.."\n")
end
function fn(datetime,sec_code, price, qty, operation)
to_log(tostring(sec_code).." "..tostring(price).." "..tostring(datetime).." "..tostring(qty).." "..tostring(operation));
if sec_code==p_seccode then
return true
else
return false
end
end
function robot()
--message("robot",1)
to_log("sdfsdfDS")
local NO=getNumberOf("ALL_TRADES")
t_trades = SearchItems("ALL_TRADES", 0, NO-1, fn, "datetime, sec_code, price, qty, operation")
if t_trades ~= nil then
for i=1,#t_trades,1 do
t_trades_item=getItem("ALL_TRADES", t_trades[i])
--message(t_trades_item["datetime"],1)
end
end
end
но почему то значения datetime и operation равны nil, хотя все остальные поля -нормальные.
Подскажите пожалуйста, гед скачать документацию по qlua. Дело в том, что сайт help.qlua.org - лежит, и непонятно, где еще можно посмотреть справочник по функциям qlua.
is_run=true
function main()
id=AllocTable()
AddColumn(id, 1, "Код инструмента", true, QTABLE_STRING_TYPE, 11)
AddColumn(id, 2, "Текущий остаток", true, QTABLE_INT_TYPE, 10)
while is_run do
sleep(2000)
end
end
function OnStop(stop_flag)
is_run=false
end
function OnAccountBalance(acc_bal)
message("OnAccountBalance",1)
SetCell(id, row, 1, tostring(acc_bal["sec_code"]))
SetCell(id, row, 2, tostring(acc_bal["currentpos"]))
end
Во время работы этого скрипта совершаю разные сделки, следовательно, баланс манятся. Но функция OnAccountBalance почему то при этом не вызывается. Ни окно с таблицей не появляется, ни сообщении. Подскажите пожалуйста, что я не так делаю.
Settings={}
Settings.Name = "minimal"
function Init()
return 1
end
function OnCalculate(index)
return SetValue(index, 1, 2)
end
Но он почему то выдает сообщение: Attempt to call global 'SetValue' (a nil value). Подскажите пожалуйста, что я делаю не так или дате пожалуйста ссылку на инструкция по созданию индикаторов или пример простого индикатора?