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

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

Страницы: 1
После обновления quik 10.1.2.2 ядро проца загружается на 100% - лаги
 
Цитата
funduk написал:
У Вас случайно не тёмная тема стоит? Попробуйте отключить, если да.
в курсе про тёмную тему, она всё ещё багает
стоит светлая тема, возможно процик стал слабым для квика. откатил версию - полёт нормальный :)
После обновления quik 10.1.2.2 ядро проца загружается на 100% - лаги
 
После обновления QUIK с версии 10.1.2.2 (могу ошибаться в точности версии, но переход с 10.1.3.3 до 10.3... точно) начал грузить одно из ядер процессора на 100% и терминал начал подвисать, особенно при пролистывании "разряженного стакана".
Мне это видится как добавление разных функций для удобства, например более наглядная таблица ввода заявок, клиентский портфель, фильтры в таблицах и прочие визуально приятные мелочи.

В терминале на 1й вкладке открыто ~22-25 стаканов и около 44 графика и около десятка таблиц. Это много и не типично для большинства. Всё это ранее работало без подтормаживания, а теперь процессор не тянет такое количество стаканов. проц: Intel® Xeon® CPU E5-2640 v3 2.60GHz
На вкладке с 2я стаканами и парой графиков - всё работает прекрасно.

Мне бы не хотелось отказываться от обновлений QUIK, пожалуйста сделайте настройку в пользу производительности в ущерб удобству, как в соседней теме человек предложил сделать стиль winXP или что то по типу этого.

С разными улучшениями терминала увеличиваются и системные требования, но многие любят квик за его практичность и прохождение стресс тестов в десятки тысяч сделок за день

Предлагаю отписать людям с похожей проблемой подтормаживания после последних обновлений, думаю я не уникальный
Звуковое оповещение на значения индикаторов.
 
это делается с помощью скрипта луа
https://quik2dde.ru/viewtopic.php?id=79
Оптимизация пинга и лагов. Правильный заказ данных
 
Так же вопрос по открытым стаканам. например один открытый стакан равен всем заказанным параметрам по фьючерсам? размыто, но думаю смысл донёс :)
Оптимизация пинга и лагов. Правильный заказ данных
 
Есть ли какая то разница в заказе данных: "Дата исполнения инструмента" и например "лучшая цена предложения". По логике дата исполнения не меняется в течении дня и должна делать меньшую нагрузку на трафик/лаги чем лучший бид или лучший аск, которые постоянно меняются.Этот вопрос при учёте что все параметры заказываются раз в минуту для избегания нагрузки.
Или же заказ каждого параметра по отдельности грузит систему одинаково? количество сделок за сегодня - время последней сделки - биржевой статус сесии это всё одинаково использует трафик? Интересуюсь с целью оптимизации квика, чтобы потом не создавать темы про зависания и лаги квика
Перестал работать SERVERTIME. не могу понять в чём проблема
 
уточню: данный скрипт на событие по времени сервера quik. скрипт зацикливается если например указать на 5-6 часов больше, если меньше 5 часов то условие срабатывает, хотя по факту время ещё не наступило
может ли это как то связано с изменение формата времени в windows. сброс формата не помог, так перевод времени и часового пояса на МСК не помогло
Перестал работать SERVERTIME. не могу понять в чём проблема
 
Скрипт работал примерно 2-3 месяца назад, потом был отложен на полку.
Сейчас скрипт перестал работать, потратил примерно 6 часов, но ничего не помогло
подскажите пожалуйста если ли в коде ошибка? Образец взят от самих разработчиков
Код
isRun = true

base_time = "09:07:00" -- время в которое исполнится заявка.время операционной системы

function FixTime(V)
V=tostring(V)
local Out = os.date("!*t",os.time())
local len = string.len(V)
if len > 6 then
Out.hour,Out.min,Out.sec = string.match(V,"(%d%d)%p(%d%d)%p(%d%d)")
elseif len == 6 then
Out.hour,Out.min,Out.sec = string.match(V,"(%d%d)(%d%d)(%d%d)")
elseif len == 5 then
Out.hour,Out.min,Out.sec = string.match(V,"(%d)(%d%d)(%d%d)")
end
return Out
end

function main()
while isRun do
stime = tostring(GetInfoParam("SERVERTIME"))
--stime = tostring(os.time)
message(tostring(stime))
message(tostring(base_time))
   if     os.time(FixTime(stime)) < os.time(FixTime(base_time))  then
   elseif os.time(FixTime(stime)) >= os.time(FixTime(base_time)) then
   result = 1
      if result ~= 1 then
      message(tostring("Транзакция не прошла проверку на стороне терминала QUIK"))
      else
      message(tostring("Транзакция отправлена"))
      isRun = false
      end
      sleep(100)
   end
   sleep(1500)
end
message(tostring("====="))
sleep(100)
end
quik 8.13 - разряженный стакан - проблема с цветами
 
После обновления квика до 8.13.1.16 появилась проблема:
в разряженном стакане - выбираем в настройках: выделять котировки цветом
1) цвет в спреде почему то зелёный (дефолтные цвета)
2) так же за пределами видимости стакана цена и BUY и SELL перекрашены в зелёный
3) зелёный цвет сьезжает на цены продаж
вообщем, баги и ошибки отображения цветов, именно при разряженном стакане
мои настройки стакана: покупатели внизу, 3 столбца: покупка-цена-продажа

просьба поправить в следующих обновлениях quik  
Нулевые значения PRICEMIN и PRICEMAX
 
всё ещё не работает таблица параметров через lua
Не работает "getDepoEx" на реальном счёте. На демо - всё отлично
 
Цитата
Sergey Gorokhov написал:
Hired,
Проверьте визуально таблицу лимитов по бумагам, есть ли в ней строка с нужной бумагой и теми параметрами которые Вы передаете в функцию
Да. верно. Если не было покупок или заявок по бумаге, то возвращает nil. До этого думал что вернёт "0" по бумаге. Спасибо!
Не работает "getDepoEx" на реальном счёте. На демо - всё отлично
 
почему то с определёнными акциями работает. например {"ALRS","CHMF","RKKE","RUSI"} - всё отлично
если добавить GAZP или другие шлаки SARE KBTK - то выходит ошибка "attempt to index a nil value (global 'table_depo')"
Не работает "getDepoEx" на реальном счёте. На демо - всё отлично
 
Здравствуйте!
Подскажите в чём ошибка кода? На демо - всё работает, на реале пишет "attempt to index a nil value (global 'table_depo')" указывая на строку "code = table_depo.sec_code"
Код
firma = "MC0061900000"
kode_cl = "376622RI23KQ"
schet_depo = "L01+00000F00"
raschet_T = 2
class_code = "TQBR"
tiker = {"AFLT","GAZP","GMKN","SBERP"}

function main ()
    for i = #tiker,1,-1 do
    bumaga = tiker[i]
    table_depo = getDepoEx (firma,kode_cl,bumaga,schet_depo,raschet_T) 
    code = table_depo.sec_code
    message(tostring(code))
    end
end
Инструмент "Линейка" не работает на горячих клавишах
 
Со вторым вопросом разобрался.
Может кому пригодится: в настройках стакана нужно убрать галочку "Применять глобальный фильтр клиентов". Так же появится отображение "своего объёма", если такие колонки выведены в стакан. По крайней мере на демо счёте так. Нет возможности проверить на реальных торгах из за выходного дня
Как настроить тикеры инструментов, Как заменить тикеры в названии Графика цены (фортс)
 
Могу ошибаться, но думаю транслируемый сокращённый вид фьючерсов выбирает брокер и поменять его нельзя
Например в финаме вид как на скрине сбера и за 4 года не менялся
Инструмент "Линейка" не работает на горячих клавишах
 
Здравствуйте! Являюсь уверенным пользователем QUIK. Пользуюсь разными настройками и горячими клавишами

В прошлой версии QUIK 8.4. -- "Линейка" на клавишах не работала. Думал, что разрабам известна проблема и пофиксят в следующей версии 8.5.++, но проблема осталась.

Не работает "Линейка" на горячих клавишах, которая находится на панели около кнопок "увеличить/уменьшить" и "режим ввода/изменения заявки из окна диаграммы"
Возможно делаю что то не так. Просьба объяснить мою ошибку или исправить данный баг

Ещё короткий вопрос, не создавая отдельную тему: Почему сейчас не получается убрать заявку правой кнопкой мыши в стакане с включённым скальперским режимом "Быстрый ввод/снятие заявки". Возможно добавили какие то отдельные настройки для этого, пробовал - не получилось
Удаление элемента из массива, который прошёл проверку
 
Цитата
Egor Zaytsev написал:
Добрый день.

Hired , Вам удалось решить проблему?
Проблема решена. Спасибо всем отписавшимся!
Удаление элемента из массива, который прошёл проверку
 
Цитата
Старатель написал:
Вариант 2:
Код
    for i = #sec_code, 1, -1 do
      local bumaga = sec_code
      LowDnya = getParamEx (class_code, bumaga, "LOW").param_value
      Last = getParamEx (class_code, bumaga, "LAST").param_value
      Raznica = math.abs(LowDnya - Last)
      if Raznica > 1 then
        message(tostring(bumaga .. " " .. Raznica ))
        table.remove(sec_code, i)
      end
    end
Спасибо! Этот способ сработал! Проблема решена. Всё оказалось проще, чем я думал :)

Цитата
Nikolay написал:
Эту задачу можно решить разными способами.
Цитата
Anton написал:
Предлагаю другой вариант: перед циклом for создайте временный пустой массив
Спасибо за советы! В будущем обязательно попробую предложенные варианты в более сложных скриптах!
Удаление элемента из массива, который прошёл проверку
 
Здравствуйте!
Не получается решить проблему с удалением элемента из массива, который прошёл проверку.
Пробовал и поиск и разные способы, но ничего не помогло.

Нужно чтобы после выполнения условия "if Raznica > 1 then" выводилось сообщение и данный элемент (в моём случае в цикле это "bumaga") больше не входил в проверку и повторно не выводилось сообщение.
Нужно убрать этот элемент из sec_code = { ... }, т.е. удалить конкретный элемент из массива sec_code

Понял лишь то, что после message ... нужно использовать "table.remove", что то вроде:
Код
   if Raznica > 1 then
   message(tostring(bumaga .. " " .. Raznica ))
   table.remove (sec_code, 1)
   sleep(3000)
но указать удаление конкретной акции (прошедшей проверку) в массиве не получается.


Надеюсь понятно изложил проблему. Начинающий говнокодер :) Может кто помочь советом?

Код
IsRun = true
sec_code = { "GAZAP", "LKOH", "SBER", "GMKN", "TRFM", "RAVN" }
class_code = "QJSIM"

function main()
   while IsRun do
      for _,bumaga in ipairs(sec_code) do
      LowDnya = getParamEx (class_code, bumaga, "LOW").param_value
      Last = getParamEx (class_code, bumaga, "LAST").param_value
      Raznica = math.abs(LowDnya - Last)
         if Raznica > 1 then
         message(tostring(bumaga .. " " .. Raznica ))
         sleep(3000)
         end
      end   
   end
end

function OnStop()
   IsRun = false
end
Стакан котировок - Сумма лучших
 
Подскажите пожалуйста, есть ли функция или параметр получения "суммы лучших" из стакана? Или только путём сложения всех бидов и асков? Новичок в этом деле, поиск пробовал.
Страницы: 1
Наверх