Во-первых, в папке установки терминала QUIK должны быть 2 файла справок:
info.chm - справка по работе с терминалом (в нем есть вся информация по полям транзакций, которые применяются в функции sendTransaction) и
QLUA.chm - справка по языку QLua, держите их всегда "под рукой".
Если, по какой-то причине, их у Вас нет, скачайте здесь.
Для создания скриптов на языке Lua вполне подойдет редактор Notepad++, с небольшими настройками. Скачать его можно на сайте разработчика, он бесплатный (при установке выберите русский язык). Устанавливается стандартным способом.
После установки, если у Вас Windows 7/8/10, в свойствах ярлыка программы, на вкладке "Совместимость" поставьте галочку "Запускать от имени администратора" и нажмите "Применить". Это нужно для того, чтобы скрипты, находящиеся в папке "Program Files (x86)" можно было без проблем редактировать и сохранять.Запустите Notepad++. Для того, чтобы русский текст не подчеркивался как ошибка, пройдите по меню: "Плагины" -> "DSpellCheck" -> "Change Current Language" -> "Download More Languages...", поставьте там галочку напротив "Russian" и нажмите кнопку "Install Selected". После этого снова пройдите: "Плагины" -> "DSpellCheck" -> "Change Current Language" и нажмите на строку "Multiple Language". Теперь программа сверяет текст как с английским, так и с русским словарями.
ВАЖНО!!! Для QUIK необходимо сохранять скрипты в кодировке Windows-1251, иначе русский текст не будет адекватно отображаться.
Для того, чтобы задать скрипту кодировку, нужно перейти: "Кодировки" -> "Кодировки" -> "Кириллица" -> "Windows-1251"
Для разработки приложений на языке C# есть отличная среда разработки (IDE) Visual Studio от компании Microsoft. Советую Вам использовать именно ее, причин для этого очень много, назову основную: и язык C# и платформа .Net Framework, всю мощь которой он использует, созданы и продолжают развиваться компанией Microsoft. По-этому, логичным будет, использовать и язык и платформу и среду разработки одной компании. Еще один неоспоримый плюс это возможность получить бесплатно среду разработки непосредственно на сайте Microsoft. Там можно найти несколько вариантов бесплатно-предоставляемой IDE, я освещу лишь одну, самую актуальную на момент написания статьи.
Это Visual Studio Community 2015.
После установки, программа предложит войти в свою учетную запись Microsoft, если у Вас ее еще нет, рекомендую зарегистрировать, т.к. в ней будут автоматически сохраняться Ваши настройки из Visual Studio. И если Вы решите переустановить ее, например после переустановки Windows, то Ваши настройки будут автоматически загружены с сервера Microsoft.
Может быть такое, что среда разработки установится без русского языка. Для того, чтобы это исправить, пройдите в меню: "TOOLS" -> "Options", выберите из списка "Environment" пункт "International Settings" и нажмите на появивщуюся ссылку "Get additional languages". Скачайте русский языковой пакет, закройте Visual Studio, установите пакет. Все готово!
Один пользователь сообщил, что Visual Studio нужно ставить с удалённым антивирусником Eset (именно удалённым, а не отключённым!), почему то он мешает установке. Потом его можно поставить заново. Возможно кому-то пригодится эта информация.
Если у Вас появились какие-то вопросы, задайте их в комментариях под статьей !!!
Добрый день!маленький вопрос программа Visual Studioпросто огромна, не подскажите какие компоненты поставить, если я только буду пробовать изучить lua в привязке квик?
Привет, в Нотепад открыл код одного скрипта потом второго. И мы видим только код активного окна, можно ли как-то сделать в настройках, что-бы видеть два окна три и т.д. (как это реализовано в МТ4 и МТ5) ? Сам ковырялся в настройках но ничего не получилось.
Привет! "Опции" -> "Настройки..."


У тебя так же?
Изображение:
Изображение:
да
Понял о чем ты, кликни правой кнопкой по вкладке с названием файла и там "Переместить в другую область"
а так просто, а областей так понял только 2е? в принципе мне хватит
Да, похоже только 2, я сам этим ни разу не пользовался, даже не знал, что это есть в Нотепаде, теперь буду знать 🙂
А как догадался методом тыка? Ладно спасибо за помощь.
Да, им родимым 🙂 Всегда пожалуйста.
Кроме Notepad++ промелькнул продукт SciTE. В Notepad'e есть возможность раскрасить служебные слова. Кроме этого как бы можно добавить свой синтаксис с набором ключевых слов и так же их раскрасить. Заманчиво - но добавить ничего не получилось. В SciTE не нашёл таких настроек вообще, да и меню не на родном мне языке).
Кто-нибудь ставил перед собой подобные задачи?
Т.е. Вы хотите расширить встроенный в нотепад синтаксис луа ?
Писал много и долго что зачем и почему, а ответ оказался прост - ДА! ))).
Я просто подумал вдруг Вы не нашли в нотепаде стандартный луа-синтаксис и хотели сами его создать 🙂 Тогда лично я ничего Вам не подскажу, не пытался добавлять. И на сколько я понял, нотепад дает возможность свой синтаксис с нуля создавать, а если есть потребность добавить в существующий, то нужно, как я понимаю, этот плагин установленный как-то редактировать. Надеюсь кто-то из здесь присутствующих поможет Вам советами.
Здравствуйте, Дмитрий! А можете что-то сказать по поводу связки QLua + Python? Python ещё как-то, но C# я совсем не знаю.
Здравствуйте! Не могу ничего сказать, к сожалению, т.к. не использовал питон!
Дмитрий, добрый день))) Удачного дня)))
Спасибо, Александр:) И Вам всего наилучшего:)
Большое спасибо.
Чувствую я "подсяду" на Ваш сайт
А как Вас зовут?
Дмитрий
Спасибо за ответ.
Я согласен с Вами, что на счет C#. Смущает объем изучаемой информации.
Если пойти по пути создание приложений в C# то нужно изучить C# + Qlua .
Если в Qlua соответственно одна программа.
Наверно так и придется делать на C# .
Спасибо.
С уважением, Александр
Если появятся какие-то трудности или вопросы, например, по C#, пишите в комментариях, есть хороший опыт и наработки, постараюсь помочь!
Замечательный сайт. Огромное Вам спасибо.
Не знал где задать вопрос задал здесь.
Подскажите пожалуйста, есть ли в Lua библиотека с оконный интерфейс? Если есть то какая и ссылку на рабочий пример если можно.
Нужно написать модуль управления, в который поступают управляющие сигналы с Amibrokerа, а модуль передает сигналы на несколько квиков, и осуществляет контроль за сделками и капиталом, а также осуществляет ручное управление всеми квиками. В модуле должны быть окошечки, кнопочки и прочее....
Сейчас робот работает один Amibroker один квик
С уважением, Александр.
Здравствуйте, Александр! Спасибо за добрые слова! Библиотеки такие есть для QLua, но может быть Вам больше подойдет создать приложение на C#, которое будет решать все эти задачи, а Qlua использовать только как связку с C#, для выполнения торговых приказов в QUIK полученных из C#, и для обратной связи о сделках? Ведь если использовать такую библиотеку, то Ваш модуль будет привязан к определенному терминалу QUIK... Да и вообще, в C# намного больше возможностей и "удобств" для разработки сколь угодно сложных решений, чего нельзя сказать про сторонние библиотеки для QLua.