Лучшая платформа для робота не Excel, а Метасток!

  • Автор темы Dim_plus
  • Дата начала

Dim_plus

New member
Лучшая платформа для робота не Excel, а Метасток! :)

19.07.2011 mehanizator написал: Чем дальше, тем больше укрепляюсь во мнении, что лучшая платформа для написания биржевых роботов - это Excel VBA. Для подавляющего большинства трейдеров быстроты Экселя будет достаточно, а простота разработки это сильный плюс.

В комментариях к заметке были интересные мнения. Приводилась и ссылка на обзор по роботам на сайте Цериха. Я скопировал этот обзор сюда (он приведен в комментариях ниже поскольку места для всего обзора в блоге не хватило). Вначале я хотел написать статью, но времени нет. Поэтому решил просто высказать свое мнение в блоге.

Пакеты технического анализа это основной инструмент любого разработчика торговых роботов. И логично и удобно использовать именно их для разработки роботов. При создании автоматической торговой системы указанные программы применяются главным образом для тестирования и настройки торговой стратегии, поскольку именно с тестирования выбранной стратегии начинается разработка торгового робота. После создания в Метастоке индикаторов или Советников на основе ваших торговых идей и правил нужно всего лишь несколько минут(!) чтобы автоматизировать созданную стратегию для автоматической торговли через терминал Альфа-Директ!

Мое мнение после чтения всех этих обзоров и личной практики, что лучшая платформа для робота это Метасток! Все что сказано о Метастоке в нижеприведенном обзоре справедливо! Категорически несогласен только с тем, что у Метастока есть такой недостаток как "Недостаточная скорость обработки и передачи транзакций для разработки профессионального торгового робота."

Мой многолетний опыт разработки и использования роботов на основе связки Метасток-АльфаДирект говорит, что эта скорость в значительной мере зависит от используемого брокерского терминала. Практика показала, что если в случае с Квиком, это справедливо, то для терминала Альфа-Директ это совершенно не так! Кроме того робот на основе Метастока будет работать быстрее чем на Excel'е. Т.е. Метасток является гораздо более удобной средой для разработки любых роботов. Средой позволяющей очень быстро и эффективно разрабатывать любые механические торговые системы. Намного быстрее и надежней чем в Excel'е. На моем сайте http://stockgraphics.narod.ru/autotrading_complex.htm есть бесплатные файлы для создания и тестирования в реальной работе роботов на основе Метастока и терминала Альфа-Директ, другая необходимая информация и видео-уроки.

Обзор "Инструменты разработки" http://robot.zerich.ru/systems/
В основе выбора программного инструментария для создания торгового робота лежат цели и задачи, которым должна служить создаваемая автоматическая торговая система. В зависимости от требований, предъявляемых к программируемому автомату, будь то скальперский робот с высокой частотой совершения транзакций или же робот-сканер , разработчиками применяются различные методы и средства программирования для достижения поставленной цели.
Немаловажны опыт и квалификация программиста, ведь для создания полноценного торгового робота необходимы определенные знания не только в области экономики и финансовых рынков, но и в программировании и математическом анализе. Однако, на российском рынке появляется все больше программных пакетов, сочетающих в себе не только средства технического анализа и экспертных советчиков, но и универсальные модули для построения пользовательского робота, способного выполнять свои функции не хуже, а зачастую и лучше, торговых автоматов, спроектированных программистами-любителями.

METASTOCK, WEALTH-LAB, OMEGA
Эти инструменты представляют собой мощные пакеты технического анализа. При создании автоматической торговой системы указанные программы применяются главным образом для тестирования и настройки торговой стратегии, поскольку именно с тестирования выбранной стратегии начинается разработка торгового робота.
С их помощью можно рассчитать доходность по каждому инструменту с учетом множества параметров, таких как, проскальзывание, величина спрэда, комиссия брокера и т.д. Кроме того, встроенный язык программирования является легким в понимании, а многие операторы и функции (например, пересечение двух графиков) интуитивно понятны, и трудностей с написанием собственной торговой системы не возникает.
Объектно-ориентированный принцип построения данных систем означает, что управление объектами и вызов команд осуществляется непосредственно из самих объектов. Другими словами, чтобы управлять всей системой (строить графики, вставлять индикаторы, анализировать данные) Вам достаточно нажать правую кнопку мыши и выбрать действие из раскрывающегося списка, либо перетащить объект (Drag&Drop) в нужное место для дальнейшей работы.
Кроме этого, данные системы оснащены возможностью импорта данных из Quik и анализа их в режиме реального времени. При этом возможна настройка вывода управляющего сигнала на выставление торговых приказов посредством записи в файл, который считывается торговой системой Quik. Несмотря на простоту метода отсылки транзакций (выставление заявок через запись в файл, как правило, уже не используется при разработке торговых роботов), он является достаточно надежным, хотя и не слишком быстрым.
Преимущества METASTOCK, WEALTH-LAB, OMEGA:
• Мощный пакет средств технического анализа – широкий выбор индикаторов, графических и финансовых инструментов.
• Удобство работы с интерфейсом.
• Готовые встроенные торговые системы и советчики (Эдвайзеры) (примеры, доработав которые, можно получить вполне качественную торговую стратегию).
• Простой встроенный язык для написания торгового робота.
• Возможность интеграции с торговой системой Quik на уровне получения данных и передачи торговых ордеров.
Недостатки METASTOCK, WEALTH-LAB, OMEGA:
• Относительно высокая стоимость программных пакетов.
• Недостаточная скорость обработки и передачи транзакций для разработки профессионального торгового робота.
Рассматриваемые пакеты совмещают в себе функции программ технического анализа и автоматизированной торговой системы и вполне пригодны для разработки надежного, но несложного торгового робота. Учитывая тот факт, что перед тем, как автоматизировать свою торговую стратегию, ее нужно протестировать, знакомства с указанными программами технического анализа не сможет избежать ни один инвестор.
Создание торгового робота при помощи METASTOCK, WEALTH-LAB или OMEGA является, пожалуй, самым простым и быстрым способом максимально качественно автоматизировать свою торговую стратегию.

(продолжение обзора в первых трех комментариях к этому блогу)
 

Dim_plus

New member
QPILE
QPILE – встроенный алгоритмический язык программирования наиболее популярной в России информационно-торговой системы QUIK. Несмотря на то, что QPILE обладает весьма скромным набором возможностей, по сравнению с языками высокого уровня C++ или Delphi, он вполне пригоден для создания торговых роботов.
С помощью QPILE можно создавать новые таблицы для расчета в режиме реального времени пользовательских показателей на основе информации из других таблиц. Он также удобен для реализации практически любого алгоритма по управлению входящим потоком данных, вычислением параметров, отсутствующих в системе QUIK либо торговой системе биржи, а так же для автоматизации торговли.
Преимущества QPILE:
• Простота использования Доступен пользователям, имеющим базовые навыки программирования.
• Полная интегрированность с торговой системой QUIK. На практике это означает отсутствие проблем с получением любых данных из торговой системы, которые могут наблюдаться при экспорте данных по каналам DDE или ODBC. Не требуется настройки для получения данных.
• Легкий доступ к графикам цен и стакану котировок.
• Удобство распространения - не требуется специальной установки программы на компьютере пользователя. Для запуска торгового робота на языке QPILE необходимо минимальное количество операций по настройке.
Недостатки QPILE:
• Отсутствие интерфейса Для управления программой и ввода данных. В этом случае необходимо использовать внешние текстовые файлы, причем редактирование приходится осуществлять вручную, либо создавать дополнительную утилиту с графическим интерфейсом пользователя для работы с этим файлом.
• Медленное исполнение программ с объемным кодом. Это следствие распределения вычислительных ресурсов торговой системы в пользу основной задачи – торговли. Выполнение кода объемом пару тысяч строк может занять несколько секунд. Помимо этого, QPILE с трудом удается обработка больших массивов данных – эффективно работать с таблицей всех сделок по эмитенту с большим оборотом практически невозможно.
• Отсутствие возможности работать с тиковыми графиками – такое ограничение может создать дополнительные трудности при разработке высокоскоростных скальперских роботов, совершающих тысячи сделок в минуту.
• Период расчета программы не менее 1 сек. (ограничение системы QUIK) - Как следствие – непригодность QPILE для создания скоростных скальперских роботов.
Qpile хорош для ознакомления с процессом программирования торговых автоматов и больше пригоден для разработки полупрофессиональных торговых систем или вспомогательных утилит. Он легок в освоении, и написание несложных торговых инструментов с помощью Qpile окажется под силу практически любому инвестору, имеющему технический бэкграунд. По вопросам написания торгового робота на Qpile обращайтесь к нашим специалистам.
 

Dim_plus

New member
EXCEL +VBA
MS Excel уже давно зарекомендовал себя как мощное средство обработки табличных данных во многих сферах человеческой деятельности. Свое применение Excel нашел и на финансовых рынках, где он активно используется разработчиками как инструмент создания торговых роботов.
Используя встроенные функции Excel в комбинации с внутренним алгоритмическим языком программирования VBA возможно создать, при минимальных трудозатратах, приложение для торговли, способное эффективно выполнять возложенные на него функции. В отличие от QPILE, программирование робота в Excel является более сложной задачей, особенно в той части, которая касается интеграции торговой системы QUIK и внешнего обработчика данных Excel. Задача эта нетривиальна и требует от разработчика серьезной профессиональной подготовки. Тем не менее, такой подход дает возможность создания более быстрого торгового робота с широким набором функций и элементов интерактивного управления.
Преимущества Excel+VBA:
• Легкий доступ к табличным данным QUIK.
В торговой системе QUIK предусмотрена возможность экспорта данных по каналам DDE, либо ODBC напрямую в файлы Excel либо в файлы баз данных СУБД. Обратная связь от Excel к QUIK осуществляется посредством программного интерфейса API, который позволяет практически мгновенно отсылать торговые приказы на сервер брокера.
• Простота использования функций Excel и языка VBA
Язык VBA используется во всех продуктах MS Office, поэтому нет проблемы поиска и установки отдельного программного пакета разработчика. Кроме того, использование функций и графических элементов VBA является интуитивно понятным. Возможность записи макросов, а так же детальная справка с большим количеством примеров помогут решить любую задачу, стоящую перед разработчиком.
• Возможность интерактивного управления торговым роботом.
Средства Excel и VBA позволяют создавать элементы графического интерфейса пользователя (формы, кнопки, поля ввода), что очень удобно для управления и настройки торговой системы.
• Возможность хранения данных.
В отличие от QPILE, в котором для хранения полученных данных используются ассоциативные массивы, данные в Excel легко разместить в свободной области рабочей книги и далее беспрепятственно их обрабатывать.
• Excel позволяет осуществлять взаимодействие с Windows.
Это может быть очень полезно при удаленном управлении и настройке торгового робота .
Недостатки Excel+VBA:
• Недостаточная скорость Excel для разработки приложений, требующих реакции в миллисекунды. Соответственно, разработка роботов для профессиональных участников финансовых рынков или высокоскоростных арбитражных и скальперских роботов будет невозможна.
• Уязвимость работоспособности системы - стабильность выполнения программного кода робота напрямую зависит от одного потока данных. Так, если экспорт данных в Excel по каналу DDE по каким-то причинам перестанет функционировать, повиснет и вся система, а создание процедура перезапуска экспорта данных из Excel может оказаться весьма трудоемкой задачей.
Вариант разработки торгового робота с использованием средств Excel+VBA подойдет продвинутым инвесторам и трейдерам, ощутившим необходимость использования автоматических торговых систем и желающим перейти к созданию и использованию более совершенных торговых роботов и утилит с расширенными возможностями по мониторингу и управлению торговым счетом. Однако, использование данного инструмента все же непригодно для разработки высокоскоростных профессиональных автоматических систем по вышеуказанным причинам.
 

Dim_plus

New member
C++, Delphi
Наиболее продвинутым, технологичным и одновременно трудоемким является процесс разработки торгового робота на высокоуровневых языках программирования C++/Delphi. С помощью них создаются мощные профессиональные торговые приложения с высокой скоростью работы.
В отличие от описанных выше инструментов, разработка на C++/Delphi подразумевает написание так называемых внешних приложений. т.е. запуск и исполнение программы происходит не в системе Quik, как это делает Qpile, а в сторонней автономной программе. Однако, процесс отправки транзакций и получение данных из торговой системы все же осуществляется посредством подключения к Quik.
Использование C++/Delphi в разработке торговых роботов сопряжено с рядом трудностей технического характера. Основной проблемой является получение данных из торговой системы. Для этого пишется специальный модуль-эмулятор листа Excel (Quik поддерживает экспорт данных в Excel), и экспорт данных осуществляется напрямую по каналу DDE. Такой способ идеален для создания высокоскоростных роботов, совершающих огромное количество сделок в день. Задержки получения данных и исполнения кода исчисляются миллисекундами.
Вторым способом является вывод данных в СУБД MySQL или Windows SQL Server. И хотя последний способ проигрывает в скорости прямому выводу по каналу DDE, без него не обойтись при работе с крупным массивом данных, например, таблицей всех сделок по эмитенту с большим оборотом торгов.
Преимущества C++, Delphi:
• Пригодность для создания профессиональных высокоскоростных торговых роботов.
• Возможность разработки полностью отлаженного приложения, без ошибок.
• Неограниченные возможности разработки и совершенство языков программирования.
Недостатки C++, Delphi:
• Высокая сложность написания программ. Необходимость наличия профессиональных знаний, навыков и опыта программирования у разработчика.
• Невозможность подключения к графикам Quik напрямую. Приходится использовать средства Qpile, что негативно сказывается на скорости получения данных графика.
Как правило, к программированию торговых роботов на высокоуровневых языках C++/Delphi прибегают в случае необходимости создания мощного торгового приложения, отличающегося скоростью, отказоустойчивостью и широким спектром возможностей. Большая часть торговых роботов на языках C++/Delphi разрабатывается под заказ профессиональными программистами, как следствие – стоимость создания торгового автомата может быть существенно выше, нежели робота, написанного на Qpile или Excel VBA.
 
Your email address will not be publicly visible. We will only use it to contact you to confirm your post.
Сверху