Вопрос собственно такой: Как связать квик с помощью lua с программой написаной на C# ?
Интересуют не готовые разработки типа стокшарпа, а обсуждения, примеры, обяснения, может что-то готовое но с открытым кодом, что-бы можно было посмотреть, разобратся и переделать под себя, а не ждать когда у разработчика будет время и желание пофиксить баги.
Буду благодарен за любую инормацию по даной теме .
SL, информации в общем-то и нет в интернете, могу сказать, что Lua коннектор пишется на С++ используя Lua API www.lua.org/manual/5.1/, сам язык Lua в нём никак не используется.
Bulldozer, Спасибо, буду изучать, вы используете луа только для получения данных? а trans2quik.dll для отправки транзакций или полностью все на луа сделали?
Тогда вам надо начать с гугленья по запросу
mixing native and managed code c++
Но для начала очень рекомендую пописать что-то на Lua в
QUIK, потому как по вашим сообщениям видно, что вы даже не представляете что интерфейс Lua в QUIK предоставляет. Как тогда вы собираетесь что-то делать во внешней DLL — как-то не очень понятно.
Теоретически можно слать в скрипт запущенный в Квике команды луа (там есть возможность принять и исполнить) и отправить обратно результат. Почти АПИ получится. Камынин пишет есть у него такое.
quant_trader, не хфт но иногда нужно вовремя смытся что б не влили слишком много, и как правило это бывает когда движняк начинается и ДДЕ подтормаживает, потому и в сторону Луа решил посмотреть.
quant_trader, да я сильно и не разбирался что больше подтормаживает, думаю Непроглядный Туман, может об этом больше сказать. Сам сейчас начал обдумывать может действилельно поток сделок отключить в квике и попробовать без них обойтись. А то насколько я понял легче с плазой разобраться чем коннектор для луа сделать.
Я по такой схеме программировал —
Получение данных: Lua -> Named Pipes (Client на Lua) -> C# service (Pipe server) -> С# объекты(таблицы) тех данных -> C# роботы
Логика робота: С#
Отправка транзакций: С++ trans2Quick api, также обернутый в С#
Вообще есть вроде несколько способов передать данные из Lua. Это так называемый inter process communication. Конкретно под Lua видел след. варианты: Сom-server, ZMQ (Messaging Queue) и то, что использовал я (именованные каналы).А вообще есть более простой вариант: просто сбрасывать данные в файл и в С# приложении отслеживать изменения, но у такого подхода есть минусы, конечно.
SL>а луа с такими умеет работать?
Используя Lua-индерфейс вы фактически можете пристыковать к QUIK написаную на C++/Delphi DLL. В этой DLL можете делать уже что угодно. quik2dde.ru/viewtopic.php?id=18
Тогда один из тех 3-х вариантов, что я предложил. Но вообще если Вы пишите какой-нибудь hft и быстродействие для Вас так критично, то наверное надо будет вкладываться в инфраструктуру, платить за colocation на биржевых серверах, писать на С++ и чуть ли не на asm-e, развертывая всё это еще *nix-ах. Но тут я уже не советчик.
nvse, да нет не хфт, раньше испольшовал стокшарп к квику по ДДЕ, но вопервых в стокшарпе с каждой версией багов все больше, а они куда-то гонят так ничего и пофиксить нормально не могут, а вовторых и не нужен мне такой монстр как стокшарп, вот и задумался о своем коннекторе к квику, попроще но побыстрее.
Коннектор сам писал на Python + Qt4 + ZMQ. Почитать про коннектор не знаю где, готовых решений не встречал. По ZMQ читать на сайте zeromq, да и просто статей всяких полно. Для C# тоже полно примеров по ZMQ. В целом, довольно быстрая и удобная библиотека. Производительности вроде хватает. Не HFT, конечно, но поарбитражировать малоликвид хватает.
bulldoser: >>Quik Lua коннектор для С# можно купить у меня с исходным кодом
не могу написать Вам в личку т.к. только зарегистрировался здесь.
напишите, пожалуйста что из себя представляет в коннектор и сколько стоит не для перепродажи asaneeX эт гмэйл к0м. спасибо!
Павел Bosco M: Спасибо! можно попросить ffi.dll и ffi.lib или что там еще билдится и требуется проекту прикрепить или на файлообменник выложить? у меня весь проект в делфи и девелопер студию ставить незачем было пока.
EUR/USD: котировки прощупывают дно в попытке возобновить рост
Европейская валюта закрыла пятницу выше уровня поддержки 1.1807, сформировав при этом свечную модель «бычье поглощение». Сигнал для покупателей подан. При реализации восходящего сценария первой...
Обновление кредитных рейтингов в ВДО и розничных облигациях (ООО «КОНТРОЛ лизинг» понижен до ruBB-, ПАО «ГК «САМОЛЕТ» присвоен статус "Под наблюдением", АО «ВЕРАТЕК» понижен до СС.ru)
⚪️ГУП ЖКХ РС(Я)
Эксперт РА продлил статус «под наблюдением» по рейтингу, что означает высокую вероятность рейтинговых действий в ближайшее время. Рейтинг компании продолжает действовать на...
Астра купила долю в компании у своего контролирующего акционера😢
В среду 4 февраля на сайте раскрытия вышли сущфакты от Астры о совершении сделки с заинтересованностью.
Ссылки на сущфакты:
➡️ сделка с заинтересованностью
➡️ дочка Астры ООО...
С начала текущего года ситуация в рублевых корпоративных облигациях в целом довольно спокойная – пока не наблюдается какая-либо выраженная динамика по доходности. Вместе с тем сохраняются ожидания...
Андрей, снег тоже сойдет… А вот вчера реально был в сомнении листая телеканалы (хобби такое )… на Вести 24 вроде Воробьева показывали, но как-то резко хреновенько он выглядеть стал…
С 9 февраля 2026 года конгрессмены смогут просматривать неотредактированные документы по делу Эпштейна в офисах Минюста. Копирование и публикация документов будут запрещены.
profynn, для газа это как раз нормальные движения в рамках суток, будет и меньше скоро… оно судя по всеми контр-трендовое сейчас, поэтому и такое тяжелое… логично же что в зимний период максимальна...
D Y, вряд ли, скорее всего очередной мамкин инвестор, который посмотрел что самолет 6000 был и прикупил его в надежде что вот вот сейчас ракета будет, не утруждая себя вникнуть в финансовые показат...
❗️Полезная информация от финансового директора компании «Мать и дитя»
Прекрасный операционный отчет Мать и дитя. Глянул созвон с финансовым директором и IR компании.Основные теги, которые подчеркну...
Стабильные выплаты при падающей СЧА: что на самом деле происходит с Рентным доходом ПРО На этой неделе ВИМ Инвестиции опубликовали отчёт по фонду «Рентный доход ПРО» за четвёртый отчётный период 2025 ...
Перевод статьи "Доллар к стенке" 07.02.2026 The Economist «Почему мировая резервная валюта может еще значительно упасть «УВЕРЕННОСТЬ, ОСОБЕННО МЕЖДУНАРОДНАЯ, — это хрупкий цветок» — предупре...
Тогда вам надо начать с гугленья по запросу
mixing native and managed code c++
Но для начала очень рекомендую пописать что-то на Lua в
QUIK, потому как по вашим сообщениям видно, что вы даже не представляете что интерфейс Lua в QUIK предоставляет. Как тогда вы собираетесь что-то делать во внешней DLL — как-то не очень понятно.
Например поднимаем вебсокет, шлем в него из скрипта на луа. Но это ж надо прописывать.
Имхо если мы не hft то нафиг эти событийные дела, опрашивать по таймеру.
Насколько понимаю логику луа чуть выигрывает получая данные до отрисовки таблицы но если тормозит поток то разница невелика.
Тогда Непроглядный Туман прав, можно попробовать получить данные быстрее из ТТП.
Просто может причина то вообще в недостатке ОЗУ.
Спасибо.
Получение данных: Lua -> Named Pipes (Client на Lua) -> C# service (Pipe server) -> С# объекты(таблицы) тех данных -> C# роботы
Логика робота: С#
Отправка транзакций: С++ trans2Quick api, также обернутый в С#
Вообще есть вроде несколько способов передать данные из Lua. Это так называемый inter process communication. Конкретно под Lua видел след. варианты: Сom-server, ZMQ (Messaging Queue) и то, что использовал я (именованные каналы).А вообще есть более простой вариант: просто сбрасывать данные в файл и в С# приложении отслеживать изменения, но у такого подхода есть минусы, конечно.
Используя Lua-индерфейс вы фактически можете пристыковать к QUIK написаную на C++/Delphi DLL. В этой DLL можете делать уже что угодно.
quik2dde.ru/viewtopic.php?id=18
не могу написать Вам в личку т.к. только зарегистрировался здесь.
напишите, пожалуйста что из себя представляет в коннектор и сколько стоит не для перепродажи asaneeX эт гмэйл к0м. спасибо!