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

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

Страницы: Пред. 1 2 3 4 5 6 7 8 9 10 11 12 ... 25 След.
Индикатор торговой сессии
 
Цитата
BlaZed написал:
У меня в квике, как оказалось, ограничения стояли на получение данных раз в 1 секунду.

Прикольно, это что за настройка такая?
параметр "ACCOUNT" в sendTransaction, особенности его применения на QUIK с субсчетами.
 
Тоже самое происходит и при подаче заявки руками через форму заявки
Вы этого просто не замечаете
Звуковой сигнал в интерпретаторе lua.exe, Как сделать сигнал beep при запуске программы с помощью lua.exe
 
Цитата
Виктор Столетов написал:
Quik выдает сообщение об ошибке:  «error loading module 'w32' from file 'G:\БС\QUIK_VTB24\w32.dll': Не найдена указанная процедура.»     Библиотека w32.dll в корне Quik присутствует.

У всех работает, у вас не работает. Так не бывает.
Скорее всего не ту версию w32 используете.
not enough memory после 4-5 часов
 
Это не форум брокера.
Линковка, - нормальная с выносом окон МОЖНО СДЕЛАТЬ КАК У ВСЕХ?
 
Когда уже был QUIK - всей этой перечисленной фигни просто-напросто еще не существовало. Как и "стандартов".
Так что нет никаких парадоксов.

PS
Эмоции сливать - это прикольно, но может их лучше сливать доктору?
А сюда уже вернуться здоровым человеком, и внятно кратко изложить каких конкретно фич хочется от QUIK.
Звуковой сигнал в интерпретаторе lua.exe, Как сделать сигнал beep при запуске программы с помощью lua.exe
 
Спасение - qlua.exe
Делал себе, т.к. в самом деле порой требуется запустить скрипт из ком. строки, а не из QUIK. Но при этом хочется иметь "окружение как в QUIK".
Пока поддержано очень мало чего, но для указанных тут случаев годится

http://quik2dde.ru/static-img/qlua-exe/qlua-exe.zip
Распаковать, файл qlua.exe положить в каталог с QUIK - оттуда и запускать, все будет работать.
Пока это вариант только для Lua5.3, но этого достаточно, считаю, для реальных нужд.

Исходники:
https://github.com/swerg/qlua-exe
Грядущие изменения на срочном рынке МБ: поддержка работы с 19-значными номерами заявок и сделок
 
Цитата
Старатель написал:
В 7-м квике не зависает даже более примитивный код:
Мне все лень было проверить, но вот тоже такое впечатление, что в Lua 5.1 более грамотно были сделаны локи многопоточности. А в 5.3 совсем халтуру какую-то сделали.
Ошибка: указанная транзакция по указанному классу не найдена, Quik 8.11.0.66
 
Цитата
Константин Рейм написал:
Суть вопроса в том что "10:00:05" это серверное время и торги по времени уже начались, а функция status == false не дает торговать каое-то время.

Ну правильно, серверное, от сервера QUIK, а не биржи
Конечно расхождение  в несколько секунд как-то слишком большое, однако это ж не status  мешает отправке транзакции; это значит, что биржа отклонила, т.е. с точки зрения биржи торги еще не начались. Рассинхрон в одну сторону подтверждает и то, что вечером "после окончания сессии" торги еще идут (судя по вашим же сообщениям, как я их понял). Так что либо время биржи отстает, либо сервера QUIK опережает, так я думаю.
Ошибка: указанная транзакция по указанному классу не найдена, Quik 8.11.0.66
 
Цитата
Константин Рейм написал:
Да и сама эта функция как то странно себя ведет: время "10:00:05", а status == false, (на 3-5 сек. на старте торгов задерживается), время "18:45:33", а status == true. Прокомментируете?

Рассинхрон веремени.
Lua-индикаторы: Добавить возможность изменения фактического количества линий индикатора при изменении настроек
 
Такой способ в самом деле есть, я про него и писал на форуме (вы таки читаете форум? ух-ты!)
Однако хотелось бы иметь честный функционал по реальному изменению количества линий в индикаторе.
Изменяется значение привязки метки "Цена" при изменении вертикального масштаба
 
Цитата
Евгений написал:
Думаю арке а пору создать отдел тестировщиков из числа тех, кто действительно торгует в квике, для нахождения косяков.

Welcome to the club! Уже среди них.
Цитата


[QUOTE]И доплачивать им за работу из зарплаты тех кто должен проверять по.

Гы.
Сдвиг графика цены или вертикальной сетки
 
Цитата
Evgeniy Karnaukhov написал:
В таком случае рекомендуем разобраться с самим скриптом.

Также напоминаем о рекомендации обновить терминал до актуальной на сегодняшний день версии - 8.12.

Evgeniy Karnaukhov, расскажите: каким образом скрипт может нарисовать мимо вертикальной сетки? А то мне как раз хочется вывести индикатор Lua не ровно в сетку.
Ну раз вы предполагаете, что надо разбираться со скриптом - то, видимо, из скрипта такое можно сделать, верно? Расскажите как.

По исходному вопросу - ну это же стандартная фича квика рисовать графики через один: один в сетку, другой со сдвигом.
Пользователи рассказывают это 10 лет - но поддержка QUIK каждый раз удивляется и рассказывает небылицы.
запуск из работающего скрипта другого скрипта или скриптов
 
Цитата
Kolossi написал:
или привязку пользовательской таблицы к вкладке

https://quik2dde.ru/viewtopic.php?id=329
Отключение интернет, Поведение программы при отключении интернет
 
Цитата
Старатель написал:
А если ответа никакого нет (мож, пакет потерялся, мож ещё чё), то клиент так и будет ждать у моря погоды... И тайм-аутом там не пахнет.

Цитата
Евгений написал:
При выдергивании шнура интернет из роутера, квик сообщает о разрыве связи спустя 30-40 сек.

Во-первых, противоречащие параграфы. Ну если вы вообще про эту ситуацию говорите, а то не понятно.

Во-вторых, еще раз задам свой вопрос: вот потерялись пакеты, и? что вы предлагаете? Как понять они потерялись или серверу нечего отправить?
А никак. Только по тайм-ауту.
Можно обсуждать его величину, однако видно, что
а) тайм-аут имеет место быть
б) делать его длительностью в одну секунду - весьма много весомых противопоказаний есть против такого подхода.
Что означает несовпадение времени сервера и последней записи, в информационном окне
 
Цитата
Evgeniy Karnaukhov написал:
Мы дополним описание параметра "Время сервера" в документации в одной из очередных версий терминала QUIK.

Лучше назовите по разному. Это будет правильнее.
Отключение интернет, Поведение программы при отключении интернет
 
Цитата
Anton написал:
Да, надо переводить сокет в неблокирующий режим и вызывать connect с отменой по таймауту

С таймаутом на что?
На конект - так он и так есть. Не подключилось - об этом сообщается через вполне разумный тайм-аут.
Но если подключилось, но "сервер не шлёт ничего" (или в проводах теряется? как вы отличаете?) - то тут что? Может там и не должно ничего приезжать, как догадаться? какой таймаут установить и на что?
Lua-индикатор - диалог установки параметров при добавлении
 
Цитата
Старатель написал:
первый расчёт идёт со старым значением, но уже после нажатия на кнопку OK.

А, все вчитался.
Меня устраивает. В том смысле, что мне важно, чтобы до открытия диалога не производился расчет, который у меня очень долгий
А после уже пусть считает сколько угодно, вариантов все одно нет.
Lua-индикатор - диалог установки параметров при добавлении
 
Да, в самом деле, такой вариант работает, спасибо.
Хотя отобразить диалог параметров и для добавление через контекстное меня - тоже бы очень даже не помешало, по-моему. Пусть не такой навороченный (на про все графики/индикаторы в окна, а только про параметры добавляемого индикатора

Цитата
Старатель написал:
Но даже так Lua-индикатор пересчитывается 2-3 раза при добавлении, причём первый раз - всегда с параметрами по-умолчанию.

А это чтобы не расслаблялись :)
Впрочем, сейчас проверял на 8.11 версии - если пойти указанным вами путём - то до отображения диалога настроек индикатор явно не рассчитывается, из него только Init() зовется для определения кол-ва линий и все.
Lua-индикаторы: Добавить возможность изменения фактического количества линий индикатора при изменении настроек
 
Просьба добавить возможность изменять количество линий индикатора при изменении настроек.
Например, добавить возможность возвращать новое количество линий как результат выполнения OnChangeSettings ()
Не отображать в настройках Lua-индикатора слишком большое количество линий
 
Цитата
Старатель написал:
Может лучше попросить дать возможность задавать количество дополнительных линий через диалог? С одним общим набором свойств: типа линии, толщины, цвета.

Количество линий можно и сейчас через диалог задавать. Толку с это не много (на самом деле количество линий менять нельзя), но можно вполне эмулировать такое поведение, см. вот: https://forum.quik.ru/messages/forum10/message52766/topic6248/#message52766

Общие для всех линий свойства и сейчас можно запросить и задать в OnChangeSettings (хотя изменять параметры линий я OnChangeSettings, теоретезирую, но запросить точно можно). Так что и это есть уже.

На самом деле проблема именно в долгом открывании диалога при большом количестве линий, так бы и фик бы в ними.
Но т.к. просить ускорить открытие диалога очевидно бесполезно, я и предлагаю такой вот метод, который отлично исправит проблему долгого открытия диалога без ущерба функциональности (для случая, когда параметры линий через диалог задавать в самом деле не требуется).
Отключение интернет, Поведение программы при отключении интернет
 
Цитата
Евгений написал:
-- Пинг через cmd

но ведь у этого способа тоже задержка на тайм-аут.
Lua-индикатор - диалог установки параметров при добавлении
 
Есть ли возможность в момент добавления самописного Lua-индикатора на график заставить систему спросить параметры индикаторы до  его добавления?
Сейчас выглядит так, что индикатор сначала обязательно безусловно добавляется на график, и только этого после можно открыть редактирование параметров.
Не всегда можно приемлемые параметры установить в скрипте заранее.
Не отображать в настройках Lua-индикатора слишком большое количество линий
 
Бывают индикаторы, где приходится для выразительности выводить 100...200 и более линий.
Очевидно, что параметры этих линий задаются в скрипте автоматически и пользователь точно не будет их изменять руками через диалог.

Однако, если открыть диалог редактирования параметров такого индикатора - то диалог открывается долго, т.к. свойства всех линий в него запихиваются. но там эти линии не нужны! не будет их пользователь править!

Предлагаю в таблицу Settings добавить свойство, что-то наподобии
Settings.DisableLinesEdit = true / false -- по умолчанию false

Если это свойство true - то параметры линий в диалоге вовсе не отображать, далог тогда будет открываться быстрее
Если это свойство false или не задано (по умолчанию) - то параметры линий в диалоге отображать как сейчас.
В индикаторе можно создать безконечную горизонтальную линию?
 
Из какой таблицы? таблицы Lua?
Для изменения уровней удалять индикатор с графика и снова добавлять?
А кайф в чем?
Грядущие изменения на срочном рынке МБ: поддержка работы с 19-значными номерами заявок и сделок
 
Цитата
Anton написал:
Забегу-таки вперед паровоза. Без второго потока пользовательский мейн вообще нельзя было бы выполнить от слова никак. Были бы только колбеки, как в индикаторах.

На мой взгляд, задумка оказалась неудачной.
У разработчиков, очевидно, была необходимость сделать замену QPILE с его раз в секунду выполнением, причем в отдельном потоке. Для чего и была сделана main().
Но дальше началась мутная каша.

На мой взгляд, надо было сделать две категории скриптов Lua (помимо индикаторов):
1) Чисто событийный скрипт. С нем могут быть только обработчики событий. Срабатывает что-либо в нём только по событиям, в одном потоке (не обязательно основном, но в одном). Для особо скучающих добавить еще периодическое настраиваемое событие таймера, что просто.
2) Скрипт, выполняющий бесконечный цикл исключительно в отдельном потоке. Но опять же только в одном потоке, пусть и отдельном. Это будет просто полноценная замена QPile и радость любителям постоянно что-то колбась без остановки.

А вот замешивание в одну кашу двухпоточности в рамках одного скрипта лишь добавляет слишком сложных глюков, при этом постоянно получая кашу в анных, да еще и залезая в дедлоки порой. Никакой пользы при этом это не приносит совершенно, считаю.
В индикаторе можно создать безконечную горизонтальную линию?
 
Вы документацию уже прочитали про индикаторы?
Впрочем, изменять количество линий через параметры индикатора - нельзя, количество линий одноразово определяется значением, возвращаемым из Init()
Единственный трюк - это вернуть из Init() достаточно большое заранее достаточное количество, при этом фактически назначать значение только нужному в данный момент количеству линий, остальным линиям возвращать nil, тогда они не будут рисоваться.
В индикаторе можно создать безконечную горизонтальную линию?
 
Забиваем в гугл "lua table iteration"
Тут же получаем код
https://www.lua.org/pil/4.3.5.html

Код
    -- print all values of array `a'
    for i,v in ipairs(a) do print(v) end


Про какой буфер речь - не понятно
Подключение к Санкт - Петербуржской бирже
 
Там же, где все остальное
Создать Окно --> Текушие торги

Если там нет нужных инструментов - к брокеру
Изменяется значение привязки метки "Цена" при изменении вертикального масштаба
 
Обалдеть, всё еще хуже, оказывается.
Открываем свойства метки, устанавливаем круглое значение:



Нажимает Ok.
Теперь ничего не меняя, просто снова открываем параметры метки - там уже другое значение!!
Как так?!



QUIK 8.11.0.66
Изменяется значение привязки метки "Цена" при изменении вертикального масштаба
 
На любой график добавляем метку вида "Картинка из файла". (Может с другими типами тоже есть проблема, проверял только на этом типе меток)
Выбираем какую-нибудь картинку в параметры.
Задаем руками точное значение "Цена"



Метка установилась.



Мышкой на вертикальной оси "тянем вверх", увеличивая масштаб графика.



Встаем на метку, "Редактировать"
Почему значение "Цена" изменилось?! Мы же руками его явно задали??



Если значение "Цена" восстановить руками и снова поизменять масштаб вертикальной оси - то значение "Цена" в параметрах метки снова уплывет (и метка сместится на новое значение)
Как так?!

Изменяется значение привязки метки "Цена" при изменении вертикального масштаба
 
Удивительная программа QUIK
В какой бы функционал не залез - там обязательно сразу наткнёшься на прорву багов и недоработок, причем гугление пофоруму (я к тому, что по остальным проблемам с графиками, на которые наткнулся, я уже нашел соотв. тему на форуме)
C#/C++, Сделать возможным напрямую писать на этих языках
 
Цитата
Константин написал:
Но все равно остается костыль в виде разбора Lua массивов и т.д.

Сделайте один раз свою обёртку, разбирающую все это - и пользуйтесь на здоровье.
Очевидно же, что это ваше пожелание реализовано не будет до 2050 года, смысл тогда желать?
C#/C++, Сделать возможным напрямую писать на этих языках
 
Цитата
Константин написал:
Цитата
swerg написал:
 
Lua-интерфейс позволяет делать свои какие угодно DLL.А   trans2quik   и вывод информации через DDE позволяет делать свои exe. Что ж еще требуется-то??
В конечном итоге мы все равно имеем работу через lua5.X.

Крайне странное утверждение. Из чего сделан такой вывод? DDE и trans2quik существовали задолго до внедрения Lua.
Странная дата сервера
 
Цитата
Nikolay написал:
Опять Финам.
Цитата
Nikolay написал:
Клиент
Ну да. Финам же не может написать иначе, кроме как на форум
Не синхронизируется файл новостей news.log в процессе работы терминалы
 
А не "отключена синхронизация".
Не синхронизируется файл новостей news.log в процессе работы терминалы
 
Здравая оптимизация работы с диском это называется. А не "отключена оптимизация".
Как добавить класс инструментов ИНФО, настройка Квик
 
К брокеру, конечно
Создание авто ввода текста в Lua, Как создать скрипт который при нажатии клавиши мышки вводил бы текст автоматически.
 
Я взял калькулятор и декодировал вашу картинку.
Но всё равно не смог понять содержания вопроса...

C#/C++, Сделать возможным напрямую писать на этих языках
 
Цитата
Константин написал:
Так же как и с Lua, сделать возможным написания своих программ для QUIK на этих языках. Возможные варианты подключения exe, или dll своих программ.
Если допустим при использовании dll то чтоб QUIK вызывал функции OnInit, OnStart, OnDeinit и т.д., и т.п. в зависимости от того скрипт написан, или индикатор.

Конечно данное обновление потребует время. Но даст возможность отказаться от кастрированного Lua. И избавит от танцев с подключением к нему DLL. Конечно сейчас можно подключаться через костыль в виде lua5.X.lib/dll. Но все-же это костыль, который ограничивает некоторые возможности обмена данными.

В чем костыль? И какие такие "новые возможности обмена" предоставит вам другой язык? вы о чем?
У "другого языка" будет ровно такое же весьма ограниченное API. И что для вас это изменит? Ну вот в самом деле?

Lua-интерфейс позволяет делать свои какие угодно DLL.А trans2quik и вывод информации через DDE позволяет делать свои exe. Что ж еще требуется-то??
Почему расхождятся результирующие данные о средневзвешенном значении цены в Quik и в бюллетене биржи?
 
1) Брокер?
2) режим торов?
2) Для примера два-три проблемных инструмента?
Оповещения в Quik
 
Деньги брокеру платятся. С него и требовать есть смысл.
Удивительно как ловко брокера отпинывают пользователей "это QUIK" и пользователю почему-то покорно идут на форум квика. Ну и смысл? Очевидно же, что в проблемах СМС разобраться может только брокер, т.к. это все у него хозяйство настроено. Но брокер ловкий.
Эвента на изменение таблицы "Клиентский портфель"
 
Цитата
Anton написал:
Я тоже сейчас посмотрел внутрь (скачал сорцы у swerg) и есть подозрения, что работать эти функции не будут через w32. Например, PeekMessage
Код
    long lwnd  =  MYP2HCAST luaL_optinteger( L,  1 ,  0 ); // раз косяк
        lua_pushnumber( L, ( long) msg.hwnd); // два косяк
        lua_pushnumber( L, msg.wParam); // три косяк
        lua_pushnumber( L, msg.lParam); // четыре косяк

  
На 64 битах HWND это void *, WPARAM и LPARAM - uintptr_t и intptr_t соответственно. Тут их режут до 32 бит и потом еще в даблы упихивают.

Каждый может поправить и дополнить https://github.com/swerg/qlua-w32/
Ну или хотя бы завести баг про правку нужной функции https://github.com/swerg/qlua-w32/issues
Сколько ж можно мне-то за всех отдуваться.

Часть функций после появления Int64 для Lua в QUIK я поправил (PostMessage, SendMessage), функции типа PeekMessage мне не нужны, их и не правил пока.

Ноги у либы растут из Lua 5.1 и x86, очевидно, и видимо автору хватало lua_number (который, как известно, в зависимости от сборки Lua может быть int или double; в QUIK это было double).
Для Lua5.1 на x64 в этих функциях по уму надо был переходить на user data, чтобы не терять ничего, но после появления нормального int64 в Lua5.3 в QUIK надобность в этих извращениях, по счастью, отпала.
Ошибка выполнения luac: multiple Lua VMs detected. Expected 5.3 instead of 5.4
 
А говорите компиляция.
Сборки внешних библиотек надо брать для соотв. версии Lua.
https://quik2dde.ru/viewtopic.php?id=334
Ошибка выполнения luac: multiple Lua VMs detected. Expected 5.3 instead of 5.4
 
А без компиляции этот же Lua-скрипт - работает на Lua 5.4 ?
Дополнительные dll-библиотеки из проблемного Lua-cкрипта используются?
Добавить в CreateDataSource():SetUpdateCallback() аргумент, указывающий на DataSource
 
Цитата
Imersio Arrigo написал:
Нет, HTTPSEverywhere.

Но зачем?!
Что за умопомешательство на этом https ??
Эвента на изменение таблицы "Клиентский портфель"
 
Цитата
swerg написал:
Я взял буквально тот скрипт, который здесь был приведён.

Уточню: QUIK 8.11.0.66
Для запуска скрипта используется Lua 5.3.5

ЗЫ
Попробовал запустить на Lua 5.4 - в самом деле QUIK завис насмерть...
гыгыгы :))) Вот вам и хвалёная Lua 5.4 где "все стабильнее"
Эвента на изменение таблицы "Клиентский портфель"
 
Цитата
Anton написал:
Дайте угадаю, в мейне есть вызов какой-то сишной функции? Так-то, если в нем один луа-цикл без никто, мейн лок захватит и все, квик на первом же колбеке встанет колом, о чем тут и сообщают.

Не надо ничего угадывать.
Я взял буквально тот скрипт, который здесь был приведён.
Вот полный текст:

Код
function     OnStop ()
  is_run    =       false
end

function     main ()
  is_run    =       true   
  a   =      0   
  while    is_run    do   
    a   =   a   +      1   
  end   
end   
Эвента на изменение таблицы "Клиентский портфель"
 
Цитата
Михаил Филимонов написал:
Ей-богу виснет

Уболтали, не буду свой замечательный комп менять.
Эвента на изменение таблицы "Клиентский портфель"
 
Цитата
BlaZed написал:
Ryzen 5 3500x на 6 ядер, квик скопытился после запуска

Цитата
Михаил Филимонов написал:
I-7 6850К завис после запуска скрипта  

Едрёна-батона... А я еще подумывал сменить комп на поновее-получше. Неужто опять враньё с этими ядрами/гигагерцами?!

Запустил скрипт этот с бесконечным цикл на своем Intel Pentium E2180 2ГГц, два ядра, прошу заменить. 2Гб оперативы.
Да, проц грузится на 50%, это понятно, но QUIK совершенно без задержек реагирует на мышь, графики едут, к северу подключаюсь / отключаюсь, таблички сделок моргают, рукописные Lua-индикаторы работают.
Неужели у вас на указанном железе в самом деле висит?!
Определённо обманываете.
Эвента на изменение таблицы "Клиентский портфель"
 
Цитата
Михаил Филимонов написал:
Высокоскоростная передача данных из МТ5 в свое приложение
Чем вы измеряли высокую скорость и чему она равна?
Страницы: Пред. 1 2 3 4 5 6 7 8 9 10 11 12 ... 25 След.
Наверх