Добрый день. Пишу бота, который сканирует все акции ММВБ. Мне нужно собирать данные практически в режиме реального времени. Какой способ более эффективный? Мне нужна лучшая цена спроса/предложения или как вариант параметры сделки без открытия. Я вижу три варианта:
Привет всем! Как все таки отправить HTTP запрос из Lua(Quik)? Я пытаюсь использовать LuaSocket ,но Quik в упор не видит эту библиотеку куда бы я ему ее не положил. Какие шаманские обряды нужно провести,чтобы сие чудо заработало.https://github.com/diegonehab/luasocket
Добрый день! Есть бот ,работающий в Quik (ОС Windows),а есть запущенный в виртуальной Windows(основная ОС Mac). Так вот у второго бота есть особенность.Функция отправки транзакции возвращает nil trans_i=nil и res=nil,но при этом транзакция проходит и заявка выставляется на бирже.У первого бота все нормально.В чем проблема где "копать"?
Добрый день! Выставляю роботом стоп-заявку и потом анализирую на предмет того исполнилась она или нет. Но дело в том, что исполнение стоп-заявки не всегда приводит к выставлению ордера.Он часто отклоняется ТС. Мне нужно посмотреть результат с помощью Lua.В таблице стоп-заявок я не вижу этого параметра... Хотя визуально вижу,что он есть в таблице Quik.что мне делать? Описание параметров Таблицы стоп-заявок:
Параметр Тип Описание order_num NUMBER Регистрационный номер стоп-заявки на сервере QUIK ordertime NUMBER Время выставления flags NUMBER Набор битовых флагов brokerref STRING Комментарий, обычно: <код клиента>/<номер поручения> firmid STRING Идентификатор дилера account STRING Торговый счет condition NUMBER Направленность стоп-цены. Возможные значения: «4» – «<=», «5» – «>=»
condition_price NUMBER Стоп-цена price NUMBER Цена qty NUMBER Количество в лотах linkedorder NUMBER Номер заявки в торговой системе, зарегистрированной по наступлению условия стоп-цены expiry NUMBER Дата окончания срока действия заявки trans_id NUMBER Идентификатор транзакции client_code STRING Код клиента co_order_num NUMBER Связанная заявка co_order_price NUMBER Цена связанной заявки stop_order_type NUMBER Вид стоп заявки. Возможные значения: «1» – стоп-лимит, «2» – условие по другому инструменту, «3» – со связанной заявкой, «6» – тейк-профит, «7» – стоп-лимит по исполнению активной заявки, «8» – тейк-профит по исполнению активной заявки, «9» - тэйк-профит и стоп-лимит
orderdate NUMBER Дата выставления alltrade_num NUMBER Сделка условия stopflags NUMBER Набор битовых флагов offset NUMBER Отступ от min/max spread NUMBER Защитный спред balance NUMBER Активное количество uid NUMBER Идентификатор пользователя filled_qty NUMBER Исполненное количество withdraw_time NUMBER Время снятия заявки condition_price2 NUMBER Стоп-лимит цена (для заявок типа «Тэйк-профит и стоп-лимит») active_from_time NUMBER Время начала периода действия заявки типа «Тэйк-профит и стоп-лимит» active_to_time NUMBER Время окончания периода действия заявки типа «Тэйк-профит и стоп-лимит» sec_code STRING Код бумаги заявки class_code STRING Код класса заявки condition_sec_code STRING Код бумаги стоп-цены condition_class_code STRING Код класса стоп-цены canceled_uid NUMBER Идентификатор пользователя, снявшего стоп-заявку order_date_time TABLE Время выставления стоп-заявки withdraw_datetime TABLE Время снятия стоп-заявки
Добрый день! У меня есть внешняя программа,которая пишет в некоторый текстовый файл цену по некому зарубежному инструменту каждую секунду. Потом вычисляется отношение этой цены к индексу РТС и выводится как индикатор в Quik.Но возникает вопрос. Можно ли этот индикатор выводить не только в виде линии,но и баров...как это сделать? Я так понимаю надо самим считать Open High Low Close...в зависимости от интервала.Но как потом вывести все это на экран? Неплохо было бы если сам Quik формировал свечи исходя из цены ,которая поступает в режиме реального времени и опр.интервала времени...
Добрый день! Есть сторонний источник данных,который пишет данные в файл(передает в MemoryFiles итд) те я их могу увидеть из Lua. Но я хочу с помощью данных построить график(через LuaIndicators) и вижу ,что
Список функций, доступных из скрипта индикатора:
getWorkingFolder – возвращает путь, по которому находится файл info.exe, исполняющий скрипт, getScriptPath – возвращает путь, по которому находится запускаемый скрипт, getNumberOf – возвращает количество записей в таблице «TableName», getItem – возвращает таблицу Lua, содержащую информацию о данных из строки с номером «Index» из таблицы с именем «TableName», getParamEx – получает значения всех параметров биржевой информации из Таблицы текущих значений параметров, message – отображает сообщения в терминале QUIK, isConnected – определяет состояние подключения клиентского места к серверу, getTradeDate – получает дату торговой сессии, getInfoParam – позволяет получить параметры для информационного окна (Связь/Информационное окно), getClassSecurities – получает список кодов бумаг для списка классов, заданного списком кодов, getClassInfo – получает информацию о классе, getClassesList – получает список кодов классов, полученных с сервера в ходе сеанса связи, getSecurityInfo – получает информацию по инструменту, getQuoteLevel2 – получает стакан по указанному классу и бумаге, getMoney – получает информацию по денежным лимитам, getDepo – получает информацию по бумажным лимитам, sendTransaction – функция для работы с заявками, SearchItems – позволяет реализовать быструю выборку элементов из хранилища терминала и возвращает таблицу с индексами элементов, удовлетворяющих условию поиска, getPortfolioInfo – получает значения параметров таблицы «Клиентский портфель», getBuySellInfo – получает параметры таблицы «Купить/Продать», getPortfolioInfoEx – получает значения параметров таблицы «Клиентский портфель» с учетом вида лимита, getBuySellInfoEx – получает параметры таблицы «Купить/Продать» с учетом вида лимита, getOrderByNumber –возвращает таблицу Lua, содержащую описание параметров Таблицы заявок и индекс заявки в хранилище терминала, RGB – преобразовывает компоненты RGB (red, green, blue) в одно число, AddLabel - добавляет метку с заданными параметрами, DelLabel - удаляет метку с заданными параметрами, DelAllLabels - удаляет все метки на диаграмме с указанным графиком, GetLabelParams - получает параметры метки, SetLabelParams - задает параметры для метки с указанным идентификатором, SetValue - устанавливает указанное значение на выбранной линии определенной свечи индикатора, GetValue - получает значение, установленное на выбранной линии указанной свечи индикатора, SetRangeValue - устанавливает указанное значение на выбранной линии для определенного интервала индексов свечей индикатора.
Можно ли мне получить доступ к произвольной таблице Quik в том числе и построенные с помощью Qlua?
a={}
function OnTrade(trade)
a[trade.trade_num]={}
a[trade.trade_num].status="NEW"
a[trade.trade_num].value=.....вычисления
end
И есть функция main в которой просматривается таблица a,не может ли у нас получится там, что a[trade.trade_num].status=nil? Правда чисто теоретически...но все же интересно.Потоки то разные вроде.
Добрый день!Есть в Quik индикатор AO.Данный индикатор представляет собой гистограмму,где столбики гистограммы имеют зеленый цвет(рост) либо красный(падение). Я могу получить значения индикатора,но что это рост или падение-я определить не могу через LUA. Что мне делать?
Добрый день! Как обработать ошибку возникающую при вылете Lua скрипта? Понятно если что если данного функционала нет,то я могу "тупо" заставить Lua в скрипте 1 писать в нек.файл время текущее.А другим скриптом проверять его. Если текущее время файла отл.от того что есть в файле,то сообщение на почту.
Запускаю бота на своем счету---бот отражает вар.маржу. На другом- нет.Настройки верные счета. Пытаюсь определить суммарную вар.маржу путем суммирования в таблице откр.позиции у меня на счету показывает маржу,а на другом счету 0. Те она не воспринимается Lua Quik никак. Брокеры разные.Что это такое?
Добрый день! Как программно строить линии тренда на графике (не из LUAIndicators) c помощью символов? Почему не графике не отображаются графические метки с прозрачным фоном(GIF)? Хорошо бы в будущих версиях сделали возможность построения линий...из LUA. Всего 4 координаты...начало (DateTime1,Y1)--> (DateTime2,Y2) Тогда можно строить свои индикаторы без убого LUAIndicators...
Разрабатываю торговых роботов на заказ. LUA,QLUA Прочие терминалы:Sterling,SmartCom,IB,Laser итд (всё где есть API) Рынки:российский и зарубежные webwrk@yandex.ru
Разрабатываю торговых роботов на заказ. LUA,QLUA Прочие терминалы:Sterling,SmartCom,IB,Laser итд (всё где есть API) Рынки:российский и зарубежные webwrk@yandex.ru
Добрый день! Возникает странная ошибка.Раньше такого не наблюдал в роботе. 31.03.2016 12:13:29.122: Result: 1, Result_ex: 4, Description: Ошибка создания заявки. [GW][10000] "Parse message failed". Спасайте.А то вручную невозможно торговать-)
Добрый день! Есть индикатор,который содержит в себе несколько цветов. Каждый участок может иметь два цвета :красный и зеленый. Как мне программно менять цвет индикатора в зависимости например от его значения? Settings.Line[1].Color ?Но это предварительные установки цвета и они не меняются в OnCalculate ? Если перехожу на две линии,то при значении nil в одной из линий LUA просто соединяет крайние "не nil" значения.Есть способы решить эту задачу? В MT и NinjaScript таких проблем нет. Спасибо.
Добрый день! Пишу так: lastprice=GET_PARAM (Class, Cod, "LAST") price_pa=GET_PARAM (Class, Cod, "CLOSING_AUCTION_PRICE") Цена lastprice опредляется,но а цена послеторгового аукциона не определяется.. Вызываю функции в период с 18.43 по 18.45.В открытой таблице текущих значений цена ПА видна. В чем может быть проблема? Спасибо.
Сделаю робота или скрипт на заказ. Для Quik- Qpile,Lua,платформа NET,Excel Также возможна разработка роботов(скриптов) для работы в других системах(Laser,IB,SmartCOM,Sterling итд) Также тестирую ТС в WealthLab или в собственном программном обеспечении. webwrk@yandex.ru