MxD7
MxD7 личный блог
12 сентября 2021, 12:35

Программы для трейдинга с роботами

В Quick можно писать роботов на языке программирования Lua. 
В Transaq есть язык ATF (не знаю что это). 
Я слышал, что есть программа Wealth Lab со встроенным языком программирования c#. Я скачал последнюю демоверсию 7, но она у меня не заработала. Читал, что некоторые используют старую 6 с торрентов. Загружают котировки, отлаживают роботов на исторических данных и потом уже работают на актуальных. 
Прочитал про s# designer — якобы универсальную штуку для написания роботов. 

Какие ещё есть программы  или онлайн сервисы для человека (не инвестфонда), чтобы писать и тестировать своих роботов, а в идеале лучше настраивать или доделовать готовых?
Примерно как common-овские роботы с возможность настройки или дописывания. 
37 Комментариев
  • Иван Егоров
    12 сентября 2021, 13:09
    поищите брокера с metatrader 4 или 5, там самая комфортная инфраструктура для написания и тестирования роботов, имхо
  • Алексей Никитин
    12 сентября 2021, 13:09
    А вы какой язык программирования умеете???
      • 3Qu
        12 сентября 2021, 14:22
        MxD7, 
         У меня проограммистский бэкраунд. Java, C++, Python, Pascal, Javascript. Любой наверное освою за сравнительно небольшое время. 
         Тогда не заморачивайтесь. Луа + С++ДЛЛ + все, что вам угодно, в любом количестве.
      • Алексей Никитин
        12 сентября 2021, 14:23
        MxD7, При таком  раскладе правильный вариант тестер в питоне написать. 
        А маркетдату  легко из квика собрать на луа, в текстовый  файлик.
        Можно и плаза апи заюзать.  А можно и на крипту уйти. и тд и тп.
  • Karim
    12 сентября 2021, 13:49
    Самый оптимальный вариант это Велслаб 6. Тестите на истории, а потом переносите в отдельную прогу на С# или С++ и конектите с квиком. Ни от кого не зависите и ни кому не платите.
    Если нужна скорость, то тогда придется переписывать код с велслаба на С++ и писать dll. Но это не проблема.
    Я так делаю и пока ни каких проблем не было.
      • Karim
        12 сентября 2021, 14:45
        MxD7, может он и развивается, но лицензия слишком дорого стоит. А 6-ую версию можно и так найти. В онлайне торговать не получится, а для теста на истории больше ничего и не надо.
    • SergeyJu
      12 сентября 2021, 15:31
      Karim, мне категорически не нравится велс. Чуть-чуть больше стартовых усилий и на любом обычном языке можно делать быстрее, надежнее и лучше. Автор спокойно может использовать питон или Си. Тем более, что там библиотек (настоящих, а не говноиндикаторных) очень много. 
      • Karim
        12 сентября 2021, 18:29
        SergeyJu, Написать качественный тестер с нуля не так то просто. А в велсе он уже есть. Правда оптимизация в триал версии только монте-карло, но для проверки стратегии вполне хватает. 
        • SergeyJu
          13 сентября 2021, 09:54
          Karim, когда я был вынужден использовать тестер Велса, он мне категорически не понравился. 
          1. Медленный.
          2. Для одного актива.
          3. С ошибками, фьючи обсчитывались неправильно. 
          4. Проблемы с дивами и обсчетом смены фьючей.
          5. Одномерный.
          А метод монте карло был настолько медленный, что использовать его было почти невозможно. 
          Написать самому на коленке тестер для стратегии с одним активом — вообще раз плюнуть. Он не будет универсальным, ну так и не надо. Для начала.
          • Karim
            13 сентября 2021, 10:19
            SergeyJu, Может вы просто не совсем разобрались с Велсом.
            1. Вопрос спорный, мне скорости хватает.
            2. Сделайте для нескольких «Combination Strategy» вам в помощь.
            3. Нужно корректно указать параметры фьючей — «Symbol Info Manager» ну и комиссию выставить. У меня с этим проблем нет.
            4. Я прописываю это в коде. Перед экспирой выхожу, а дальше по стратегии.
            5. Здесь не понял, что вы имеете ввиду. Если входные параметры стратегии, то их много. Если выходные, то в итоговой таблице можно сортировать по любому (профит, просадка и т.д.)

            Из плюсов наглядная инфографика.

            Но, как говорится, на вкус и цвет… Я писал свой тестер, правда на плюсах и без библиотек. С велсом как то быстрее получается оценить стратегию. Один два параметра, 3-4 месяца на 5-минутках и понятно, стоит ли копать в этом направлении.
            • SergeyJu
              13 сентября 2021, 10:32
              Karim, 
              1. У меня минутки на очень небыстром языке обсчитываются примерно 15 лет за 1-2 минуты. 
              2. Без комментариев.
              3. Если Вы думаете, что я не понимаю про учет комиссий, или отличие фьючей от акций, то Вы ошибаетесь. 
              4. У меня склейка обсчитывается явно с таким переходом с фьюча на фьюч, какой программа исполняет в реальности. Велс так не очень-то умеет. 
              5. Системы на десятках активах. Еще лучше — на сотнях.

              • Karim
                13 сентября 2021, 10:34
                SergeyJu, Ну при таких расклада тогда это точно не Велс.
    • Алексей Никитин
      12 сентября 2021, 14:24
      MxD7, это неправильный путь для  хорошего программиста
    • Karim
      12 сентября 2021, 14:47
      MxD7, В велсе как раз есть несколько стратегий с исходниками. Но, естественно, не прибыльные. Но на их основе можете попытаться что то сделать.
    • Андрей
      13 сентября 2021, 08:15
      MxD7, с вашим бэкграундом вам идеально подойдет OsEngine для реальной торговли, там открытый исходный код и куча примеров, тесты и оптимизации советую делать в TSlab. Все это на шарпах.
  • Алексей Никитин
    12 сентября 2021, 14:27
    Вообще конечно нужно исходить от целей. Если цель HFT и мильен годовых то это наверное не про нашу биржу, ента на крипту надо идти.  хотя  там свои тараканы. Если же про нашу биржу,  то тогда связка  квик луа — маркетдата,  тестер питон,  готовые  боты  C++ апи  терминала квика.
    Или чтобы не  городить огород  плаза апи под фьючи.
  • Jame Bonds
    12 сентября 2021, 14:28
    Напишу про те терминалы которые мне самому приходилось программировать и использовать.

    В Quik тестера нет. Lua медленный. Дебаг робота на qlua отдельная головная боль. Мое мнение: можно использовать только для мелкой автоматизации и подключения к Quik других программ. Серьезных роботов на Lua писать не стоит.

    Metatrader 5 использует язык который по факту C++ (несколько устаревшей версии, без некоторых фич). Есть тестер стратегий достаточно высокого качества. Много материалов по программированию на русском.

    NinjaTrader 8 использует настоящий C#, есть тестер стратегий высокого качества. Писать, тестировать стратегии можно бесплатно. Торговать на реале стоит денег. Подключения к российскому рынку нет (насколько мне известно). Документация (на англ.) хорошо покрывает основы программирования, но куча возможностей не раскрывается.

    MultiCharts.NET использует C#. Не путать с MultiCharts без ".NET", который использует свой скриптовый язык. Платен. Подключения к российскому рынку нет.

    Резюмируя: Metatrader 5 кажется мне наилучшим выбором.
    NinjaTrader 8 ничем не хуже по возможностям, но сильно отстает по качеству документации. Его можно выбрать, если вы предпочитаете решетку, а не плюсы. 
    • 3Qu
      12 сентября 2021, 16:07
      Jame Bonds, 
      Луа медленный
      Луа изначально создавался как язык сценариев и межпрограммного взаимодействия.
      Используйте его по назначению, и все будет быстро. Доля Луа в программе и времени исполнения будет минимальна.
    • Иван Портной
      12 сентября 2021, 16:40
      Jame Bonds, 
      MultiCharts.NET. Подключения к российскому рынку нет.
      Это не совсем так. Есть коннектор к Quik. Сама платформа и коннектор платные.
      • Jame Bonds
        12 сентября 2021, 16:41
        Иван Портной, точно, забыл.
  • Jame Bonds
    12 сентября 2021, 14:36
    Все зависит от того, насколько глубоко вы хотите погрузиться.

    Есть скриптовые языки, которые позволяют запрограммировать и протестировать простейшие стратегии. Например tradingview.com. Но будут сложности с переходом на реальную торговлю. Написать сколь-либо серьезную стратегию может оказаться невозможным.

    С другой стороны — прямые подключения к биржам, можно написать все что угодно, но почти все придется делать самому.

    А посередине куча терминалов с разными языками, фичами и возможностями.
  • u-gyn
    12 сентября 2021, 16:58
    ts lab
  • in_line
    12 сентября 2021, 20:06
    Я пользовал Amibroker в качестве тестера. Много возможностей и не сильно замороченный язык, понятная документация. Формат данных метастока, из квика также легко тянет данные
  • Beach Bunny
    12 сентября 2021, 21:08
    На питоне тестирование и торговля => www.backtrader.com/
    коннектор для квик => github.com/cia76/BackTraderQuik
  • Тимофей Мартынов
    12 сентября 2021, 22:35
    Ну  TSLab вроде самый доступный вариант
  • Andrew Morozov
    13 сентября 2021, 00:10
    Если с/с++ владеете, Sierra Chart. Лучше ничего не найти. Коннектится к чему угодно, открытый внятный протокол есть. Стоит правда, денег, но не дороже чем ТС Лаб. А для проверки гипотез, питон, да.
  • tashik
    13 сентября 2021, 09:41
    Если C#  надо и hft  не планируете — Os.Engine  может быть неплохим вариантом для начала. Бесплатно. Исходный код открыт. https://github.com/AlexWan/OsEngine Множество разных коннекторов в наличии, в том числе для Quik и Transaq. Тестировщиком их не пользуюсь, тестирую в AmiBroker 
  • Дмитрий Овчинников
    13 сентября 2021, 10:28
    MT5 в Открытии.
  • Кирилл Гудков
    13 сентября 2021, 12:02
    Топик куликов и болот, положил в закладки.

    Про себя: QUIK/Lua, скорость вполне достаточна для стратегий на M1. Прикидочные тесты — AmiBroker, финальный прогон — бэктест в самом роботе, на том же коде, который торговать будет.

    Чем больше прокладок между идеей и биржей, тем больше времени будет потрачено на исправление чужого рукожопия. Баги есть везде, некоторые могут дорого обойтись.

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн