Блог им. kvazar

Обработка заявок в квике .... 33 секунды...

    • 29 сентября 2016, 13:27
    • |
    • kvazar
  • Еще
Разделил БД (робота) на 4 относительно независимые логические части (обработка тиков (статблок, индикаторы), сама мехсистема, визуализация, архив сделок и всякой всячины), устраняю «баги»,  скорость обработки увеличилась. Смотрю, никогда не было и вот опять © — теряет позиции снова, нужно переписать проверочные процедуры. Дублирует заявки (одна ушла, вторая следом, первая еще не обработана).
Посмотреть решил, что-то раньше не доходили руки, а как собственно заявки уходят через *.txt файлы квика. Ткнул пальцем в первую попавшуюся.

id_trans 167 заявка сформирована 12:15:49, в текстовом файле оказалась в 12:15:50, зарегистрирована в 12:15:50, а в квике выставлена  на биржу в 12:16:23. Это, е-мае, 33 секунды в обед на спокойном рынке!

Соберу запрос, интересна статистика…
★2
58 комментариев
Так текстовый файл, небось, раз в минуту обрабатывается. 
Можно еще с курьером заявки посылать.
avatar
SergeyJu, раз в 3 секунды
avatar
kvazar, *.tri файл считывается квиком каждые 100ms. После генерации сигнала роботом заявка никогда не выставлялась на биржу более 1с. Брокер тоже финам. Либо у вас с инетом что то не так, либо с алгоритмом.
avatar
Karim, интернет мск летает просто, из тро-файла! зарегистрирована заявка в 12:15:50 — на бирже выставлена 12:16:23, я чисто случайно заметил.
avatar
kvazar, Не знаю, что у вас за алгоритм, но у меня в *.tro файл не пишет когда заявка выставлена на биржу. Пишет когда отправлена транзакция и когда зарегилась заявка. Время между ними не более 1с.
Если вы отправляете стоп-заявку на сервер брокера, то когда выставится лимит на биржу не известно.
avatar
Karim, хорошо: зарегилась заявка в 12:15:50 — написано в тро файле.
avatar
kvazar, Это стоп-заявка или лимитная. И если она зарегилась в 12:15:50, то когда отправлена из квика транзакция на ее регистрацию.
avatar
Karim, ордер на срочке, в столбце «выставлена (время)» таблицы заявки квика  значится 12:16:23
avatar
А вы уверены, что квик в *.tro файл пишет время сервера биржи, а не время вашего компа?
avatar
kvazar, Сейчас посмотрел: отправлена в 16:07:31, а выставлено на бирже в 16:06:49. Привет из будущего называется.
avatar
Karim, т.е. хвалиться нужно, я так понимаю) в тро-файле системное время? вот и разгадка моей тупизны). Жалко не сделал скрин. У меня системное время разъезжалось с временем квика на полминуты. Зашел в настройки — стоит устанавливать автоматически, перевел в ручной, потом снова вернул обратно. Т.е все как было осталось. После этого время квика и системное 1 в 1.


avatar
kvazar, Это не тупизна, это «опыт сын ошибок трудных».
avatar
kvazar, у меня раундтрип около 15 мс, если нет проблем с линией,  и я считаю, что это долго. 
avatar
… а брокер кто?..
avatar
roan, финам
avatar
kvazar,… сегодня сбер (брокер) чудит, уже 2 раза вставали по 3-5 минут и были задержки,… и вроде про БКС писали, что тоже были проблемы…
avatar
Press, понятно у кого-то счет идет на милисекунды,  но 33!
avatar
наверное какая то ошибка кода все таки =)
avatar
Андрей К, к сожалению нет
avatar
:D ппц. зачем эти блоки все? Выкидываете все, берете FAST, TWIME и VPS в зоне колокации у брокера и все становится примерно в 1 000 000 раз быстрее и стабильнее.
avatar
SECRET, насколько твайм быстрее фикса на срочке?
avatar
Alexey Kulikov, не знаю. У меня ни того ни другово не подключено
avatar
SECRET, Это денег стоит. А здесь ключевое слово — квик.
avatar
Karim, ребята, ну все ж поэтапно нужно:
зарабатывающий алго, управление капиталом, скорость и стабильность. с конца -смысл начинать. деньги есть, но скорость не поможет)
avatar
SECRET, если я не добился желаемого положительного МО, мне ни скорость, ни управление капиталом не поможет. Это следующий этап, я не дорос)
avatar
kvazar, чем выше скорость тем проще алгоритм для зарабатывания денег ;)
avatar
SECRET, согласен. но эта ниша скорее занята), я склоняюсь к интрадэю и среднесроку.
avatar
SECRET, Но сложнее разработка, тестирование и отладка.
avatar
SECRET, дошел до скорости, алгоритм так и не родился( поделитесь? ;)
avatar
kapodes, какова у вас скорость?
avatar
SECRET, FIX/FAST в зоне колокации ©
avatar
kapodes,  ASTS Bridge, CGate, TWIME, FPGA нету?
avatar
SECRET, на данный момент нет, но есть полный ордерлог по которому строятся стакан и сделки, так что при желании скорость максимальна. Вопрос только, что с ней делать) просто за скорость денег не дают(
avatar
kapodes, то что есть у вас — есть у всех, а еще у половины есть половина того, что я перечислил, а у 10% есть все, что я перечислил. Вот они быстрые. А вам нужно еще ускориться чтобы зарабатывать на скорости.
avatar
SECRET, так чтобы был смысл ускоряться, надо знать зачем. Пока не знаю. До этого все ускорялся, а толку нет.
avatar
SECRET, получается через ASTS тащим стаканы акций, через CGate тащим текущие стаканы фьючей, на FPGA быстрее всех считаем РИ и через TWIME пуляем заявки?
avatar
kapodes, да нужно со всего все тянуть, что тянется и пулять через самый быстрый протокол. 
avatar
SECRET, а fpga чтобы считать и распаковывать упаковывать пакеты?) Или может туда ещё сетевушку припаять и страту сразу запрограммировать. Чтобы был такой вообще священный грааль. Пришел, подключил и оно деньги рубит.
avatar
kapodes, да, все должно быть на FPGA.
avatar
SECRET, у вас на FPGA?
avatar
kapodes, это секрет
avatar
SECRET, ну сами же сказали, что должно быть на FPGA… Так и видиться в будущем будут уже не роботов продавать, а готовые FPGA решения. Типа купи, подключи и в Монако…
avatar
kvazar, правильно мыслите. По-моему опыту, пока по нормальной истории в плюс стабильный выходить не будет, про коннекты к бирже и выставление заявок можно и не думать. А то будет вся обвязка, а как торговать хз( Данные с квика, кстати можно через odbc выгружать в базу и с неё читать, если вдруг так удобнее. Скорость вроде более менее. Или сразу идти дальше и переходить на Transaq Connector. 
avatar
kapodes, quik -odbc так и работаю, обвязка есть — осталось дело за алго
avatar
kvazar, как показывает опыт, это и есть самое сложное. Остальное дело техники.
avatar
kapodes, я смайлик забыл поставить)
avatar
kvazar, а тут ставь не ставь, один фиг надо страту пилить))
avatar
А зачем заявки через файлы передавать? Других более быстрых способов что-ли нет.
avatar
Александр, более быстрый способ запрогать нет времени
avatar
В топике нечего обсуждать
avatar
 просто буду мониторить этот момент, не сложно
avatar
Евгений, все есть и vs prof и ваша лицензия и литературы 20 томов. Но нет времени(((  на c# или vb перейду только когда буду понимать, что это необходимо из-за скорости, имея алгоритмы. Алгоритмы я могу и так обкатывать… ну как-то так. в отпуске есть время, вот балуюсь… так все, что написано — изобретение колеса)
avatar
если уж QUIK, то trans2quik используйте
avatar
Иван Д., у меня vba… олдскул
avatar
Иван Д., Если на С++, можно и через QLua команды давать. Но с этим всем разбираться нужно, а это время. Если просто страты погонять, то можно и через файлы.
avatar

теги блога kvazar

....все тэги



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