Старатель (Автор тем)

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

Страницы: 1 2 3 След.
Подсказка при наведении курсора на название колонки в QLUA-таблице
 
Добрый день.
Сделать возможным в QLUA-таблице создавать подсказки к заголовкам колонок, как в таблице «Клиентский портфель»
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] Не отображается подсказка параметров свечи на графике вверху слева
 
QUIK 9.2.1.4
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] CreateDataSource не заказывает обезличенные сделки
 
После ручного удаления бумаги из списка получения информации по обезличенным сделкам невозможно заказать сделки по этой бумаге через скрипт.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Утечка памяти при использовании SetUpdateCallback
 
Код
local class, sec_code = "SPBFUT", "SiU1"

local run = true
function OnStop()
  run = nil
end

function main()
  local ds = assert(CreateDataSource(class, sec_code, 1))
  ds:SetUpdateCallback(function (index)
    if index < ds:Size() then return end
    for i = 1, index do
      ds:T(i)
      ds:O(i)
      ds:H(i)
      ds:L(i)
      ds:C(i)
      ds:V(i)
    end
  end)
  while run do sleep(1000) end
end

За несколько минут объём занимаемой скриптом памяти вырастает с 300 Кб до Гигабайтов.

Если график раннее не заказывался и убрать строку
Код
if index < ds:Size() then return end
, то сразу при запуске будет 2Гб.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Инструкция по работе с условными (стоп–) заявками, Обсуждение
 
Добрый день.

Вы бы в инструкцию включили пример, когда в результате срабатывания Тейк–профита в ТС может выставиться лимитированная заявка с ценой на 954 п. ниже максимума, при том, что отступ+спред = 8.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] Пляшущие графики
 
QUIK Junior 9.1.3.11
После смены сессии открыл дневной график:

Переключился на другой таймфрейм и снова на дневной:
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
События на закрытие QLua-таблицы
 
1. https://forum.quik.ru/messages/forum10/message57044/topic475/#message57044
В целях корректной обработки события закрытия таблицы предлагаю вызывать OnClose, когда только дана команда главному окну терминала на закрытие (нажат крестик, Alt+F4 или "Система -> Выход") до QTABLE_CLOSE.
Тогда OnClose можно будет использовать, чтобы определить, что таблица закрыта не пользователем.

2. https://forum.quik.ru/messages/forum10/message22786/topic2591/#message22786
В аналогичных целях предлагается добавить колбек, вызываемый до QTABLE_CLOSE при запуске процедуры замены инструментов с истекающим сроком обращения

Либо предложите свой вариант.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] Контекстное меню в стакане при включенном режиме drag-and-drop
 
Когда стакан не активен, то клик правой клавишей мыши по заявке в стакане не вызывает контекстное меню.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] QUIK самовольно меняет код клиента
 
К логину было подключено два кода клиента. Скрипт работал по обоим нормально.
Потом один код был отключен брокером или пользователь зашел с логина, где подключен только один клиент, не суть.
В результате вместо того, чтобы выдать ошибку, что у пользователя нет прав для работы с отключенным кодом клиента, QUIK стал молча подменять его на другой.
Т.е., скрипт отправляет транзакцию с CLIENT_CODE = client2//brokerref, а заявка приходит с client_code = client1, brokerref = client1//client2//brokerref
Это косяк.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Беззвучный режим
 
Что такое "Беззвучный режим" в настройках "Звуки"?
При установленной галке "Беззвучный режим" звуковые сигналы продолжают воспроизводиться.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] CreateDataSource выдает успех, если реальная подписка не осуществлена
 
Подробности здесь:
https://forum.quik.ru/messages/forum10/message54698/topic6407/#message54698
https://forum.quik.ru/messages/forum10/message54707/topic6407/#message54707
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] getFuturesHolding: ошибка в работе
 
По мотивам этой темы.
Скрипт 1
Скрытый текст

Скрипт 2
Скрытый текст

Запускаем скрипт 1 и несколько скриптов 2 по разным бумагам. Любуемся результатом.

Возможно, другие функции getЧегоТоТам также работают нестабильно. Проверяйте сами.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] Фильтры инструментов и параметров
 
Если в настройках получения параметров по инструментам вручную задать классы/инструменты,

то при построении графиков будут доступны только эти выбранные классы/инструменты:
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Какой формат записи ячеек с типом QTABLE_DATETIME_TYPE, чтобы работали сортировка и фильтры?
 
Сабж
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] Пропадает текст в таблицах
 
При задании цвета для всей таблицы, если один из цветов указан QTABLE_DEFAULT_COLOR, текст во всех ячейках пропадает.
Примеры:
Код
SetColor(id, QTABLE_NO_INDEX, QTABLE_NO_INDEX, QTABLE_DEFAULT_COLOR, QTABLE_DEFAULT_COLOR, QTABLE_DEFAULT_COLOR, QTABLE_DEFAULT_COLOR)
SetColor(id, QTABLE_NO_INDEX, QTABLE_NO_INDEX, QTABLE_DEFAULT_COLOR, 0, 0, 0)
SetColor(id, QTABLE_NO_INDEX, QTABLE_NO_INDEX, 0xFFFFFF, 0, 0xFFFFFF, QTABLE_DEFAULT_COLOR)
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Гарантийное обеспечение в окне ввода заявки, Окно ввода заявок , Объем ГО
 
У кого-нибудь показывает Объем ГО в окне ввода заявки календарных спрэдов?
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
CreateDataSource возвращает неверные данные
 
Добрый день.

Иногда CreateDataSource возвращает неверные данные.
Демонстрационный скрипт:
Скрытый текст

Графики должны быть закрыты. Можно запустить несколько скриптов с разными инструментами.
Через некоторое время будет сообщение вида:
Скрытый текст

Возможно, большое количество свечей повышает вероятность ошибки. Но это не точно.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] Криво работает поиск, Найти далее [F3]
 
QUIK 8.12.0.41
Если в таблице несколько строк, удовлетворяющих параметрам поиска, то по F3 будут показываться значения только в пределах одной строки.
В 8.1 поиск осуществлялся по всем строкам таблицы.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
У снятой заявки не заполняется поле canceled_uid, если заявка снята вскоре после выставления
 
Пример
Скрытый текст
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] Сортировка в таблицах
 

Вроде как значок сортировки показывает увеличение, а по факту - убывание.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
FAQ: Оптимизация производительности клиентского места QUIK, Обсуждение
 
https://forum.quik.ru/forum1/topic1539/
Цитата
Заказ полного набора всех сделок происходит все зависимости от установленных в таблице обезличенных сделок фильтров или открытого тикового графика по конкретному инструменту.
Прошу техподдержку прокомментировать, что сие значит.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Доступные скрипты, Некорректное поведение в режиме "Показывать на всех вкладках"
 
Видео
Описание:
Две вкладки, на каждой открыто по окну, в данном случае ТТТ, а также окно "Доступные скрипты", которое перекрывается первым окном. "Доступные скрипты" делаю "Показывать на всех вкладках".
Когда активирую окно "Доступные скрипты" на одной вкладке, то на другой положение (перекрывание) окон сохраняется. Но когда запускаю Lua скрипт с созданием окна, этот порядок нарушается.
На видео окна на Вкладке 1 расположил в следующем порядке (сверху вниз): Lua-окно, ТТТ, Доступные скрипты.
Далее переключился на вкладку 2 и активировал окно "Доступные скрипты". Возвращаюсь на вкладку 1, порядок поменялся: Lua-окно, Доступные скрипты, ТТТ.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Highlight с дробным timeout, не работает, но возвращает true
 
QUIK 8.9
Если задано дробное значение timeout, то Highlight не работает, но возвращает true
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Снятие/перемещение заявок в стакане
 
Добрый день.

1. Перемещать мышкой заявку в стакане транзакцией "Переставить заявки" ("Изменение заявки"), если доступен данный тип транзакции для инструмента.
Если по одной цене стоят несколько заявок, то применять операцию для последней выставленной заявки (для двух последних на FORTS).

2. Снимать заявки (панель снятия заявок по условию в стакане) транзакцией "Удалить все заявки по условию", если доступна.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Кривые шибки в QLua
 
Здесь будут публиковаться кривые ошибки, возникающие, очевидно, из-за двухпоточной схемы работы QLua.
Некоторые ошибки указаны здесь: Потокобезопасные функции в Lua 5.3
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Зависание QUIK
 
Добрый день.

QUIK 8.8.4.3. Стандартная схема оформления.
Иногда после нескольких дней работы зависает. При этом загрузка ЦП процессом 0
Сначала грешил на потокобезопасные функции. Но анализ логов показывает, что зависании происходит вне потокобезопасных функций (но это не точно ))
Можно ли по стеку определить последнюю вызванную QLua функцию?
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
SetCell
 
SetCell стал ругаться false на такую конструкцию для строковых ячеек:
Код
SetCell(id, row, col, tostring(value), tonumber(value) or 0)
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Потокобезопасные функции в Lua 5.3
 
Скрипт 1:
Скрытый текст

Скрипт 2:
Скрытый текст

При запущенных обоих скриптах изредка в строке
Код
while #AllTrades > 0 do
возникает странная ошибка:
Цитата
attempt to compare number with function
Для воспроизведения можно Получить заново данные по обезличенным сделкам.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Получение данных из таблиц при автостарте
 
Добрый день.

Есть скрипт, который стартует автоматически при запуске QUIK. В самом начале идёт поиск заданного торгового счета:
Код
function main()
  local Index = SearchItems("trade_accounts", 0, getNumberOf("trade_accounts")-1, function(trdaccid) return trdaccid == Account end, "trdaccid")
  ...
end

В настройках стоит "Очищать данные после смены даты: На сервере (при установлении связи)". Т.е., при первичном старте скрипт берёт данные из кэша.
Запуск QUIK происходит долго, открыто несколько тиковых графиков и индикаторов.
Но обычно скрипт работает нормально. Но сегодня SearchItems не нашла торговый счёт и вернула nil. Повторный запуск скрипта вручную (до подключения к серверу) отработал корректно.

По какой причине данный код мог дать сбой?
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
ParamRequest и getParamEx2, Как получить актуальные данные через getParamEx2?
 
Начну из далека.
При заказе таблицы котировок используем
Код
Subscribe_Level_II_Quotes(class, sec)  -- Для заказа котировок с сервера
getQuoteLevel2(class, sec)  -- Для получения котировок
Мы либо получаем актуальные котировки, если стакан открыт, либо незаполненную таблицу, если стакан закрыт или котировки ещё не подгрузились с сервера.
Если закрыть стакан (отменить заказ на получение котировок с сервера), то getQuoteLevel2 вернёт незаполненную таблицу.
Т.о., мы понимаем, что, если getQuoteLevel2 вернул данные, то они актуальны.
Использование простое:
Код
function main()
  Subscribe_Level_II_Quotes(class, sec)
  -- Получаем актуальные котировки, если они есть:
  Quotes = getQuoteLevel2(class, sec)
end
-- Дальнейшие изменения в стакане можно ловить в OnQuote:
function OnQuote(class, sec)
  Quotes = getQuoteLevel2(class, sec)
end


С getParamEx2 намного сложнее. Если getParamEx2 вернул данные, то они актуальные или старые? Может, пять часов назад их заказывали, потом подписку отменили, а данные остались в кеше.
Если же брать парамтры только в OnParam, то по неликвидному инструменту их можно ждать бесконечно долго.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] QUIK вешается при использовании DestroyTable из main
 
Ошибка плавающая. Причину установить не удалось.
Но замечено, что виснет с большей вероятностью, если одновременно с DestroyTable происходит какое-то событие.
Для воспроизведения написал следующий скрипт:
Код
function main()
  ID = {}
  for i = 1, 20 do
    ID[i] = AllocTable()
    CreateWindow(ID[i])
    SetTableNotificationCallback(ID[i], function(id, event)
      if event == QTABLE_CLOSE then
        run = false
      end
    end)
  end
  run = true
  while run do sleep(1) end
  for _, id in pairs(ID) do
    DestroyTable(id)
  end
end
Использование: Запустить скрипт без подключения к серверу. Чтобы посыпались события, установить соединение с сервером, и сразу закрыть одно из окон скрипта.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] При подключении под новым пользователем на графиках остаются сделки и заявки от предыдущего пользователя
 
Если залогиниться в QUIK под другим пользователем (не закрывая программу), то на открытых графиках остаются треугольники от сделок и линии заявок от предыдущего пользователя.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Доступные скрипты, Значки для скриптов с ошибками
 
Сделать другие значки для скриптов:
1) остановившихся в результате ошибки;
2) в которых возникла ошибка, но скрипт продолжил работу (ошибка в колбеке)
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Lua: изменить название колонки
 
Сделать функцию для изменения названий колонок в QLua-таблицах.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Появляется лишняя строка в таблице
 
Демонстрационный скрипт:
Код
function OnStop()
  run = nil
  SetCell(id, 1, 1, string.format('Size: %u', GetTableSize(id)))  -- Почему-то попадаем в строку 2
end

local alltrade
function OnAllTrade()
  if not run then return end
  alltrade = true
  for i = 1, 30 do
    DeleteRow(id, 1)
    InsertRow(id, 30)
  end
end

function main()
  id = AllocTable()
  AddColumn(id, 1, 'Size', true, QTABLE_INT_TYPE, 15)
  CreateWindow(id)
  SetWindowPos(id, 0, 0, 100, 520)
  for i = 1, 30 do
    InsertRow(id, -1)
  end

  run = true
  while run do
    if alltrade then
      alltrade = nil
      SetCell(id, 30, 1, string.format('%u', GetTableSize(id)))
    else sleep(1) end
  end
end

Через некоторое время работы появляется 31 строка. Первая строка становится недоступна для редактирования.

Видео
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
[BUG] Не рассчитывается максимальное возможное количество лотов в заявке
 
Для BRK0 на момент написания этого поста не рассчитывалось количество при цене ниже 23,01
Возможно это связано с расширением планок.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Показывать коды классов в настройках списков заказа данных, Заказ данных -> Поток котировок, Поток обезличенных сделок
 
Отображать код класса в указанных окнах
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
CalcBuySell, Долгая работа функции
 
Среднее время выполнения функции CalcBuySell 6-7 мс. Как-то долго.
Может, можно что-то подкрутить в настройках?
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Перестают работать события SetTableNotificationCallback
 
Создаём QLua-окно, назначаем ему колбек на события QTABLE_CHAR и/или QTABLE_VKEY.
Если переключиться на контрол "Edit" или "ComboBox" на панели инструментов ("Поиск инструмента", "Окно сообщений" и пр.), а затем активировать окно кликом на его заголовок, то события, назначенные раннее не работают. Чтобы заработали, нужно активировать кликом внутри окна.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Контекстное меню в Lua-таблицах
 
QUIK 8.2.0.78
При клике правой кнопкой мыши в Lua-таблице появляется контекстное меню. Как убрать?
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Метки
 
Где теперь устанавливается прозрачность метки и фона?
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
table.ssort, зависает терминал при выполнении table.ssort в main
 
Демонстрационный скрипт:
Код
local AllTrades = {}
function main()
  ID = AllocTable()
  AddColumn(ID, 1, '1', true, QTABLE_INT_TYPE, 20)
  CreateWindow(ID)
  row = InsertRow(ID, -1)

  while not stoped do
    if #AllTrades ~= 0 then
      local trade_num = table.sremove(AllTrades, 1).trade_num
      table.ssort({0, 0}, function()
        SetCell(ID, row, 1, ''..trade_num)
        return true
      end)
   else sleep(1) end
  end  
end

function OnAllTrade(alltrade)
  table.sinsert(AllTrades, alltrade)
end

Через непродолжительное время терминал вешается.
Зависание происходит при выполнении инструкции SetCell в main.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Клиентский портфель, Настройки обновления
 
Цитата
Система / Настройки / Основные настройки… раздел «Торговля» / «Клиентский портфель»
Влияют ли эти настройки на значения, получаемые из Lua, например, getPortfolioInfo, getPortfolioInfoEx и др.?
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
OnOrder, снятие заявки
 
Скрипт отправляет транзакцию на снятие заявки.
Допустим, OnOrder получен раньше или OnTransReply вообще не пришел.
Есть возможность установить инициатора снятия: сам скрипт, пользователь (вручную) или, может, другой бот?
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Не завершается main после остановки скрипта
 
Код
local run = true

local function f()
  for i = 1, 2000000 do
    local a = 1 + 2 * 3 / 4
  end
  return run
end

function main()
  local t_id = AllocTable()
  AddColumn(t_id, 1, "", true, QTABLE_DOUBLE_TYPE, 20)
  CreateWindow(t_id)
  InsertRow(t_id, -1)
  while run do
    local r = f()
    SetCell(t_id, 1, 1, tostring(r))
    sleep(1)
  end
  message('Exit')
end

function OnStop()
  run = nil
  message('OnStop')
  return 5000
end
Почему после остановки скрипта main не завершается (чаще всего) должным образом?
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Обезличенные сделки, Слетают настройки списков инструментов для заказа обезличенных сделок
 
Старая проблема.
Настроен список инструментов для получения информации по обезличенным сделкам.
К примеру, получаем сделки по классу FORTS, фильтр инструментов не включен.
Открываем новую таблицу ТВС и указываем только один инструмент из класса FORTS для вывода в эту таблицу. В результате настройки сбрасываются, сделки по остальным инструментам прекращают поступать.

Надо исправить: при открытии новой таблицы список инструментов не должен изменяться в сторону уменьшения.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Показывать последнее значение, точность отображения
 
Где настройка точности отображения последнего значения на графике?
Скрытый текст
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Модуль опционной аналитики, Кривой расчёт прибылей/убытков
 
info.exe 7.14.1.7
StratVolat.dll 2.1.61.1
Неверно отображается прибыль при цене БА, равной страйку, на момент экспирации.
И как не меняй масштаб, добиться шага цены 100, чтобы страйк попал на одно из делений на шкале, невозможно.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Различаются графики в QUIK и экспорт с Финама
 
У кого-нибудь есть свежая история торгов непосредственно с биржи?
А то не совпадают данные из QUIK с экспортом с Финама
Скрытый текст

Как видно на скриншоте идёт смещение на одну минуту.
И такая беда по многим бумагам, которые проверил.
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
QUIK не может установить соединение с сервером.
 
У меня одного если QUIK работает несколько дней, то иногда после перезагрузки сервера, клиент не может установить соединение с сервером?
Я не могу быть заинтересован в устранении ошибок в чужом ПО больше, чем его разработчик.
Страницы: 1 2 3 След.
Наверх