QUIKSharp
QUIKSharp copied to clipboard
В событии OnAllTrade не приходят исторические сделки.
При старте api в событии OnAllTrade приходят только текущие сделки. Есть ли возможность в quiksharp загружать сделки с начала торговой сессии?
Они и в Квике (QLua) не приходят, на сколько мне известно (хотя, за несколько лет что-то могло измениться).
Они и в Квике (QLua) не приходят, на сколько мне известно (хотя, за несколько лет что-то могло измениться).
Есть такой загрузчик маркетдаты S#.Data, который также работает через QLua, там все приходит.
Можно прошерстить всю таблицу обезличенных сделок
function main()
n = getNumberOf(“all_trades”)
order={}
message(“total “.. tostring(n) .. “ of all trades”, 1)
for i=0,n-1 do
trade = getItem(“all_trades”, i)
-- обработать обезличенную сделку
end
Но на счет коллбэка не уверен
Предварительно: Реализовал функцию "GetAllTrades", но тестирование пока не выполнял, и как следствие в форк не выгружал. После НГ проверю как она работает. и если все будет нормально - выгружу.
UPD: В общем, во время проверки вспомнил, что я у своих брокеров не подписывался на получение потока всех сделок. В итоге, обновление выкатил, но проверить работоспособность не могу. Кто работает с этими данными - попробуйте самостоятельно, и дайте обратную связь. Для проверки можно использовать демо-приложение. Я добавил туда вызов этой функции.
можно "очистить всё и начать заново" в quik запустить программу с QuikSharp потом залогиниться в терминале, и все сделки пойдут по новой
Предварительно: Реализовал функцию "GetAllTrades", но тестирование пока не выполнял, и как следствие в форк не выгружал. После НГ проверю как она работает. и если все будет нормально - выгружу.
UPD: В общем, во время проверки вспомнил, что я у своих брокеров не подписывался на получение потока всех сделок. В итоге, обновление выкатил, но проверить работоспособность не могу. Кто работает с этими данными - попробуйте самостоятельно, и дайте обратную связь. Для проверки можно использовать демо-приложение. Я добавил туда вызов этой функции.
QuikSharp.LuaException: "Command not implemented in Lua qsfunctions module: get_all_trades" QuikSharp.MessageConverter.Create(Type objectType, JObject jObject) в QuikSharp\Serialization.cs:268
QuikSharp.LuaException: "Command not implemented in Lua qsfunctions module: get_all_trades" QuikSharp.MessageConverter.Create(Type objectType, JObject jObject) в QuikSharp\Serialization.cs:268
Вы уверены, что скопировали в папку, из которой запускаете скрипт Lua, обновленный файл qsfunctions.lua? Какой код у Вас в этом файле с 742 по 758 строки?
1.функция GetAllTrades() возвращает List((Trade)), а должна вроде List((AllTrade)). 2.возможно ли сделать, чтобы она отдавала данные порциями ? (например по 16384 записей как в DDE). Спасибо.
1.функция GetAllTrades() возвращает List((Trade)), а должна вроде List((AllTrade)). Пофиксил 2.возможно ли сделать, чтобы она отдавала данные порциями ? (например по 16384 записей как в DDE). Спасибо. На сколько я знаю, в QLua такое не предусмотрено.