buybackoff
buybackoff личный блог
15 мая 2019, 01:04

QUIKSharp 1.0 feedback

Товарищи, всем привет! 

Кажется в течение последнего года не было серьезных вопросов к функционалу QUIKSharp, и мы собираемся наконец объявить его стабильным (версия 1.0, была бэтой очень долго) и доступным через NuGet, без необходимости клонировать проект с ГитХаба и строить его самим.

Очень важно, что цель проекта: «повторить API QLUA в C# максимально точно и качественно». Ничего больше, но не меньше.

Тут обсуждение: https://github.com/finsight/QUIKSharp/issues/195

Кто уже пользуется библиотекой и кого всё устраивает, просто поставьте +1 на ГитХабе (и может оставьте пожелания для версии 2.0). Кто пользуется, но испытывает неудобства, опишите их пожалуйста по ссылке.

Кто видит этот проект впервые и умеет прогать в C# — попробуйте, пожалуйста! Там есть пример с графической оболочкой и много отвеченных вопросов по тэгу question: https://github.com/finsight/QUIKSharp/labels/question, плюс readme на русском:  https://github.com/finsight/QUIKSharp/blob/master/README.RU.md. Если что-то не будет работать — отпишитесь по той же ссылке, но только если таких вопросов и решений уже не было по тэту question.

Кто прогает на Python/Node.js(JavaScript/TypeScript): скажите — вам оно нужно!? Если да, то присоединяйтесть к разработке JSON-RPC интерфейса (отпишитесь по той же ссылке).

Удачной всем торговли!

P.S. Тут я скопирую кое-что для ARQA, не знаю как до них достучаться:
А если у кого-то есть выход на ARQA или кто-то из ARQA это читает — скажите им, что они очень нехорошие люди, раз еще не сделали сами JSON-RPC интерфейс. У них всё для этого есть, и я не могу понять, почему они этого не делают — это решение привязывает пользователей к Квику, а отсутствие такого решения в конечном счете быстрее толкает пользователей в сторону Плазы и т.п.
32 Комментария
  • Андрей К
    15 мая 2019, 01:21
    Помню как вы его начинали делать, надо же, не забросили. Молодцы
  • Максим
    15 мая 2019, 09:34
    Молодцы, конечно, что что-то фигачите и делитесь, но по-моему цель проекта несколько сомнительна. Она с одной стороны подразумевает, что API QLUA достаточно хорош сам по себе, а с другой — хорош для C#. Не спец в C#, но есть подозрение, что стиль написания кода и интерфейсов на нём всё-таки отличается от LUA. Собственно, поэтому у вас и возникают баги вроде #7.
      • Максим
        15 мая 2019, 22:01
        buybackoff, кроме последнего предложения, с остальным согласны? Попробуйте ради эксперимента новый проект, где C# API будет такое, какое вы считаете правильным и не завязанным на «особенности» Квика.
        Навскиду, по-моему, нормальное нативное апи не должно заставлять своих пользователей дёргать ToDecimal, ToInt32 и прочее. Т.е. чем меньше одинакового кода в ваших же примерах (Tool.cs), тем лучше.

        Можно ещё блумберговское апи посмотреть, но то на любителя. bloomberg.github.io/blpapi-docs/dotnet/3.8/html/N_Bloomberglp_Blpapi.htm
  • Максим
    15 мая 2019, 09:38
     Касательно PS, на просьбы такого типа арковцы обычно отвечают, что у них есть FIX и отвалите.
    • ch5oh
      15 мая 2019, 10:16
      Максим, а у них есть FIX для частников? Давно?
      • Максим
        15 мая 2019, 10:42
        ch5oh, как давно он появился — не в курсе, пару лет назад первый раз про него услышал. Вроде за отдельный прайс, если брокер даёт - https://arqatech.com/ru/products/quik/modules/integration-solutions/fix-software-interfaces/ или поиском «FIX» по их форуму (выдаёт кучу мусора).
        Вот пример их ответа forum.quik.ru/messages/forum16/message29802/topic3431/#message29802
        • Prophetic
          15 мая 2019, 10:57
          Максим, FIX — это явно не для частников. Достаточно прочитать системные требования:
          Оборудование Программное обеспечение

          Процессор не хуже Intel Xeon E5504,

          Оперативная память не менее 2 ГБ,

          10 ГБ свободного места на жестком диске.

          Операционная система Windows Server 2008/2012/2016 (x64).

          • Максим
            15 мая 2019, 11:10
            Prophetic, что из этого списка недоступно частнику? Ну и я как бы не топлю за это решение от арки, просто ссылаюсь на их ответы.
            • Prophetic
              15 мая 2019, 11:18
              Максим, 
              Теоретически, частник конечно же может купить Xeon (со всеми вытекающими), вот только для 99% частников это совершенно нерентабельно.
              Если я правильно понял описание FIX — это в первую очередь для брокеров или специализированных компаний, которые хотят предоставлять интерфейс доступа к серверам через себя. Вот только брокерам это нах не нужно, когда есть плаза. Во всяком случае я не припомню ни одного брокера, который предлагал бы такой интерфейс подключения к серверам.
          • ch5oh
            15 мая 2019, 17:21
            Prophetic, это, кстати, очень слабые требования.
            • Prophetic
              16 мая 2019, 09:26
              ch5oh, Все относительно. 
              Относительно обычных затрат организации (например брокера) которая могла бы запустить у себя такой сервис — да, это требования небольшие, и малозатратные.
              А вот для 99% обычных пользователей сборка такой системы — это разика эдак в три дороже обычного хорошего системного блока. И это если самому собирать. А если покупать готовый, то лучше даже не начинать.
  • ch5oh
    15 мая 2019, 10:20

    Им надо делать нормальное апи с прямым подключением к их серверам.

    Работать через Квик (по любому протоколу) изначально мертворожденная идея.

    • Prophetic
      15 мая 2019, 11:03
      ch5oh, а «им» — это кому?
      Если речь о частных роботописателях, то для прямого подключения есть плаза, но там нужен определенный уровень знаний, и такое подключение несет в себе дополнительные ежемесячные затраты.
      Для тех, кто не является высококлассным специалистом в области программирования, и не имеет готовых гарантированно прибыльных алгоритмов, способных заведомо отбить затраты на прямое подключение — QUIKSharp очень достойная альтернатива.
      • ch5oh
        15 мая 2019, 17:18

        Prophetic, «им» — это Арке.


        Плаза стоит 10 тыр/мес и это дорого полюбе. Учитывая, что величина геморроя на самом деле вовсе не обнуляется как можно было бы предположить.

         

        Чем сильны Финам, АйтиИнвест, Алор? Тем, что у них разработан свой протокол доступа. Он намного быстрее и стабильней Квик, но при этом все еще бесплатный. Этим полностью закрываются потребности «среднего класса».

        • Prophetic
          16 мая 2019, 09:31
          ch5oh, Ну, вот тут-то и проблема. Судя по всему, они по каким-то своим причинам (нам непонятным), считают, что ихний FIX — это то, что всем так сильно не хватало, а следовательно все что нужно, они уже сделали. Я с Вами полностью согласен, нормально апи нужно, но пока его нет я с большим удовольствие использую QUIKSharp. HFT — это не для меня, а для всего остального данного коннектора хватает за глаза.
          • ch5oh
            16 мая 2019, 10:00

            Prophetic, Чисто наблюдения из жизни. Плаза — не про ХФТ. Плаза — это просто, чтобы «работало и не отваливалось в самый неподходящий момент». Пожалуйста, пользуйтесь на здоровье Квик. Если Вас все устраивает, кто может возразить? =)

            • Prophetic
              16 мая 2019, 11:07
              ch5oh, Я, наверное, не очень корректно выразился. Я не имел в виду  плазу как апи для хфт. Скорее можно сказать так: бесплатной альтернативы квикшарпу я на сегодняшний день не наблюдаю. Или я ошибаюсь?
              • ch5oh
                16 мая 2019, 12:18

                Prophetic, зависит от Вашего брокера.

                Айти дает SmartCOM.

                Финам — Транзак.

                Алор — у них тоже есть свой протокол.

                 

                Скачиваете соответствующую либу для своего брокера и кодите своих роботов на здоровье.


                Если Вы берете КвикШарп — Вам все равно придется кодить. Но вопрос в другом. Если кодить самому, то зачем втыкать в середину такую ненадежную и тормозную штуку, как Квик?

                 

                Если Ваш брокер тупой и отсталый и дает только Квик или Плазу, ну… сочувствую. =)

                • Prophetic
                  16 мая 2019, 12:43
                  ch5oh, Наверное таково стечение обстоятельств.
                  Начинал торговать через квик. Понял, что руками нереально и надо торговать роботами. Первый опыт — QPILE --> QLua. Дальше уперся в ряд ограничений и жуткие тормоза. у брокера кроме квика и плазы ничего не было. Первые поиски найти что-то бесплатное (или недорогое) и удобоваримое, для написания роботов на C#, ни к чему не привели (C# я тогда только-только начинал изучать). Потом случайно наткнулся на QUIKSharp, вот тогда-то дело и пошло. Потом появился еще один брокер и снова собственного апи у него вроде бы нет.
                  Да, квик не самая стабильная програмулина, но для моих задач, с приемлемым уровнем рисков, пока хватает. :)
                • Антон Б
                  22 мая 2020, 14:04
                  ch5oh, Можно вопрос дилетанта.
                  А почему нет возможности к серверу quik подключатся и говорить что я квик?
                  В принципе это убирает клиент квика.
                  Ведь клиент квик просто точнотакже оборачивает вызовы как вы вызовык нему.
                  на клиенте же ничего не происходит, кроме показа, это терминал.
                  все, все равно, проверяется на сервере.

                  и обертка в принципе такая-же получается. потому что вызовы луа это обертка над серверным ари.
                  не думаю что в процессе меняются параметры и имена функций.
                  • ch5oh
                    22 мая 2020, 15:02
                    Антон Б, потому что Арка (производитель Квик) не желает предоставлять такую возможность никому. Протокол взаимодействия Сервер <--> Квик закрыт. А за попытку взлома гарантированно прилетит по голове кошельку.
    • Megasum
      15 мая 2019, 11:14
      ch5oh, 

      Им надо делать нормальное апи с прямым подключением к их серверам. Работать через Квик (по любому протоколу) изначально мертворожденная идея.


      Прямое подключение нужно только, если критична скорость. Если задержка в 0,5-1 сек не важны, то можно работать как угодно, да хоть и через квик, если для роботописателя — это проще в освоении.

      • ch5oh
        15 мая 2019, 17:19
        Megasum, это в теории. А на практике вдруг Квик отказывается работать ровно в тот момент, когда Ваш робот на часовиках должен исполнять стоп-лосс или заходить в сделку века.
      • Андрей К
        15 мая 2019, 23:09
        Megasum, 
        рямое подключение нужно только, если критична скорость
        и если надо отвязаьтся от терминала и не влететь на рисках отказа серверов того же квика
  • Prophetic
    15 мая 2019, 10:51
    Хочу добавить, что простейших роботов, работающих через QUIK, с использованием данного коннектора, смогут создать даже те, кто только начинает освоение C#. Примеры не сложны в понимании. А разобравшись в том как работает робот из примера — написать своего робота уже не так сложно.
  • Megasum
    15 мая 2019, 11:47
    если кому нужна связка квика с питоном, есть PyQUIK. Обёртка для квиковской TRANS2QUIK.dll

    Сам ещё не щупал.

    Обещают следующее: 

    Быстрое создание и проверка торговых стратегий на языке Python

    Встроенный DDE сервер

    Асинхронная отправка транзакций trans2quik.dll и отслеживание исполнения

    Интерфейс с библиотекой технического анализа ta-lib.org (более 150 функций и индикаторов)

    Тестирование стратегий на исторических данных finam

    Оптимизация параметров стратегии генетическим алгоритмом

    Мониторинг через WEB интерфейс

  • Автор, как оно по надежности? может он по месяцу-два, полгода данные сосать? я вот данные из lua в dll пихаю себе, и оно у меня за год глючило только два раза… да и то там не по lua части, а в самом QUIK чето съезжало и он начинал фигню выдавать...

    а у вас как?
    • Андрей К
      15 мая 2019, 23:11
      Бабёр-Енот, 
      а у вас как?
      они уже около пяти лет делают, перевели в stable. Наверное уже отлично

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

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