Как известно, у всего сотворенного человеком есть свои ограничения и недостатки, поэтому, не смотря на то, что робот универсальный – идеал ему только снится. Но все же, робот, который пытается приблизиться к универсальности, должен основываться на максимально универсальных его составляющих частях.
По своей сути все роботы, торгующие на рынках, в конечном счете делают однотипные финальные операции, ради которых они и разрабатываются, эти операции заключаются в простых действиях – выставление заявок, снятие заявок, изменение их параметров и тому подобное – то есть круг операций не велик. А значит, нам требуется ограниченное количество функций, которые будут способны выполнить эти финальные операции. Даже если некоторые функции будут иметь несколько версий с различными вариациями, все равно их количество измеряется максимум двузначным числом.
А в чем же здесь универсальность? А универсальность будет заключаться в торговых заданиях, которые будут обрабатывать эти функции. Торговые задания – определенная структура с данными, содержащая всю необходимую информацию – что, сколько, где, когда и в каком направлении торговать. Получая такую информацию функции должны выполнять все автоматически, а так как они работают с однотипной структурой, то тоже являются универсальными. Но это конечно в идеале, как будет на самом деле – покажет разработка.
Все «прокладки» между квиком и роботом, типа TSLab, LiveTrade и т.п. ни к чему хорошему не ведут – требуют денег, времени, добавляют глюков и увеличивают риски, а также накладывают определенные ограничения. А для написания полноценных роботов не хватает знаний, умений и главное времени. Поэтому появилась идея.
В настоящее время QLUA – доступная и бесплатная технология алгоритмизации торговли. Язык QLUA прост и функционален для алгоритмизации большинства торговых идей, встроен в QUIK – самую распространенную торговую платформу на наших рынках.
С QLUA не надо думать, как «прикрутить» робота к рынку, как передавать и синхронизировать данные, заявки и т.п. – отпадает куча вопросов, которые на начальном этапе способны погубить энтузиазм любого начинающего алготрейдера. Можно использовать библиотеки, написанные и на других языках программирования, а значит, есть в каком направлении развиваться, правда, здесь я вообще не силен.
Сам я не программист. Обычно мое программирование происходит следующим образом: посмотреть в интернете как компилировать и/или исполнять программный код на выбранном языке программирования, при необходимости скачать и крякнуть требуемое ПО, посмотреть в интернете синтаксис, составить код, запустить, исправить ошибки, запустить и решить требуемую задачу.