Данная статья адресована тем, кто, прежде чем что-то делать, пытается понять, как делать это  проще, быстрее и качественнее.

Попробую объяснить, какие возможности существуют при создании роботов на основе торгового терминала QUIK и существующие в настоящее время заблуждения относительно вариантов решений .

Я не призываю  верить мне на слово.

Если сомневаетесь, то более продуктивно, вместо безнадежных попыток меня оскорбить, провести собственные эксперименты и доказать свою правоту.

Но это лишь мое субъективное мнение, право выбора за вами.

И так начнем.

Торговый терминал QUIK – это программа клиент, предназначенная для отправки поручений брокеру и получения информации об исполнении, либо отклонении данного поручения.

В последние, примерно 8 лет все более активно создаются различные вспомогательные программы для автоматизации процесса подачи поручений.

Для формирования решения о подаче поручения используется два вида биржевой информации – лента сделок и лента заявок, а также информация о позиции клиента.

Ленту сделок мы видим в торговом терминале в виде графика истории сделок, либо в виде таблицы всех сделок.

Лента заявок отображается в виде стаканов.

По-существу возможны лишь два способа создания торговых роботов на основе терминала QUIK.

Либо на языке вcтроенного интерпретатора QPILE, либо во внешнем приложении.

Примерно года два назад , построение робота во внешнем приложении было бесспорно наилучшим решением по быстродействию.

Но так было.

Это объяснялось тем, что программа на QPILE раньше использовала для своей работы слепок таблиц.

Поэтому все, что изменялось в таблицах в момент исполнение программы на QPILE можно было получить лишь на следующей итерации .

В настоящее время ситуация в корне  изменилась.

 Теперь программа на QPILE в процессе исполнения обращается непосредственно к таблицам.

Если в процессе исполнения программы на QPILE произойдет изменение таблиц, то это изменение первой обнаружит программа на QPILE, а не внешнее приложение.

     Таким образом, внешнее приложение получающее эту информацию их QUIK по DDE или ODBC  УТРАТИЛО преимущество по быстродействию в  доступе к биржевой информации по сравнению с программой на QPILE.

В настоящее время программа на QPILE получает доступ к новой информации раньше, чем внешнее.

Что же из этого следует.

Из этого следует один очень Важный вывод.

Скорость реакции робота на QPILE теоретически может быть выше скорости реакции внешнего приложения.

Это теоретическое превосходство ограничено исключительно скоростью работы интерпретатора и качеством программы на QPILE.

Если ваша цель в применении роботов для торговли, то применение QPILE не имеет альтернативы.

Предвижу бурю возмущений, мол, а как оптимизировать и проверять на истории?

Но повторю снова, то, что сказал.

    Если Ваша цель ПРИМЕНЯТЬ роботы для торговли.

Замечу, что ПРИМЕНЯТЬ – означает торговать в реале, а не исследования на истории.

Процесс исследования необходимо отделить от реальной торговли.

Для исследования не требуется получения информации из торгового терминала QUIK.

Для исследования не требуется работа в реальном времени.

Вопрос исследования не связан со скоростью реакции Вашего робота, поэтому исследования не зависят от торгового терминала и могут выполняться любым доступным способом.

This entry was posted on Среда, 18 апреля, 2012 at 08:55 and is filed under QUIK и QPILE, торговые роботы (МТС). You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

4 comments so far

ASharypov
 1 

А почему должна быть буря возмущений? 😉 Все верно и логично. для медленных систем+Квик выйгрыша от внешних приложений уже нет. Если кому-то нужно писать системы которые совершают заход-выход несколько раз в пару секунд, то не следует пользоваться Квик и использовать или FIX или Plaza.

19 апреля, 2012 at 00:03
Kamynin
 2 

Добрый день!
Возмущаться предполагаю будут те, что считает, использование ODBC или DDE обеспечивает большее быстрее, чем QPILE.

20 апреля, 2012 at 07:59
Николай Осипов
 3 

По мне лучше писать на том , чем владеешь хорошо. Конечно если получается 🙂

21 апреля, 2012 at 00:05
Kamynin
 4 

Добрый день!
Я придерживаюсь другого мнения.
Пишу на том, что позволяет быстрее и проще решить задачу.
В данной заметке , я хотел сказать, что простыми средствами QPILE можно решить те же задачи,
что и C#, при этом нет надобности в передачи данных по ODBC.
Все получается и проще и легче и, главное, надежнее.
Заметка адресована тем, кто изучает возможности создания собственных торговых роботов.

21 апреля, 2012 at 07:54