Программы для трейдинга с роботами
- 12 сентября 2021, 12:35
- |
- MxD7
В Quick можно писать роботов на языке программирования Lua.
В Transaq есть язык ATF (не знаю что это).
Я слышал, что есть программа Wealth Lab со встроенным языком программирования c#. Я скачал последнюю демоверсию 7, но она у меня не заработала. Читал, что некоторые используют старую 6 с торрентов. Загружают котировки, отлаживают роботов на исторических данных и потом уже работают на актуальных.
Прочитал про s# designer — якобы универсальную штуку для написания роботов.
Какие ещё есть программы или онлайн сервисы для человека (не инвестфонда), чтобы писать и тестировать своих роботов, а в идеале лучше настраивать или доделовать готовых?
Примерно как common-овские роботы с возможность настройки или дописывания.
949 |
Читайте на SMART-LAB:
Предварительные итоги года на рынке жилья и ипотеки
Аналитический центр ДОМ.РФ подводит предварительные итоги года.
Объём продаж жилья по договорам долевого участия (ДДУ) в 2025 г. (в рамках...
С наступающим!
Дорогие друзья! В уходящем году мы вместе добились значимых результатов: начали реализацию Стратегии ПАО «СТГ» до 2028 года, запустили...
Облигации «Атомэнергопрома» стали еще интереснее
На фоне ограниченного выбора длинных выпусков на российском рынке новые облигации «Атомэнергопрома» закономерно становятся одними из самых...
В чём торговых роботов то писать?
А маркетдату легко из квика собрать на луа, в текстовый файлик.
Можно и плаза апи заюзать. А можно и на крипту уйти. и тд и тп.
Если нужна скорость, то тогда придется переписывать код с велслаба на С++ и писать dll. Но это не проблема.
Я так делаю и пока ни каких проблем не было.
1. Медленный.
2. Для одного актива.
3. С ошибками, фьючи обсчитывались неправильно.
4. Проблемы с дивами и обсчетом смены фьючей.
5. Одномерный.
А метод монте карло был настолько медленный, что использовать его было почти невозможно.
Написать самому на коленке тестер для стратегии с одним активом — вообще раз плюнуть. Он не будет универсальным, ну так и не надо. Для начала.
1. Вопрос спорный, мне скорости хватает.
2. Сделайте для нескольких «Combination Strategy» вам в помощь.
3. Нужно корректно указать параметры фьючей — «Symbol Info Manager» ну и комиссию выставить. У меня с этим проблем нет.
4. Я прописываю это в коде. Перед экспирой выхожу, а дальше по стратегии.
5. Здесь не понял, что вы имеете ввиду. Если входные параметры стратегии, то их много. Если выходные, то в итоговой таблице можно сортировать по любому (профит, просадка и т.д.)
Из плюсов наглядная инфографика.
Но, как говорится, на вкус и цвет… Я писал свой тестер, правда на плюсах и без библиотек. С велсом как то быстрее получается оценить стратегию. Один два параметра, 3-4 месяца на 5-минутках и понятно, стоит ли копать в этом направлении.
1. У меня минутки на очень небыстром языке обсчитываются примерно 15 лет за 1-2 минуты.
2. Без комментариев.
3. Если Вы думаете, что я не понимаю про учет комиссий, или отличие фьючей от акций, то Вы ошибаетесь.
4. У меня склейка обсчитывается явно с таким переходом с фьюча на фьюч, какой программа исполняет в реальности. Велс так не очень-то умеет.
5. Системы на десятках активах. Еще лучше — на сотнях.
В идеале роботы должны бы быть с исходными текстами или подробными описаниями как настраивать.
Или чтобы не городить огород плаза апи под фьючи.
В Quik тестера нет. Lua медленный. Дебаг робота на qlua отдельная головная боль. Мое мнение: можно использовать только для мелкой автоматизации и подключения к Quik других программ. Серьезных роботов на Lua писать не стоит.
Metatrader 5 использует язык который по факту C++ (несколько устаревшей версии, без некоторых фич). Есть тестер стратегий достаточно высокого качества. Много материалов по программированию на русском.
NinjaTrader 8 использует настоящий C#, есть тестер стратегий высокого качества. Писать, тестировать стратегии можно бесплатно. Торговать на реале стоит денег. Подключения к российскому рынку нет (насколько мне известно). Документация (на англ.) хорошо покрывает основы программирования, но куча возможностей не раскрывается.
MultiCharts.NET использует C#. Не путать с MultiCharts без ".NET", который использует свой скриптовый язык. Платен. Подключения к российскому рынку нет.
Резюмируя: Metatrader 5 кажется мне наилучшим выбором.
NinjaTrader 8 ничем не хуже по возможностям, но сильно отстает по качеству документации. Его можно выбрать, если вы предпочитаете решетку, а не плюсы.
Используйте его по назначению, и все будет быстро. Доля Луа в программе и времени исполнения будет минимальна.
Есть скриптовые языки, которые позволяют запрограммировать и протестировать простейшие стратегии. Например tradingview.com. Но будут сложности с переходом на реальную торговлю. Написать сколь-либо серьезную стратегию может оказаться невозможным.
С другой стороны — прямые подключения к биржам, можно написать все что угодно, но почти все придется делать самому.
А посередине куча терминалов с разными языками, фичами и возможностями.
коннектор для квик => github.com/cia76/BackTraderQuik
Про себя: QUIK/Lua, скорость вполне достаточна для стратегий на M1. Прикидочные тесты — AmiBroker, финальный прогон — бэктест в самом роботе, на том же коде, который торговать будет.
Чем больше прокладок между идеей и биржей, тем больше времени будет потрачено на исправление чужого рукожопия. Баги есть везде, некоторые могут дорого обойтись.