Sergey Gorokhov (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: Пред. 1 ... 38 39 40 41 42 43 44 45 46 47 48 ... 78 След.
Большие ли отличия QLua от от Lua и где официальная документация?, Какая версия Lua в QLua, работают ли все функции Lua или только какой-то ограниченный набор (если так, то где прочитать, какой?), можно ли подключать модули и все как в обычном Lua? Есть ли где-то на официальном сайте документация?
 
Цитата
Ivan Petrov написал:
. В поисковиках почему-то очень сложно найти официальную документацию по QLua, пожалуйста, дайте ссылку, крайне желательно на официальном сайте.

Документация поставляется вместе с терминалом QUIK в отдельном файле QLUA.chm
Также есть ссылка: https://arqatech.com/upload/iblock/d63/quik_lua.zip

Цитата
Ivan Petrov написал:
2. Сильно ли отличается QLua от Lua, т.е. можно ли как обычно подключать разные модули, использовать все возможности Lua итд итп или нет? Где об этом почитать?
В QLUA есть все что в LUA + то что описано в документации QLUA.chm

Цитата
Ivan Petrov написал:
3. Какая версия Lua в QLua? Просьба подкрепить ссылкой на официальную документацию, если можно.

Используется версия 5.1, про ссылку не совсем понятно.
Оборотов торгов в деньгах (RUR) на графиках Фондовой секции ММВБ, Отражение Оборотов торгов в деньгах (RUR) на графиках инструментов Фондовой секции ММВБ - возможно ли организовать в текущей версии Quik
 
Цитата
Денис Василевский написал:
А разве исторические данные берутся не с серверов ММВБ?

Здравствуйте,
Нет.
OnStop
 
Здравствуйте,
Проблема изучается. Постараемся в ближайшее время дать ответ.
Двойное срабатывание OnOrder, Двойное срабатывание OnOrder
 
Анатолий,
Данный вопрос совершенно никак не относится ни к терминалу ни к QUIK в целом.
За исполнение заявок отвечает биржа согласно правилам торгов. И Ваш вопрос надо адресовать брокеру, т.к. весь диалог с биржей Вы ведете через брокера.
А QUIK это лишь средство для доступа на биржу
Двойное срабатывание OnOrder, Двойное срабатывание OnOrder
 
Анатолий,
Этот вопрос совершенно никак не относится к LUA.
Уточните у брокера причины исполнения заявок.
Снятия заявки без id транзакции
 
Здравствуйте,
Для снятия заявки TRANS_ID снимаемой заявки не нужен.
TRANS_ID нужен для транзакции.
Снятие заявки - это тоже транзакция и правила для TRANS_ID ровно такие же как и для любой другой транзакции.
А значит в TRANS_ID можно указать любое число.
А именно:
Если речь про отправку транзакций из файла, то TRANS_ID должен быть таким которого еще нет в tro файле.
Если речь про QPILE, QLUA или Trans2Quik, то вообще любое число.
В диапазоне от 1 до 2х миллиардов с копейками.
MOVE_ORDERS отвалилась
 
ytrewq,

В данный момент мы ведем диалог с Вашим брокером.
Т.е. проблема открыта и пока причины ошибки не установлены.
В связи с чем считаем давать какие-либо рекомендации преждевременным.
MOVE_ORDERS отвалилась
 
ytrewq,
В текущий момент мы уже ведем диалог с Вашим брокером по данной проблеме.
О результатах, Вы можете уточнить у брокера.
Перестал работать DDE с квика, Перестал работать DDE с квика
 
Николай Павлов,
Здравствуйте,
Уточните точную версию MS Office и версию терминала QUIK.
Повторите проблему с логом quik_dde.log, пришлите его нам для анализа на адрес quiksupport@arqatech.com
MOVE_ORDERS отвалилась
 
Здравствуйте,
Уточните через какого брокера Вы работаете.
Двойное срабатывание OnTrade( T ), Наблюдаю при сделках двойное срабатывание OnTrade( T ) сделках
 
Алексей Степанов,
Раньше сделки действительно не обновлялись, но теперь сделки являются обновляемыми.
И на них есть и TRANS_ID и UID.
простой код не работает
 
Космонавт,
Если заказать большое количество стаканов, то да это создаст какую-то нагрузку на сервер брокера.
Если постоянно заказывать и отписываться то нет.
если просто дергать значения функцией getQuoteLevel2 то брокер этого даже не заметит
простой код не работает
 
Цитата
Космонавт написал:
Это зависит от настроек брокера?

Да верно.
простой код не работает
 
Здравствуйте,
Попробуйте так:
Код
function main()
class="SPBFUT"
sec="SRH7"
s=Subscribe_Level_II_Quotes(class, sec)
toLog (log, s) --s как и положено true
sleep(1000)
qt=getQuoteLevel2(class, sec)
toLog (log, qt) --qt выглядит так: bid_count=0.000000;offer_count=0.000000;
Unsubscribe_Level_II_Quotes(class, sec)
end
Двойное срабатывание OnOrder, Двойное срабатывание OnOrder
 
Цитата
Анатолий написал:
Что значит заявка выставлена через QUIK, но без дополнительных параметров и заявка выставлена не через QUIK?
Речь про первое срабатывание OnOrder, когда параметры еще не доехали.
Цитата
Анатолий написал:
Возможно ли что при срабатывании заявки функция OnOrder не будет вызвана вообще?
Такого сценария не должно быть. Разве что если связь пропадет, но после подключения, колбек все равно приедет.
Двойное срабатывание OnOrder, Двойное срабатывание OnOrder
 
Цитата
Анатолий написал:
В первом вызове значения UID и TRANS_ID равны 0 или nil?
Лучше проверьте на практике.

Цитата
Анатолий написал:
И можно ли пропустить вызов в данном случае и ожидать второй вызов?
Второго вызова может и не быть, в случае если транзакция отправлялась на биржу не через QUIK.
Отличить заявку выставленную через QUIK но без доп параметров, от заявки выставленной не через QUIK никак нельзя.
Поэтому лучше реагировать на ответы на транзакции (OnTransReply) там есть номер порожденной заявки и нужные параметры UID и TRANS_ID
Если в OnTransReply параметры есть, а на заявке с тем же номером их пока еще нет, значит скоро приедет еще один OnOrder но уже с нужными параметрами.
Двойное срабатывание OnOrder, Двойное срабатывание OnOrder
 
Здравствуйте,
Вопрос уже не раз подымался на форуме. Второй вызов может произойти в момент, когда сервер устанавливает на теле заявки параметры которых нет на бирже.
Таковыми например являются UID и TRANS_ID (есть и другие). В первом вызове их нет, а во втором есть.
Последний индекс
 
Цитата
валерий написал:
Что значит "просто запомнить предыдущее значение"? На каком индексе его брать и запоминать?
что мешает добавить для этого переменную в код? И просто ее обновлять если она не равна Size()?

Цитата
валерий написал:
Можете это в виде кода написать?
нет, т.к. задача и так легко решается.
Последний индекс
 
Цитата
валерий написал:
Как узнать значение? На какой свечке? Если на первой там все понятно, но оно не будет соответствовать последнему расчету. А как на последней, если я не могу ее определить?
Вам надо просто запомнить предыдущее значение и сравнить с текущим.
Если они не совпали то обновить предыдущее.
Последний индекс
 
валерий,
Запомнить старое значение и сравнить с новым
Последний индекс
 
Цитата
Sergey Gorokhov написал:
валерий  ,
Сообщить message в какой момент? В момент закрытия текущей свечи? если так то его отловить можно только после появления новой, или окончания торгов.
Соответственно, нужно добавить условие на проверку появления новой свеч (изменится Size()) и статус торгов (через getParamEx)

и еще добавить проверку на время т.к новых свечек может и не быть вовсе, даже если торги идут.
Последний индекс
 
валерий,
Сообщить message в какой момент? В момент закрытия текущей свечи? если так то его отловить можно только после появления новой, или окончания торгов.
Соответственно, нужно добавить условие на проверку появления новой свеч (изменится Size()) и статус торгов (через getParamEx)
Последний индекс
 
Цитата
валерий написал:
Нужно чтобы условие Size() == index сработало только один раз, а не много раз.

Условие будет срабатывать при каждой новой свечке и это правильно. т.к. меняется количество свечек и при изменении текущей.
Если Вам нужно чтобы оно не срабатывало несколько раз при изменении текущей свечки (а не добавлении новой), добавьте еще одно условие проверку.
Что именно проверять Вам решать т.к. нам не известно что Вам требуется.
Последний индекс
 
валерий,
Да, ведь до добавления, номер свечки не равен текущему количеству свечек.
Вопрос то в чем?
Последний индекс
 
Цитата
валерий написал:
Какой индекс последний?
Текущий и есть последний, это же очевидно.
В будущее еще не научились смотреть.
Последний индекс
 
И они совпадают :cool:
Код
Settings = {
  Name = "TEST",
  line = {{Name  = 'Size',Type = TYPE_POINT,Color = RGB(255, 0, 0),Width=3},
        {Name  = 'index',Type = TYPE_LINE,Color = RGB(0, 255, 0),Width=1}}
}
function Init()
  return #Settings.line
end
function OnCalculate(index)
  return Size(), index
end


Что не так?
Последний индекс
 
валерий,
Значит Size() не обновился.
Нужно смотреть по коду что не так
Последний индекс
 
валерий,

Последнюю на данный момент свечку, можно узнать сравнив номер текущей с результатом функции Size()
Функции CreateWindow() и InsertRow()
 
Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
ParamRequest и CreateDataSource не заказывают получение параметров Таблицы текущих торгов
 
Старатель,

И об этом сказано в документации:
Цитата
Для корректной работы функции включите в настройках Рабочего места QUIK признак получения данных «Исходя из настроек открытых пользователем таблиц» (меню Система / Настройки / Основные настройки..., раздел «Программа» / «Получение данных»).
ParamRequest и CreateDataSource не заказывают получение параметров Таблицы текущих торгов
 
Старатель,
Что значит "стандартная"? если настройка есть в интерфейсе она уже стандартная в любом случае.
Если вопрос про значение "по умолчанию", то как-раз стоит "исходя из настроек..."
Функции CreateWindow() и InsertRow()
 
Цитата
Andrei2016 написал:
Стандартная практика в программировании - это формирование образа данных в памяти и лишь затем отображение содержимого.
Но строки вполне честно могут быть добавлены и после появления таблицы. Собственно оно так и работает (и не только в Lua таблицах)

1) есть сравнительный анализ?
2) не вижу нарушений логики.
ParamRequest и CreateDataSource не заказывают получение параметров Таблицы текущих торгов
 
Старатель,

Согласно документации, для корректной работы нужна настройка "Исходя из настроек открытых пользователем таблиц"
Как получить список инструментов из таблицы текущих параметров
 
Сергей Дворцов,
Получить список именно из таблицы нельзя.
Т.к. QLua работает с хранилищем данных, а не напрямую с таблицами в интерфейсе.
Т.е. Вы можете получить список доступных Вам инструментов и там будут вообще все доступные инструменты, а не только те которые в таблице.
Список инструментов можно получить функцией getClassSecurities
Присвоим идентификатор графику программно!
 
Цитата
medvedoff написал:
Двойкуу вам за поддержку Сергей Горохов, в последней версии есть опция идентификатора для пользовательский графиков

Читайте внимательней. Речь про то чтобы данный идентификатор заполнить через Lua, а то что он существует и так всем известно, ничего нового Вы не сказали.
Функции CreateWindow() и InsertRow()
 
Здравствуйте,
Такова текущая реализация.
Уточните зачем Вам это? Какая задача решается?
Как отслеживать появление новых версий квика?
 
Цитата
Sergey Denegin написал:
Да "Новости" но не в разделе же "О компании". Вы бы его еще назвали "О нас" и тогда точно никто не найдет.

Новости есть и на главной странице.
Получение данных свечи по дате и времени
 
Здравствуйте,
На Lua такой функции нет (есть только на QPILE).
На Lua можно найти свечку только циклом по всем свечкам, до нахождения нужной.
Загадочное явление
 
Здравствуйте,
Не воспроизводится.
Приведите полный текст кода.
Как отслеживать появление новых версий квика?
 
Цитата
Sergey Denegin написал:
Цитата
Sergey Gorokhov   написал:
О компании -> Новости -> Подписаться
Вчитался............ Это ж как пользователь должен догадаться, что в разделе "О компании - новости" будут новости о новых версиях?

Ну да в разделе Новости, находятся новости. Для этого раздел и назван "Новости"
Таблица обезличенных сделок
 
Космонавт,
Чтобы данные поступали их надо заказать.
Делается это либо путем открытия таблицы, либо через CreateDataSource
Сортировка таблицы по возрастанию
 
К слову, вопрос уже подымался на нашем форуме
https://forum.quik.ru/messages/forum10/message11263/topic1246/#message11263
Сортировка таблицы по возрастанию
 
bulat,
Ваш вопрос совершенно никак не касается Lua. Это чистой воды логика программирования.
Алгоритмов сортировки двумерных массивов очень много, и все они легко ищутся в интернете.
Достаточно найти любой из них и перенести на синтаксис Lua. В этом месте при возникновении вопросов готовы оказать содействие.
Искать по фразе "сортировка двумерного массива"
неужели OnParam самый быстрый?
 
Цитата
Николай Камынин написал:
Никто не мешает брокеру создать специально задержку данных, поступающих на ваш комп и показывать Вам вчерашний день.

Со стороны QUIK нет такой настройки, которая бы позволила внести искусственную задержку.
Как отслеживать появление новых версий квика?
 
Sergey Denegin,
Подписаться на новости, как не удивительно, можно в разделе Новости.

arqatech.com -> О компании -> Новости -> Подписаться
Вызов getDataSourceInfo() из Init() в Lua индикаторах
 
Цитата
Алексей написал:
Это то понятно, что решить задачу можно, отлавливая вызов для первой свечки, но это лишние накладные расходы, пускай и мизерные. А на медленных машинках, для процессов, исполняемых интерпретатором, если кто-то решит повесить много индикаторов, в каждом из которых по несколько линий ...:),

1) То что проверка первой свечи приводит к "накладным расходам" не более чем просто слова.
2) Гипотетическое создание Init2 совершенно никак не позволит изменить ситуацию. И даже если ее добавить, это будет ровно тоже самое что проверка первой свечи.
3) Решение в виде проверки первой свечи, в полной мере решает задачу и аргументов которые не позволят ее решить указанным способом, Вы так и не привели.
Торговля в двух и более терминалах на LUA
 
Здравствуйте,
Цитата
SkeelS написал:
Подскажите пожалуйста можно ли одним скриптом на LUA торговать в двух терминалах?
Да можно. Но это уже будет не один скрипт, а две копии одного скрипта.

Цитата
SkeelS написал:
Например есть стратегия, которая в зависимости от событий на одном счету - должно что-то происходить на втором.

Если Вам нужно взаимодействие между скриптами, это уже другой вопрос.
Вариантов решения много, самый простой чтение/запись в какой-либо файл. Один скрипт пишет в файл, второй читает.
Еще есть вариант через пайпы. Работает примерно также как через файл.
Некоторые также умудряются использовать функцию PrintDbgStr.
Еще есть вариант через отдельную DLL (можно найти на сайте одного известного участника форума), которая подключается к обоим скриптам и позволяет обмениваться информацией.

Касаемо примеров, у нас их нет. Они есть в интернете.
Как отслеживать появление новых версий квика?
 
Здравствуйте,
На главном сайте для этого есть рассылка новостей, в том числе и по обновлениям.
Фильтра нет, однако любой почтовый агент с легкостью с этим справится.
Описания полей, Не хватает данных в справочнике
 
Цитата
Николай Камынин написал:
информацию можно получить по любому полю из любой таблице,
используя экспорт DDE в excel,
включив "С заголовками столбцов" и "Формальные заголовки"

Это работает только для таблицы Params, для остальных совпадение не гарантируется.
Время расчета цикла
 
Дмитрий,

Да теперь понятно, спасибо за уточнение.
Отвечая на вопрос, нет особой разницы по скорости между ними.
Страницы: Пред. 1 ... 38 39 40 41 42 43 44 45 46 47 48 ... 78 След.
Наверх