Лучшая платформа для робота

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

mehanizator

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

Интересная информация о торговых советниках форекс.
 

nightcarrier

New member
Слаб в VBA, но, имхо, много нервов кушает проблема реконнектинга и восстановления пропущенных данных при экспорте по DDE.

Первого в своей жизни робота написал на Qpile. Потом была связка Amibroker-Qpile. Не будет забывать про то, что язык специализированных программ ТА (в т.ч. конкретно - AFL) хорошо заточен именно под биржевые расчеты. Чего не скажешь про "общечеловеческий" бэйсик. Сейчас готовлюсь писать следующую прогу именно на VB, но причина вовсе не в простоте разработки... Деваться некуда, а для C/Delphi пока жидковат :)

Хороший сравнительный анализ различных платформ написания роботов есть на http://robot.zerich.ru/systems/.
 

Alex8

New member
Года 4 назад я тоже выбирал: на чем писать роботов, VBA или qpile? В итоге выбор сделал в пользу qpile. По быстродействию они примерно равны. Но qpile имеет огромное преимущество в том, что отсутствуют операции импорта-экспорта в разные внешние базы данных, а значит, нет уменьшения надежности системы вцелом. Легко портируется на другой комп (каталог с квиком перебросил, запустил квик и все работает, не надо ничего настраивать ни источники ODBC, DDE и т.п.). Я так делаю при пропадании электричества – оперативно перевожу робота на ноутбук. Никаких проблем с прекращением экспорта при разрыве квиком связи. Правда, писать легче было бы на VBA, а уж отлаживать программы на VBA было бы раза в 4 легче, но вопрос надежности пересилил неудобство. Вобщем, убил я тогда 2 месяца на написание различных библиотек для qpile: функции для работы с различными типами данных (дата, время, датавремя и др.), парсеры строковых переменных, расчет текущих итогов по инструментам, формирование дневника сделок и т.д. С тех пор все роботы пишу на qpile. В настоящее время работают 4 действующих робота (185кб, 5600 строк кода). Быстродействия хватает. Работаю на ФОРТСе.
 
Последнее редактирование:

Decotrader

New member
Я так и не поняла. Прочитав Мехову запись подумала: ВОт здорово! Прочитав остальных растерялась. ЧЕго делать-то?
Из меня никакой писатель роботов, но хочу попытаться на примере написания самого элементарного разобраться в Экселе и в VBA. Купила умные книжки и т.д.
Теперь перед выбором после ваших комментариев. Вы не могли быть чтоли единодушны????
 

Khan

New member
Я так и не поняла. Прочитав Мехову запись подумала: ВОт здорово! Прочитав остальных растерялась. ЧЕго делать-то?
Из меня никакой писатель роботов, но хочу попытаться на примере написания самого элементарного разобраться в Экселе и в VBA. Купила умные книжки и т.д.
Теперь перед выбором после ваших комментариев. Вы не могли быть чтоли единодушны????
Надо плясать от задач. Я, например, чтобы не изучать всякие встроенные в амиброкеры, велслабы и метастоки языки (да и вообще, чтобы не ковыряться в этих программах), написал бэктестер на VBA, т.к. знаю его уже давно. :) Сейчас у меня советник на VBA написан (торгую на дневках, выставляю приказы на открытии сессии), но буду его переписывать на qpile'е. Будет полный автомат, не надо ни котировки скачивать, ни ручками заявки ставить. Осталось только найти способ, каким образом запускать quik и коннектиться к серверу без участия оператора.
 

mehanizator

Administrator
Команда форума
Проблема заполнения пропущенных данных это не проблема платформы VBA, а проблема Quik, который не дает нормального интерфейса к барным данным.

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

Khan

New member
его просто не надо выключать, утром он сам сконнектится с сервером, если включено "автоматически восстанавливать соединение". я его включаю в понедельник, выключаю в пятницу, больше не трогаю.
Хороший вариант, но, к сожалению, нет возможности держать работающий комп всю неделю. Придется что-то сочинять.
 

Alex8

New member
Проблема заполнения пропущенных данных это не проблема платформы VBA, а проблема Quik, который не дает нормального интерфейса к барным данным.
Это он не дает для внешних программ, для внутреннего qpile проблем нет: открыл график - получай доступ ко всем барам на нем.
 

Alex8

New member
а если у меня работа идет по 50 контрактам одновременно, мне 50 графиков держать открытыми?
Я сейчас посчитал: у меня открыто на разных закладках 28 графиков, включая всякие ненужные для непосредственной торговли (индексы и т.п., которые я мог бы и закрыть). К концу дня квик в оперативке занимает ок. 600 Мб. Проблем нет. Проц. Core 2 Duo 3.2 GГгц, 3 Гб ОЗУ, Windows XPrus+SP3. Хватает памяти и ресурсов еще для всяких программ, тестирования стратегий и прочего. Специально не проверял, но с 50 открытыми графиками проблем быть не должно.
 

mehanizator

Administrator
Команда форума
жизнь-то легкая, это Quik тяжелый. я вот собираюсь сделать чтоб данные шли через Transaq Connector - там все в порядке и с API и с барными данными, а Quik только для отработки заявок.
 

Alex8

New member
жизнь-то легкая, это Quik тяжелый. я вот собираюсь сделать чтоб данные шли через Transaq Connector - там все в порядке и с API и с барными данными, а Quik только для отработки заявок.
Я бы не советовал так поступать, привязываться к брокеру с помощью его программ. Представьте, что завтра ваш брокер поднимет комиссию в 1.5-2 раза (ничего невероятного в таком предположении нет). Что Вы будете делать?
Квик хорош своей распространенностью среди множества брокеров. Из использующих же Транзак - есть только Финам, остальные - не конкуренты.
 

mehanizator

Administrator
Команда форума
а где тут привязка? транзак у одного брокера, а квик - у любого другого. данные-то одинаковые.
 
Your email address will not be publicly visible. We will only use it to contact you to confirm your post.
Сверху