SL
SL личный блог
27 июля 2014, 12:03

Quik lua to C# коннектор ?

Здравствуйте, 

Вопрос собственно такой: Как связать квик с помощью lua с программой написаной на C# ?

Интересуют не готовые разработки типа стокшарпа, а обсуждения, примеры, обяснения, может что-то готовое но с открытым кодом, что-бы можно было посмотреть, разобратся и переделать под себя, а не ждать когда у разработчика будет время и желание пофиксить баги.

Буду благодарен за любую инормацию по даной теме .

Спасибо.
74 Комментария
  • Илья Смирнов
    27 июля 2014, 12:12
    Quik Lua коннектор для С# можно купить у меня с исходным кодом
      • Илья Смирнов
        27 июля 2014, 13:06
        SL, информации в общем-то и нет в интернете, могу сказать, что Lua коннектор пишется на С++ используя Lua API www.lua.org/manual/5.1/, сам язык Lua в нём никак не используется.
          • Илья Смирнов
            27 июля 2014, 13:15
            SL, всё полностью на Lua, Lua не требует каких либо настроек, достаточно запустить Lua скрипт и открыть нужные таблицы в квике
              • Илья Смирнов
                27 июля 2014, 14:05
                SL, эта штука для работы с Lua, но не с квиковским QLua
      • swerg
        29 июля 2014, 06:06
        SL> Спасибо, но хотелось бы самому разобратся.

        Тогда вам надо начать с гугленья по запросу
        mixing native and managed code c++

        Но для начала очень рекомендую пописать что-то на Lua в
        QUIK, потому как по вашим сообщениям видно, что вы даже не представляете что интерфейс Lua в QUIK предоставляет. Как тогда вы собираетесь что-то делать во внешней DLL — как-то не очень понятно.
  • VpnS
    27 июля 2014, 12:29
    а зачем это? если есть trans2quik.dll
  • Mr. Bean
    27 июля 2014, 12:30
    есть отдельный форум по Quik Lua. погугли.
  • quant_trader
    27 июля 2014, 15:29
    Теоретически можно слать в скрипт запущенный в Квике команды луа (там есть возможность принять и исполнить) и отправить обратно результат. Почти АПИ получится. Камынин пишет есть у него такое.
      • quant_trader
        27 июля 2014, 16:04
        SL, если нужны события то проще в луа и писать все (или в длл на нормальном языке). Ну или слать события с той стороны в Ваше приложение.

        Например поднимаем вебсокет, шлем в него из скрипта на луа. Но это ж надо прописывать.

        Имхо если мы не hft то нафиг эти событийные дела, опрашивать по таймеру.
          • quant_trader
            27 июля 2014, 17:02
            SL, понял. А подтормаживает ДДЕ или поток котировок?

            Насколько понимаю логику луа чуть выигрывает получая данные до отрисовки таблицы но если тормозит поток то разница невелика.

            Тогда Непроглядный Туман прав, можно попробовать получить данные быстрее из ТТП.
              • quant_trader
                27 июля 2014, 21:18
                SL, эмм а какая загрузка в моменты когда подтормаживает?

                Просто может причина то вообще в недостатке ОЗУ.
  • Lika
    27 июля 2014, 15:45
    Ребята, а чем Luva лучше чем MQL5?
  • Murad Muslimov
    27 июля 2014, 21:18
    Я по такой схеме программировал —
    Получение данных: Lua -> Named Pipes (Client на Lua) -> C# service (Pipe server) -> С# объекты(таблицы) тех данных -> C# роботы
    Логика робота: С#
    Отправка транзакций: С++ trans2Quick api, также обернутый в С#
    Вообще есть вроде несколько способов передать данные из Lua. Это так называемый inter process communication. Конкретно под Lua видел след. варианты: Сom-server, ZMQ (Messaging Queue) и то, что использовал я (именованные каналы).А вообще есть более простой вариант: просто сбрасывать данные в файл и в С# приложении отслеживать изменения, но у такого подхода есть минусы, конечно.
      • AleksK
        27 июля 2014, 23:09
        SL, memory map file, не? и пусть дде курит бамбук
          • swerg
            29 июля 2014, 06:14
            SL>а луа с такими умеет работать?
            Используя Lua-индерфейс вы фактически можете пристыковать к QUIK написаную на C++/Delphi DLL. В этой DLL можете делать уже что угодно.
            quik2dde.ru/viewtopic.php?id=18
  • Murad Muslimov
    27 июля 2014, 22:21
    Тогда один из тех 3-х вариантов, что я предложил. Но вообще если Вы пишите какой-нибудь hft и быстродействие для Вас так критично, то наверное надо будет вкладываться в инфраструктуру, платить за colocation на биржевых серверах, писать на С++ и чуть ли не на asm-e, развертывая всё это еще *nix-ах. Но тут я уже не советчик.
  • MKS
    27 июля 2014, 22:46
    Для коннекта QLUA с Python использую свой коннектор на ZMQ-сокетах. Библиотека, соответственно, ZeroMQ.
  • MKS
    27 июля 2014, 23:36
    Коннектор сам писал на Python + Qt4 + ZMQ. Почитать про коннектор не знаю где, готовых решений не встречал. По ZMQ читать на сайте zeromq, да и просто статей всяких полно. Для C# тоже полно примеров по ZMQ. В целом, довольно быстрая и удобная библиотека. Производительности вроде хватает. Не HFT, конечно, но поарбитражировать малоликвид хватает.
  • asane
    15 ноября 2014, 19:39
    bulldoser: >>Quik Lua коннектор для С# можно купить у меня с исходным кодом

    не могу написать Вам в личку т.к. только зарегистрировался здесь.
    напишите, пожалуйста что из себя представляет в коннектор и сколько стоит не для перепродажи asaneeX эт гмэйл к0м. спасибо!
  • asane
    17 ноября 2014, 07:42
    Павел Bosco M: Спасибо! можно попросить ffi.dll и ffi.lib или что там еще билдится и требуется проекту прикрепить или на файлообменник выложить? у меня весь проект в делфи и девелопер студию ставить незачем было пока.

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

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