Во первых, Вам потребуются удобные среды разработки (программы, где Вы сможете писать свой код), о том, где их взять и как установить прочтите здесь. Для написания скриптов QLua Вам понадобится только Notepad++.
Во вторых, получите терминал QUIK с демо-счетом, можете получить его либо в компании Arqa (разработчик терминала) по данной ссылке, либо у практически любого брокера.
И в третьих, начинайте изучать QLua.
Рекомендую начать с раздела меню "QLua(Lua) основы", в частности со статей: "База скрипта в QLua (lua)" и "Функции обратного вызова, встроенные в QLua", остальные статьи данного раздела используйте как справочники при написании скрипта, в них практически к каждой функции есть пример кода с комментариями.
Следующим шагом переходите к разделу меню "QUIK + QLua(Lua)", в нем речь идет о том, как взаимодействует скрипт с терминалом QUIK, как обменивается данными, все так же с примерами и комментариями. Особое внимание обратите на раздел "Блоки кода", в особенности на статью в нем: "Пример простого торгового движка "Simple Engine" QLua(Lua)", разобрав код которой Вам многое станет понятнее, хоть по началу такой подход может показаться несколько сложным.
Так же не забывайте про то, что в папке с терминалом есть 2 файла справки:
QLUA.chm - в нем есть все про QLua, правда практически без примеров, но для справки подойдет.
info.chm - справка по работе с терминалом, помимо этого в нем есть нужные для QLua разделы, в частности для того, чтобы знать какие поля должны быть в массиве для отправки транзакции функцией sendTransaction(), смотрите эту информацию здесь:
"Раздел 6. Совместная работа с другими приложениями" - "Импорт транзакций" - "Формат .tri-файла с параметрами транзакций" и "Примеры строк, которые могут содержаться в файле"
Когда Вы уже сможете уверенно писать скрипты, которые будут совершать торговые операции, работать с таблицами, графиками, индикаторами, тогда можете переходить к следующему разделу (если QLua Вам окажется недостаточно), это пункт меню "Qlua C/C++ C#".
Первым шагом изучите статью "Коннектор DLL QUIK - QLua(Lua) - C#", затем изучите примеры из подраздела "Обмен данными". Дальше можете изучить все остальное, что есть в разделе "Qlua C/C++ C#".
В процессе изучения Вы всегда можете обратиться за помощью в комментариях под изучаемой статьей, или в разделе "ВОПРОС-ОТВЕТ".
Так же, рекомендую подписаться на новости сайта, заполнив форму в правой колонке сайта, чтобы получать уведомления о новых статьях вышедших на сайте, они появляются не очень часто, но информация в них как правило нужная, никакого спама Вам отправлять не будут, какие последние статьи Вышли на сайте за последнее время всегда можете увидеть в левой колонке.
Продуктивного изучения и больших профитов Вам !!! 🙂
Если у Вас появились какие-то вопросы, задайте их в комментариях под статьей !!!
Добрый день, Дмитрий. Скажите, а Вы занимаетесь обучением программирования на Lua?
Добрый день, Егор! Да, занимаюсь индивидуально по Skype. Напишите мне на почту reply@quikluacsharp.ru, обсудим.
Выбираю, используя Lua, инструмент динамически. Затем нужно анализировать данные стакана по выбранному инструменту. Если стакан открыт то функцией OnQuote можно следить за его изменением. Но если стакан не открыт то OnQuote не работает. Либо сразу после выбора инструмента открывать стакан по нему вручную, но как это сделать программно? Либо получать стакан напрямую с сервера, но в этом случае не работает OnQuote. Какое решение тут лучше применить?
Subscribe_Level_II_Quotes - Функция заказывает на сервер получение стакана по указанному классу и бумаге
Функция OnQuote по нему так же будет вызываться.
Спасибо. В документации вроде бы она не описана. Есть ли где -то информация о работе с ней? Параметры...
Она описана в документации, файл QLUA.chm, раздел "Функции для заказа стакана котировок", хотя там и описывать-то нечего, функция принимает всего 2 параметра: код класса и код бумаги. Для QLua это то же самое, что открыть стакан.
Дмитрий, кнопочка «ответить» в нашей с Вами ветке исчезла, наверное кончилось количество допустимых ответов:), поэтому отвечу в новой теме.
За ссылку спасибо, буду разбираться, хотя я еще окончательно не решил, по какому из возможных вариантов действовать. Пока, все же, больше склоняюсь к варианту Lua + Delphi, как наиболее простому.
Насчет терминала Квик, ну как его у меня может не быть, если я уже более 16 лет торгую:)?
Относительно интерфейса, он нужен исключительно для удобства в работе. Сейчас у меня в нем отражается около 30 параметров, половину из которых приходится менять в процессе работы, и порядка 10 кнопок. И все это по каждой паре инструментов, которых около 40. А иначе сложно добиться прибыльности. Правда есть желание все полностью автоматизировать и посадить на сервер брокера, но это пока мечты.
Что касается программиста –спасибо, буду иметь ввиду, у меня создалось ощущение, что Вы хорошо разбираетесь в данном вопросе. Правда я, как правило, предпочитаю во всем разбираться сам, чтобы при отладке, сбоях или малейшем изменении не бегать за программистом (был у меня такой печальный опыт).
16 лет это серьезный опыт! У сайта настройка максимум 10 вложенных комментариев, так что всегда начинайте просто, так же, как сейчас, новую ветку, я увижу. Я тоже предпочитаю сам во всем разбираться, по этому, поддерживаю. По поводу того, что я разбираюсь в этом вопросе хорошо могу ответить, что все относительно, я самоучка, по этому, разбираюсь в чем-то только по мере необходимости, много чего не знаю. В общем, удачи Вам, если будут сложности в чем-то, обращайтесь, подскажу что знаю.
Спасибо!
Здравствуйте Дмитрий!
Хочу написать робот-арбитражер для парного трейдинга с акциями и фьючерсами, главные требования:
1. Скорость работы – максимально быстрая скорость постановки, снятия и перестановки заявки при изменении цены в стакане – желательно не более 0.1сек.
2. Отсутствие торможения – отсутствие замедления и сбоев в работе при выставлении заявок по 15-20 парам инструментов, при отслеживании до 40-60 пар (отслеживание возможно не в режиме реального времени, а периодически – 1раз в 1-5 минут).
Не нужно: никаких графиков, индикаторов, проверки на истории, возможностей постановки заявок вручную.
Собственно такой робот у меня есть (написан мной на Delphi), но он работает через передачу по ODBC в базу данных и затем чтения из нее, что замедляет постановку заявки более чем на 1.5 секи и при работе более чем с 8-10 парами начинаются сбои в постановке/снятии заявок.
Вопрос: возможно ли написание подобного робота, отвечающего указанным выше требованиям на, Lua или Lua + внешняя программа (С#, Delphi)?
Поскольку Lua не знаю совершенно, не хотелось бы оказаться в положении человека изучившего Lua, написавшего на нем робота и вдруг выяснившего, что скорость постановки заявки будет медленная и работать можно будет только с 2-3 парами инструментов :).
Здравствуйте! Возможно и на чистом Lua такого робота написать и на Lua в связке с другими языками через DLL. Lua тормозить не будет, будет отправлять заявку мгновенно, задержки происходят на пути от квика к серверу брокера, с сервера брокера до биржи и обратно, а это зависит от качества интернета и удаленности от сервера брокера. Думаю, проблем со скоростью у Вас не будет, если все правильно напишите, а, если нужна будет еще более высокая скорость, то можно будет в будущем арендавать виртуальный, или реальный сервер у брокера, или на бирже, так же поставить туда квик и все моментально будет работать. Хотя я думаю и без этого скорость Вас устроит.
Спасибо Дмитрий!
А можно где-нибудь посмотреть образец текста программы на Lua с передачей данных (допустим стакана) по DLL в программу на Delphi. Все-таки по образцу гораздо легче разобраться:).
И еще, можете ли Вы, как эксперт, хотя бы ориентировочно, оценить скорость работы обоих вариантов роботов(чисто Lua иkb Lua+Delphi) при указанных выше потоке данных? А то на некоторых форумах говорят, что 100 млсек через Квик и Lua в принципе не вытянуть. Какой из них будет работать быстрее с Вашей точки зрения?
По поводу интернета: ping до брокера 25-27 млсек, от брокера до биржи (по утверждению брокера) меньше 10млсек. Да, думаю понятно, что одновременно 20 заявок выставляться не будет, просто идет отслеживание 15-20 пар, а одномоментно будет высталяться 1 максимум 2 заявки.
Примеры есть только с C#. Посмотрите раздел сайта "Qlua + C/C++/C#". Думаю, если только QLua использовать, робот быстрее будет работать, т.к. не будет тратиться время на отправку данных в другое приложение, но, опять же, если будут производиться какие-то сложные расчеты, то, возможно, выгоднее будет по времени выполнять их на стороне. И в том и в другом случае наибольшее значение будет иметь то, на сколько оптимальный алгоритм принятия решений Вы напишите, т.к. QLua на отправку транзакции практически нисколько времени не затрачивает. Можете сделать предварительный тест, в котором в цикле выполняйте самую емкую операцию и посмотрите сколько раз за секунду, например, lua успеет ее выполнить, тогда проще будет выводы сделать. Вот здесь замерялась примерно скорость отправки данных а C#:
https://quikluacsharp.ru/qlua-c-cpp-csharp/otpravka-dannyh-iz-tekushhej-tablitsy-parametrov-v-c-posredstvom-dll/
где видно, что бывает и 0 мс, т.е. все от алгоритма зависит, от его оптимизации.
Но я, все таки, рекомендую Вам Вашего робота только на QLua написать без DLL.
Можете вообще на Metatrader 5 все делать, говорят, что он намного быстрее QLua работает. Но я Вам не могу по этому поводу ничего сказать конкретного, т.к. сам им не пользуюсь.
Спасибо.
А временную оценку (хотя бы приблизительно) не можете дать? Возможно уложиться в 100 млсек или нет? Математические расчеты не сложные (+, -, *, /, проверка выполнения условий, никаких логарифмов, степеней или статистических формул), другое дело, что за 1 цикл придется рассчитывать информацию по 15-20 парам инструментов (часто по разным алгоритмам), а раз в минуту по 40-60 парам.
Возможно действительно на QLua будет работать быстрее, но:
1. в программе достаточное количество переменных которые надо менять в процессе работы, особенно при настройке, а для этого нужен интерфейс. В QLua его, насколько я понимаю, написать нельзя.
2. у меня уже есть программа написанная на Delphi, а значит нужно только настроить перевод данных в нее, что намного проще, чем целиком писать программу на QLua,
Я прав?
И еще вопрос. Правильно ли я понимаю, что для передачи данных из QLua на Delphi необходимо написать свою DLL на Delphi?
Если да, то возможно вы знаете в сторонних ресурсах примеры подобных решений, а возможно есть уже и готовые?
Пожалуйста! Считайте, что скорость будет такая же, как сейчас у Вас получается на Delphi плюс потери на передаче квик - брокер - биржа. А уложитесь ли Вы в 100 мс я сказать не могу, т.к. не знаю сколько времени у Вас затрачивается сейчас в дельфи. Визуальный интерфейс можно не делать, можно просто в начале скрипта написать параметры и менять их вручную, типа такого:
Открыли скрипт в Notepad++, поменяли значения параметров, сохранили, запустили в квике, дело 30 секунд.

Вы ведь не ради красоты это делаете, а какая разница, в форме значение ввести, или в начале скрипта, по большому счету?
А вообще, можете и интерфейс сделать на чистом QLua, например, вот такой:
Изображение:
Первая таблица появляется при запуске скрипта, кнопки ее кликабельны, нажимая на кнопку "Настройки", появляется таблица "Настройки", нажимая в таблице "Настройки" по ссылке "Из списка" строки "Код инструмента", появляется таблица "Код инструмента", кликнув в которой по нужному инструменту, таблица инструментов исчезает, а выбранный инструмент назначается параметру "Код инструмента" и отображается в таблице "Настройки". Так же, можно синими кнопками < , > выбирать элементы из заранее сформированного списка, не открывая таблицу инструментов. В результате получается вполне работоспособный интерфейс.
В средней таблице "Настройки" все теги вводятся с клавиатуры, т.е. мигает курсор, как в обычном текстовом поле, но на самом деле это обычная таблица, в которой можно в реальном времени выводить в ячейки разные значения, окрашивать их цветом, также таблицы QLua поддерживают стандартные события пользовательского ввода: клики, нажатия клавиш и т.п., но, сразу скажу, это все довольно трудоемко.
По поводу Delphi, раньше много чего в нем писал, потом полностью перешел на Visual Studio и C# и не разу не пожалел, чего и Вам желаю, Visual Studio, как бы, более взрослая среда разработки, на мой взгляд, но это только мое мнение. Т.к. давно не использовал Delphi, не могу Вам ничего по нему подсказать, просто не помню как там все устроено, соответственно, не могу подсказать где что посмотреть, т.к. сам не ищу и не знаю где это все есть.
Спасибо, буду думать:).
Всегда пожалуйста! Можете, кстати, просто к скрипту приделать DLL и в ней вести все расчеты, она на C++ пишется, так что скорость можно очень хорошую получить, просто перенесите в нее все то, что у Вас в Delphi.
Можете, кстати, в этой DLL и интерфейс свой создать на C++.
К сожалению я ни разу не программист:(, я и на Delphi-то пишу с трудом (просто жизнь заставила), так что С++ я боюсь мне будет освоить очень затруднительно, наверное придется искать программиста, если ничего другого не придумаю:(.
Скажите, а текст приведенного Вами примера интерфейса на Lua большой секрет? Его как-то можно получить? Все-таки с подобным образцом разобраться будет намного проще.
А вообще, большое Вам спасибо за проявленное участие!
Всегда пожалуйста! Тот код не секрет, но он очень сложен, я думаю Вы в нем больше запутаетесь только, начните с более простого варианта работы с таблицами QLua: https://quikluacsharp.ru/quik-qlua/primer-skripta-qlua-lua-vypolnyayushhego-torgovye-operatsii-v-terminale-quik/
Поймете принцип, а дальше дело техники, можно хоть сколько будет усложнять и дополнять функционал.
Еще Вам в помощь раздел файла QLua.chm "Функции для работы с таблицами Рабочего места QUIK", данный файл находится в папке с терминалом квик, если у Вас еще нет терминала, то получите демо от разработчиков:
http://arqatech.com/ru/support/demo/
И, все таки, какая у Вас необходимость в интерфейсе? Чем Вас не устраивает устанавливать значения параметров просто в коде?
Если, все таки, нужен будет программист, обращайтесь.
Вот пример:
Как правильнее отсортировать таблицу по значению "BID" в таблице qlua , чтобы и второй столбец соответственно сортировался. Изображение:

Надо чтобы было так:
Либо вручную по заголовку столбца кликнуть и выбрать сортировку, либо изначально вносить значения в таблицу в нужном порядке. Или Вы сделали вручную сортировку на первом столбце в таблице, он у Вас сортируется, а второй столбец остается неизменным?
В ручную по заголовку не сортирует совсем, так как фильтр окна настроен на текст.
Сортирует только по цене, столбик с названиями тикера остается не измененным.
Спасибо заранее.
Это что у Вас за строка такая странная?
По правде строка вот такая: array={tonumber(SBER),tonumber(SBERP"),tonumber( LKOH)}
Это уже нормально, если кавычку после SBERP убрать.
Если Вы во второй столбец напрямую пишите значения, никак не связанные с array, то с чего они будут сортироваться? Если Вы напрямую указываете, что в строку 1, столбец 2 нужно записать слово "SBER", то как оно должно вдруг само по себе поменяться местами со словом "SBERP" из соседней строки?
Извиняюсь, а то я почитав на сайте решил, что вы как раз то имеете телепатические способности, странно что нет))
Да, мне тоже жаль, что у меня их нет 🙂 Сейчас придумаю как решить Ваш вопрос.
Придумал вот такой немного извращенный способ, но он вроде бы работает 🙂 Ничего проще придумать как-то так с ходу не удалось.
Благодарю, отлично работает.
Всегда пожалуйста!
Рано радовался, на квике другого брокера и не на демо счете не работает [img]http://s018.radikal.ru/i508/1701/3b/93a616aa2e78.jpg[/img]
Сорян, разробрался оказывается класс бумаг отличается от демо
🙂
Вы отсортировали значения переменных SBER, SBERP, и LKOH, а где Вы сортировали эти названия: "SBER", "SBERP", "LKOH" ?
Lua не телепат, она делает только то, что ей "говорят".
Выложил скрипт, так как именно на этом месте где надо сортировать названия "SBER", "SBERP", "LKOH" у меня случился ступор на весь день. Замучился немного.
И вообще Вы на каждом проходе цикла for заносите во все 3 строки первого столбца одно и то же значение, у Вас даже такая таблица не получиться, если Вы выполните такой код.
После выполнения кода получается окно как на картинке. Пытался укоротить, чтобы донести суть своей проблемы.
Добрый день, Дмитрий!
Не нашел других топиков куда можно было задать вопрос.
Подскажите, пожалуйста, как взять в Qlua открытый интерес.
Мучаля с getParamEx (class_code, sec_code, param_name), но получатся неведомая чушь.
Заранее спасибо.
Здравствуйте! Проще брать из обезличенных сделок, в функции обратного вызова OnAllTrade.
Вы только скрипт, представленный Дмитрием, не запускайте, он как пример, а то заспамит Вам терминал сообщениями и вообще завесит его.
+ 🙂
Большое спасибо Дмитрий и Александр.
Кстати, а вы может вкурсе - есть задача: кидать данные в файл через DLL (простой сбор стакана), но есть ощущение. абсолютно пока субъективное, что не все данные Quik получает с серва, и или не все отправляет в файл.
Куда покопать ?
Всегда пожалуйста! Суть в том, что квик не получает с сервера перемещение/изменение каждой заявки в стакане, а получает снимок, срез стакана несколько раз в секунду и то, что происходило между этими срезами мы не видим, если нужно видеть все процессы в стакане, то нужно уже смотреть в сторону прямого подключения к бирже, без квика.
Дмитрий, а скорость получения срезов можно как-нибудь настроить? (в КВИКЕ)
Спаисибо!
Нельзя, квик принимает так, как транслирует сервер.
Здравствуйте, Дмитрий.
Подскажите, пожалуйста, вы разрабатываете собственные торговые стратегии или используете существующие? Я реализовал уже несколько различных стратегий, и, к сожалению, все они не гарантируют прибыль. Иногда работают, иногда - нет. Хотелось бы найти/придумать что-то более стабильное. Не поможете советом, в какой области исследовать? Может быть ресурс или литературу подскажете?
Здравствуйте! К сожалению, не могу что-либо Вам посоветовать по этому поводу, дело очень индивидуальное для каждого, кому что ближе по складу ума и характера.
Добрый день, подскажите, плиз, возможно ли с помощью qlua реализовать не сложный торговый алгоритм с применением свечных формаций?
Добрый день, да можно, QLua и создан как раз для того, чтобы автоматизировать торговые алгоритмы.
Если у меня есть определённый алгоритм, с чего стоит начать... ? Я не программист и никогда этим не занимался. Возможно есть какие-либо типовые исходные каркасыдля построения своей Торг. системы?
Никаких типовых каркасов нет, к сожалению, изучайте все, о чем написано в данной статье, это и будет начало.
Здравствуйте, писал давно на qpile. Опять хочу написать робота, на новом уровне. где я могу прочитать сравнительную информацию по скажем скорости работы разных схем работы с квиком? обрисовать идею аглогитма (не сложную) и спросит совета как удобнее его реализовать? Спасибо!
Здравствуйте! По скорости работы схем не знаю где почитать, не понимаю о каких схемах идет речь. Если Вы будете писать на QLua, то да, опишите алгоритм, я подскажу.
перекладывать часть средств из одного инструмента в другой при наступлении условия, что можно конвертировать "мгновенно" (то есть в стаканах есть заявки достаточные для удовлетворения объема по заданной цене). скорость чтения стаканов хотелось бы раз 10 в секунду или чаще. Не знаю возможностей по скорости, каковы реалии? объемы и уровни не знаю где удобнее вводить, может из Экселя читать? Спасибо!
а ещё - можно SQlite локальную базу данных подключить?
Про SQLite ничего сказать не могу, т.к. сам не подключал к QLua, хотя видел где-то, что можно.
По мнению людей, кот работали - глючная база. И подключать, в общем, замотаетесь (хотя, это смотря куда). А вообще да, простая, легкая.
Я использую компактную установку MS SQL-Server (free) или по простому Access. Вот с этим никаких проблем.
Проверил сейчас, ради интереса, с какой частотой стакан обновляется, получились вот такие результаты (второй столбец - миллисекунды):
17:43:22 156
17:43:22 63
17:43:22 109
17:43:22 110
17:43:23 218
17:43:23 250
17:43:23 391
17:43:23 31
17:43:23 94
17:43:23 16
17:43:23 46
17:43:23 63
17:43:24 78
17:43:24 125
17:43:24 109
17:43:24 219
17:43:24 110
17:43:25 531
17:43:25 125
17:43:25 109
17:43:25 422
17:43:26 453
17:43:26 219
17:43:26 109
17:43:26 282
17:43:26 62
17:43:27 203
17:43:27 110
17:43:27 203
17:43:27 234
17:43:27 109
17:43:27 110
17:43:27 109
17:43:28 125
17:43:28 110
17:43:28 187
17:43:28 250
17:43:28 94
17:43:28 125
17:43:28 109
17:43:29 94
17:43:29 219
17:43:29 93
17:43:29 579
17:43:30 93
17:43:30 110
17:43:30 109
17:43:30 94
17:43:30 109
17:43:30 125
17:43:30 219
17:43:31 328
17:43:31 109
17:43:31 313
17:43:31 359
17:43:32 94
17:43:32 219
17:43:32 109
17:43:32 110
17:43:32 109
17:43:32 109
17:43:32 110
17:43:32 109
17:43:32 94
17:43:33 656
17:43:33 219
17:43:33 109
17:43:34 125
17:43:34 110
17:43:34 109
17:43:34 109
17:43:34 328
Отслеживал поступление новых данных по инструменту SBRF-9.16 в функцию обратного вызова OnQuote.
Т.е. скорость та же, какую Вы видите, когда смотрите в стакан в квике.
А уровни и объемы нельзя прямо в скрипте вычислять? Если нет, то можно сделать визуальную таблицу QLua и в нее вводить с клавиатуры нужные цифры.
Спасибо за измерения скорости.
"и в нее вводить с клавиатуры нужные цифры." - а выгружать в какие форматы можно? и читать какие форматы файлов?
Могу ошибиться, но насколько помню тогда на qpile в Excel формировал макросом заявки, выгружал в текстовый файл определённого формата и портфель читал файл и заявки выставлял.
Пожалуйста! В QLua нет встроенных инструментов выгрузки в какие-то определенные форматы, но QLua имеет практически те же возможности, что и язык Си, по этому, можно реализовать работу с любыми форматами, но все это нужно программировать, либо использовать какие-то готовые библиотеки. На QLua Вы так же можете читать заявки из файла. Только, в отличии от QPILE, QLua не будет делать это автоматически без Вашей команды.
Т.е. алгоритм примерно следующий, Вы экселем добавляете в файл строки транзакций, скрипт с установленной Вами частотой читает данный файл, если количество строк в нем изменилось с последнего прочтения, то скрипт берет каждую новую строку-транзакцию и отправляет ее на сервер брокера при помощи функции sendTransaction()
Это если Вам удобнее с экселем работать, хотя все, что Вы делаете в экселе, Вы можете делать и в самом скрипте.
Вот такие таблицы можно делать при помощи QLua

Изображение:
в средней таблице название тегов можно менять обычным вводом с клавиатуры
Красивая таблица))) Вопрос такой: Можно посмотреть кусочек кода от представленной таблицы на рисунке? Я так понимаю: Нажимаем кнопку "Настройки", создается таблица с параметрами. И что за поле такое "Из списка", это возвращаемые значения из функции?
Делаю робота (начинаю с интерфейса как обычно), не нашел на сайте примеров интерфейса аналогичных этой картинке.
Сильно не пинать, только начал разбираться, раньше программировал на MQL4. Спасибо.
Это большой движок самописный построенный по принципу объектно-ориентированного программирования, так что кусочек кода вряд ли что-то прояснит, но мне не жалко 🙂
Вкратце, проверяется в какой строке был клик, и создается новая визуальная таблица, в которую заносятся допустимые значения для выбранного параметра.
Непонятны следующие моменты:
1) Первая таблица ячейка "Настройки" это кнопка или покрашенная ячейка?
2) Вторая таблица синие квадратики с белыми стрелками это что такое? Какой то другой тип ячеек ? То есть, есть видимые отличия этих ячеек, например с ячейкой "Баланс" из первой таблицы в ней полагаю ничего ввести или выбрать нельзя, только просмотр.
В итоге видим три типа ячеек: простую ячейку, ячейку ввода параметров, ячейку с выбором.
Интересовал код который собственно и формирует такой вид ячеек.
В QLua нет кнопок, как таковых, это все раскрашенные ячейки, кнопка со стрелочкой, это просто раскрашенная ячейка, в которой знак "больше", или "меньше", весь интерфейс строится на функциях описанных в разделе "Функции для работы с таблицами Рабочего места QUIK" файла справки QLUA.chm, который находится в папке терминала. Просто обрабатываются соответствующим образом клики мышкой, нажатия клавиш на клавиатуре, никакой магии.
Пока на сайте не нашел примеров как строить элементы интерфейса для взаимодействия с пользователем, а именно элементы ввода параметров от пользователя к роботу: кнопки, селекторы, ячейки ввода и т.д. Тот арсенал, чем располагает QLua в этом вопросе. Вернее нашел, но к сожалению, только картинку.
Вот здесь есть кнопочки: https://quikluacsharp.ru/quik-qlua/primer-skripta-qlua-lua-vypolnyayushhego-torgovye-operatsii-v-terminale-quik/
Вас понял, спасибо огромное за помощь.
Всегда пожалуйста
Дмитрий, огромное Вам спасибо, за сайт, за проделанную работу.
Больших вам профитов )))
Спасибо))))
Всегда пожалуйста 🙂