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

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

Страницы: Пред. 1 2 3 4 5 6 След.
Подкиньте идею
 
Цитата
s_mike@rambler.ru написал:
Передайте один раз через файл номер окна. Имея номер окна, можно писать в него из любых скриптов.
Вы имеете ввиду идентификатор таблицы создаваемый CreateTable() ? Логично, но все равно через файл (
Подкиньте идею
 
Привет всем.

У меня работает несколько роботов с выводом данных каждый в свою таблицу.
Возникла необходимость сделать сводную таблицу для всех.
Пока не понимаю как передавать данные из скрипта в скрипт.  Вернее одно решение есть - отдавать через сохраняемый и затем читаемый файл, но во первых это криво, во вторых медленно.
Буду благодарен за рабочую идею.
Сохранение параметров некоторых окон
 
Спасибо, со стаканом подойдет.
Сохранение параметров некоторых окон
 
Здравствуйте!
При изменении шрифтов в настройках Квика естественно приходится корректировать ширину столбцов и размеры таблиц.
Особых проблем в большинстве таблиц это не создает.  Кроме стакана. Т. к. отсутствует возможность сохранить параметры окна и каждый раз при вызове стакана из таблицы текущих торгов стакан является в корявом виде и размере по умолчанию. Прошу зарегистрировать возможность изменять и сохранять размеры и ширину столбцов по умолчанию.

Кроме того прошу аналогично дать возможность изменять размер окна "Доступные скрипты"

Спасибо.
Lua-таблицы. Интерфейс. Управление свойствами lua-таблиц., Как тонко настроить lua-таблицу? Механизмы взаимодействия пользователя с lua-таблицами.
 
Цитата
Roman Azarov написал:
Kolossi, здравствуйте!

Спасибо, что уточнили.
Ваше пожелание зарегистрировано, мы постараемся его рассмотреть. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
Спасибо Роман за то, что зарегистрировали это в третий раз. Однако это не предложение, а уведомление о баге в работе терминала Квик. Хотя доработку функций в плане привязки к вкладкам можно рассмотреть как предложение.
Lua-таблицы. Интерфейс. Управление свойствами lua-таблиц., Как тонко настроить lua-таблицу? Механизмы взаимодействия пользователя с lua-таблицами.
 
Цитата
Roman Azarov написал:
Kolossi, добрый день!

Правильно Вас поняли, речь идет о возможности закрепить окно на вкладке?
Программно это выполнить нельзя, только руками, через пункт меню "Окна/Закрепить окно".
Нет!
Если открыть несколько таблиц в разных вкладках, а потом не останавливая скриптов выйти из Квика, то при следующем входе все таблицы будут открыты в той вкладке, которая была активна при выходе из Квика.
Второй год пытаюсь тут доказать разработчикам, что это баг.

Ну а по-хорошему должна быть возможность прописать имя вкладки при создании таблицы.  
Lua-таблицы. Интерфейс. Управление свойствами lua-таблиц., Как тонко настроить lua-таблицу? Механизмы взаимодействия пользователя с lua-таблицами.
 
16.  ...  или хотя бы к той, в которой она была открыта.
Lua-таблицы. Интерфейс. Управление свойствами lua-таблиц., Как тонко настроить lua-таблицу? Механизмы взаимодействия пользователя с lua-таблицами.
 
 Я бы добавил:

16. Как привязать таблицу к конкретной вкладке?
Статус сессии.
 
Цитата
Sergey Gorokhov написал:
Kolossi,
Да Вы правы, предложенный вариант с tradingphase не решает поставленной задачи.
Согласно  биржевому протоколу , в указанном параметре tradingphase нет отдельного признака для вечерней сессии, а значит и в QUIK Вы его никак увидеть не сможете.
Ладно Сергей, замнем. Вариантов решения задачи достаточно, однако создание полу-инвалидных параметров с одинаковыми  возвращаемыми кодами для разных торговых фаз и статусов разработчикам чести не делает.  
Статус сессии.
 
Цитата
nikolz написал:
используйте сервер точного времени и не будете месяцами ничего согласовывать.
Биржа тоже его использует.
погрешность будет не более 10 мс. Это меньше, чем задержка интернета.
Ну я бы в жизни не догадался.
А ваш сервер точного времени точно учитывает перенос торговых дней на ММВБ или нужно еще смотреть "сервер точного торгового календаря" ? ))
Статус сессии.
 
Цитата
Sergey Gorokhov написал:
Kolossi,
для этого есть параметр tradingphase - Биржевой статус торговой сессии
В итоге я месяц решал с брокером проблему включения этого параметра по вашей рекомендации что бы убедиться что он просто дублирует tradingstatus.
--
09:50:03 Изменение фазы: 0==>10.0(АО). Статус 3(открытие)
09:59:43 Изменение фазы: 10==>0.0(Недоступно). Статус 0(закрыта)
10:00:04 Изменение фазы: 0==>5.0(Открыта). Статус 1(открыта)
18:40:00 Изменение фазы: 5==>0.0(Недоступно). Статус 0(закрыта)
18:40:05 Изменение фазы: 0==>6.0(АЗ). Статус 4(аукцион)
18:45:26 Изменение фазы: 6==>9.0(ЦАЗ). Статус 5(ЦАЗ)
18:50:03 Изменение фазы: 9==>0.0(Недоступно). Статус 0(закрыта)
19:00:25 Изменение фазы: 0==>10.0(АО). Статус 3(открытие)
19:04:36 Изменение фазы: 10==>0.0(Недоступно). Статус 0(закрыта)
19:05:00 Изменение фазы: 0==>5.0(Открыта). Статус 1(открыта)
23:50:02 Изменение фазы: 5==>0.0(Недоступно). Статус 0(закрыта)
--
 Я прошу больше от меня не отмахиваться, а рассмотреть мои предложения по существу
Перестали скачиваться тиковые данные
 
Да тут слип только для отладки, что бы message() слишком часто не мелькал.
Перестали скачиваться тиковые данные
 
Перезапуск терминала не помогал. Скрипт получил данные только после того как я вручную толкнул кнопку "Получить заново данные по обезличенным сделкам" в меню "Заказ данных".
Перестали скачиваться тиковые данные
 
С "INTERVAL_D1" все работает как надо.
Перестали скачиваться тиковые данные
 
Сегодня обновил квик до версии 8.8.4.3 , перестали скачиваться тиковые данные.

Скрипт
--
local ldsa={}
local error_desc=""
ldsa,error_desc = CreateDataSource(p_classcode, p_seccode, INTERVAL_TICK)
while not ldsa or ldsa:Size()==0 do
sleep(10000)
message("ожидание данных")
if error_desc ~= nil and error_desc ~= "" then
message(p_classcode.."/"..p_seccode.."/".."Source2 error ==>" .. error_desc)
end
end
message("получено "..tostring(ldsa:Size()))
--
висит в "ожидание данных".

Что за .....? Что-то добавили в настройки?
Статус сессии.
 
Цитата
nikolz написал:
полагаю что потеряли вы не по причине что забыли перевести время.
это лишь вариант самоуспокоения.
Если Вы включили комп позже начала сессии, то никакие сигналы Вам не помогут.
и статус сессии здесь не причем.
Конечно решать Вам, я лишь изложил свой опыт решения данной проблемы
Напрасно полагаете. И опыт ваш не пригодится. И комп я вообще не выключаю т.к. часто уезжаю на несколько недель оставляя робота работающим. В общем спасибо за заботу, вопрос был об уточнении статуса сессии.
Статус сессии.
 
Цитата
nikolz написал:
Есть очень простое решения проблемы статуса сессии.
Делаем раз - синхронизируем компьютер по серверу времени.  Это позволяет нам синхронизироваться с временем биржи с погрешностью не более 0.01 сек
Делаем два - пишем константы начала и конца сессий
Делаем три - где надо и не надо просто сравниваем текущее время с константами и решаем какое сейчас состояние сессии без каких либо кодов с биржи
------------------------
Самое смешное в том,  что биржа(брокер)  свои коды формируют точно так же.
Как для автомобиля - крутить рукоятку если стартер не заводит автомобиль - простое решение ). Я перешел к пользованию статусом сессии именно потому, что однажды, пользуясь простым решением, забыл перевести сезонное время (я живу в стране где его надо переводить) и потерял прилично денег на этом.
Статус сессии.
 
Сергей , не хотите дублировать, хотя бы указывайте где смотреть.
Если я пишу скрипты на Lua и пользуюсь вашей документацией для этого каким чудом я должен догадаться, что параметры к getParamEx мне нужно искать в документации к QPILE которым я вообще не пользуюсь?
Статус сессии.
 
...
local st=getParamEx(p_classcode,p_seccode, "TRADINGSTATUS").param_value
local pa=getParamEx(p_classcode,p_seccode, "TRADINGPHASE").param_value
local pb=getParamEx(p_classcode,p_seccode, "TRADINGPHASE").param_image
...
st=1
pa=0
pb=""

Ладно, "брокер не настроил".

Возвращаемся к моим просьбам по статусу
Статус сессии.
 
Что то я не нашел параметра TRADINGPHASE у GetParamEx. Откуда это вообще?
Приведенный мной протокол был сделан по параметру TRADINGSTATUS.
Статус сессии.
 
Спасибо , сейчас поставлю протокол на этот параметр.
Статус сессии.
 
Господа разработчики, в связи с появлением на ММВБ вечерней сессии есть пара замечаний и предложений по теме.

Вот протокол изменения статуса сессии в течении дня:
--
09:50:01    Ststus 0==>3 (открытие)
09:59:40    Ststus 3==>0 (закрыта)
10:00:00    Ststus 0==>1 (открыта)
18:39:59    Ststus 1==>0 (закрыта)
18:40:05    Ststus 0==>4 (аукцион)
18:45:20    Ststus 4==>5 (ЦАЗ)
18:50:01    Ststus 5==>0 (закрыта)
19:00:01    Ststus 0==>3 (открытие)
19:04:31    Ststus 3==>0 (закрыта)
19:05:00    Ststus 0==>1 (открыта)
23:50:00    Status 1==>0 (закрыта)
--
Предложения:
1. Сделать разными статусы открытия дневной и вечерней сессии с 9-50-00 до 9-59-40 и с 19-00-00 до 19-04-30.
   Сейчас оба периода имеют одинаковый статус 3.

2. Периоды с 09-59-40 до 10-00-00 и с 19-04-30 до 19-05-00 имеют статус сессии 0 (закрыта). Однако в это время сервером обрабатываются встречные заявки выставленные в период открытия сессии. Логично было бы этим периодам присвоить отдельный статус.

Спасибо за понимание.
Запуск и остановка скрипта в заданное время, Код запуска в Lua в необходимое время
 
По ряду причин лучше проверять не время, а статус сессии.
Скрипт индикатора
 
Разобрался сам, всем спасибо.

Индикатор CO.lua из архива arqatech.com. Афтар решил, что при передаче параметров в функцию присвоить имя ds локальной таблице это прикольно и оригинально. @#$  
Скрипт индикатора
 
Добрый день.

В тексте индикатора встретил выражение
x=ds[I]
подскажите что это и почему оно NUMERIC?

Если это база свечей текущего таймфрейма, то по идее такое должно возвращать nil.
Снова CreateDataSource
 
понятно, спасибо
Снова CreateDataSource
 
Добрый день,

подскажите пожалуйста есть ли возможность что бы CreateDataSource(classcode, seccode, INTERVAL_TICK) тащила с сервера только данные текущей сессии? А то это действо занимает около пяти минут.
Заодно как узнать, что данные получены полностью?
Изменение фильтра из скрипта
 
Или в случае вызова CreateDataSource с параметром INTERVAL_TICK по нужному инструменту
и подписки через SetEmptyCallback  таблица "all_trades" будет заполнена и функция getItem("all_trades",index) отработает как и в случае заказа через меню? Так?
Изменение фильтра из скрипта
 
Что-то никак не могу сообразить. Если я из таблицы обезличенных сделок могу получить набор битовых флагов и из них выбрать признак сделки покупка/продажа, то как я могу получить такой признак из тиковой базы данных ds: где только OHLCVT ?
 
Изменение фильтра из скрипта
 
бл. Lingvo решил поучаствовать в разговоре :)
Изменение фильтра из скрипта
 
Наверное то, что надо. Спасибо Сергей!
Поковыряю, потом наверное еще вопросы будут. будут
см. быть
Открыть в ABBYY Lingvo English-Russian
Изменение фильтра из скрипта
 
Здравствуйте!

Подскажите пожалуйста есть ли какая-либо возможность изменять из скрипта параметры заказа данных?
Конкретно интересует возможность изменять фильтр в заказе потока обезличенных сделок.  
Ошибка при использовании оператора and
 
Самая распространённая - это когда отвлекаясь пишут в конструкции end вместо and )  
Quik 8.5 не освобождается память
 
Цитата
Andrey Bezrukov написал:
Здравствуйте, Андрей.

Действительно есть ошибка работы SetUpdateCallback приводящая к остановке работы garbage collector. Что в свою очередь приводит к повышенному потреблению RAM.

Мы исправим ошибку в ближайшем обновлении ПО.

Приносим извинения за доставленные неудобства.
О! А я на Papallels матом обижался за поджор памяти. Давайте ребята пачте поскорее.
Мониторинг работы скриптов с помощью телефона, Технология удаленного контроля алгоритмической торговли
 
Зачем мне регулярно смотреть почту, когда телефон при приходе сообщения выдает звуковой сигнал?

 Ладно, не буду мешать поиску сложных решений :)
Мониторинг работы скриптов с помощью телефона, Технология удаленного контроля алгоритмической торговли
 
Почему-то у меня все просто, наверное что-то не так делаю )

Робот сваливает логи в заданную папку, а Automator отправляет их мне по e-mail по расписанию.
Сообщения, которые кладутся в аварийную папку, Automator отправляет немедленно.
CalcBuySell, Долгая работа функции
 
Цитата
Старатель написал:
Среднее время выполнения функции CalcBuySell 6-7 мс. Как-то долго.
Может, можно что-то подкрутить в настройках?
Можно обойтись без нее.
вот тут нашли как: https://quik2dde.ru/viewtopic.php?id=159
SetSelectedRow()
 
Всем добрый день!

Подскажите пожалуйста способы обхода бага:
1. Создаю таблицу с идентификатором kt_id и размером окна  вмещающем n строк
2 Поштучно добавляю строки при помощи InsertRow(kt_id,k).
3. В итоге добавлено строк больше n и в окне начинает работать прокрутка с установкой бегунка прокрутки вниз так, что видна последняя строка.
4. Выделяю первую строку SetSelectedRow(kt_id,1). Строка выделяется, однако ее не видно тк она остается за пределами окна.

 Как мне средствами Lua поднять этот бегунок и увидеть в окне первую строку?
Мышь окочурилась :)
 
Цитата
Старатель написал:
Против нередактируемого контекстного меню (как для ячеек так и для заголовков). Оно мешает работе событий QTABLE_RBUTTON...
https://forum.quik.ru/messages/forum10/message42277/topic4921/#message42277
Дак и я об этом же.  Правда в заголовке оно мне не мешает абсолютно, а вот в ячейке данных безусловно баг.
Мышь окочурилась :)
 
Вы категорически против чего? Против того что бы функция MouseClick нормально работала или против того что бы сортировку через заголовок столбца не трогали?
Мышь окочурилась :)
 
 Спасибо!
Мышь окочурилась :)
 
пожелание в том, что бы убрать вывод меню сортировки из ячейки данных и оставить только вывод меню сортировки в заголовке столбца.
Мышь окочурилась :)
 
Получается что надо очень быстро второй раз нажимать на клавишу. Потому что у меня сразу на первый клик выводится меню, а второй уже никому не интересен. Не успеваю :). Возможно что это только моя проблема связанная с тем, что у меня Винда стоит на Parallels.
Ладно, обойдусь колесом.
Все таки прошу рассмотреть необходимость вывода меню на ячейке данных при том, что меню сортировки так же выводится при клике на заголовок столбца, а ячейка данных задействована для обработки пользовательскиx функций qLua.
Мышь окочурилась :)
 
Заменил QTABLE_RBUTTONDBLCLK на QTABLE_MBUTTONDBLCLK - при двойном клике на колесо все работает. Придется так.
Мышь окочурилась :)
 
А меню сортировки при нажатии правой клавиши мыши на ячейку с данными у вас выводится?
Мышь окочурилась :)
 
Да, приношу извинения за свою опечатку.
Проблемы изначально с QTABLE_RBUTTONDBLCLK
Мышь окочурилась :)
 
Добрый день Сергей!

Версия 8.3.2.4

Кусок тестового кода функции:

function MouseClick(t_id, msg, par1, par2)
  ....
  if msg==QTABLE_LBUTTONDBLCLK and par1==1 and par2==2 then
         message("левый батон")
   end

    if msg==QTABLE_RBUTTONDBLCLK and par1==1 and par2==2 then
        message("правый батон")
   end
end

При двойном клике на ячейку данных левой клавишей выходит "левый батон".
При двойном клике правой клавишей выходит меню:
--------
Сортировать по "<имя столбца>"
Сортировать по умолчанию
--------
а мессаджа нет.

Раз сто покликал и каким то чудом один раз получил и меню и мессадж одновременно.
У меня к вам вопрос: меню сортировки при клике на ячейку данных, если вы его так же сделали при клике на заголовок столбца?
Мышь окочурилась :)
 
В последних версиях в терминал внесены значительные улучшения. Улучшения пишу честно, без скобок.
Например если кликнуть правой клавишей мыши по заголовку  пользовательской таблицы, предлагается сортировка столбца.
Точно так же сортировка предлагается если таким образом кликнуть и в ячейке с данными.
Великолепно! Только теперь при двойном клике по ячейке данных функция MouseClick(...) перестала возвращать QTABLE_LBUTTONDBLCLK.
А надо :(.  Вполне хватило бы оформить вызов сортировки только кликом на заголовок. Что делать?
пожелание - сделать кнопки в панели управления для LUA скриптов, или хотя бы горячие клавиши
 
Как вы думаете, если, вдруг, разработчики сделают кнопки запуска скрипта, в каком окне он запустится ? :)

В который раз прошу сделать в QLua возможность привязывать скрипт или пользовательские таблицы к конкретной вкладке.
Таблица с помощью Qlua, Таблица с помощью Qlua
 
Спасибо Егор.

Вдогонку зарегистрируйте пожалуйста еще необходимость позиционирования координат таблицы
функцией SetWindowPos() не относительно экрана, а относительно текущего окна Quik.
 Думаю всем понятно почему.
Страницы: Пред. 1 2 3 4 5 6 След.
Наверх