Блог им. bosco

Скорость таблицы всех сделок в квике

    • 23 ноября 2017, 12:00
    • |
    • П М
  • Еще
Вобщем стало немного подприпаривать, что даже 350 мсек иной раз не хватает, чтобы квик отрисовал свечку, т.е. допустим сейчас 10:01:00.350, я забираю свечку от 10:00:00 — забрал, ок, а она ещё после этого дорисовывается, т.е. в неё «добавляются» данные. Не всегда, но бывает. Т.е. у меня данные уже не правильные. А бегать туда-сюда и пересчитывать всё по новой — пффффф...

Вот думаю попробовать собирать через таблицу всех сделок, ну заказал данные, открыл таблицу — смотрю визуально в таблице все данные от «времени сервера», который показывает квик — отстают примерно не секунду-две-три.
Ну да, у меня простой интернет, 100мб, не выделенка.

Вопрос, если через lua получать данные, то с какой задержкой приходят сделки в потоке «обезличенных сделок»? Каким API лучше пользоваться? Датасорцом? В принципе, меня бы может и 350 мсек устроило, я не hft, но проскальзывание не хочется большОго, и всё-таки хочется поиметь максимум возможного из бесплатного.
Со свечками всё-таки какая-то проблема, в том что даже если есть уже на графике свечка от 10:00:01, которая меняется, при этом свечка от 10:00:00 ещё некоторое (совсем незаметное на глаз) время может изменяться тоже.
в таблице всех сделок данные по идее чётко отсортированы по времени.




  • Ключевые слова:
  • lua
★2
14 комментариев
Это особенность квика. Квик передает данные пакетами. Пакет не понятно как формируется и мы в 10.00.035 можем получить данные от 00.03, а в 10.00.05 получить данные от 00.01
Я в данном случае не запариваюсь и ставлю в 500мс задержку обработки
avatar
Eldar Shaymardanov, плюс ещё задержка может быть разной на разных серверах брокера
avatar
можно сделать ускорение обработки данных в квике

в квике я всегда собирал через таблицу сделок. Задержку не замерял.
avatar
Забирайте данные через QLua и стройте свечки сами. Делаю через финам, проблем нет.
Со сбером проблемы (там задержка по заявке 3-5сек.)
avatar
Karim, вопрос что быстрее, если мне надо только минутную свечку — свечка с графика, собранная сервером квика, или свечка с таблицы всех сделок, собранная мной на локале?
второй способ я уже сделал, вот думаю, стоит ли тратить время на первый.
avatar
ПBМ, колбек по обновлению свечи наверно быстрее будет
avatar
Из таблицы всех сделок будет быстрее, там еще в текстовом конфиге настраивается частота обновления. Точно не помню где помню что делал. Почитайте рекомендации QScalp для квика, там подробно описано было. 
avatar
Попробуй замерить оба варианта.
Не скажу за таблицу всех сделок,
но через CreateDataSource у меня получается обработать ~ 60-65 тысяч свечек в секунду (произвольный доступ к произвольному инструменту)
интернет тоже простой.
avatar
Смарт ком или транзак. Дело не в Квике а его серверах, тема избитая. На движу хе таблица всех сделок опаздывает до 30 секунд даже на выделенке!
avatar
1. Бывают задержки таблицы всех сделок в начале основной сессии и вечерней (у меня в финаме бывают). От этого могут не строиться текущие свечи и не передаваться данные в системы технического анализа. Такая задержка может быть до 3-6 сек.
Задержки бывают в момент сильных новостей.
2. Лучше всего использовать Lua API и нативный язык программирования: с++ или pascal.
Доступ будет быстрее, чем просто пользоваться скриптами.
Фактически будет скорость нативного приложения и прямой доступ к данным.
3. Лучше загружать историю через CreateDataSource, а за текущую сессию строить из таблицы всех сделок.
4. В квике есть приоритет обновления таблиц:
-стаканы (хотя они реализованы так, что тормозят, но это беда квика)
-таблицы всех сделок
-графики
-все остальное
5. Таблица всех сделок приходит частями:
Например, сначала реал-тайм, потом история, потом опять реал-тайм, потом опять история. Реал-тайм надо складировать в массив, пока не придет вся история. После только использовать реал-тайм.
6. Свечки загружаются с сервера за прошедшие сессии, свечки за текущую сессию собираются исходя из таблицы всех сделок (кажись так), реал-тайм свечи точно так.
avatar
Александр, спасибо, как раз 2. и использую, да.
можно уточнить, по 3. — чем лучше?
по п 4. есть ещё таблица текущих параметров, она быстрее графика, кажется.
avatar
ПBМ, п. 3 Собственно ни чем не лучше. Другое дело, что возможно на несколько будет побыстрее, но не уверен. Бывает по разному. Но чаще все же способ 3 быстрее получается. Но я думаю, что если скорость не важна, то не стоит заморачиватся, возможно просто не увидите больших изменений.
Прибавку в скорости вы можете получить, если переведете скрипт на lua api.
avatar
тоже напрягает скорость таблицы всех сделок.подключен Qscalp к квику, так там отображаются сделки нормально, а в таблице сделок по секунде и больше может быть задержка, после того как их Qscalp нарисовал.в атасе, наверное, с этим лучше??
avatar

теги блога П М

....все тэги



UPDONW
Новый дизайн