Anton Belonogov написал: Герман , дополнительных действий с Вашей стороны не потребуется. Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
Антон, убедительная просьба с этим не затягивать. Эта опция актуальна и реально поможет деньги сэкономить.
на самом деле это не так реально это не поможет экономить деньги. Так как комиссия брокера остается, а она всегда существенно больше биржевой. Если заявка не пассивная, то она просто отклоняется и правило это лишь к лимитированным заявкам.
сделал такой финт ушами: --------- подключился к WebQUIK подключение прошло, но данные с биржи не транслировались. Вышел из webQUIK ========== подключился к QUIK полет нормальный.
сегодня в сбербанке все началось как вчера ---------------- полный писец. ----------------- TTT не меняется, портфель не пересчитывается время отстает меняется лишь график и стакан. =================== пытаюсь переключиться идет подключение и писец.
nikolz написал: У сбербанка указан лишь один ip сервера
У них много серверов за одним адресом. По этому было сказано "переподключиться", а не поменять сервер
вот этим (переподключится ) я и занимался вчера весь день. К вечеру заработало. очевидно, сделали. -------------------- проблема больше не в том, что сломалось, а в том что ничего не сообщают клиентам о проблеме. ---------------------------- Получается, что им просто наплевать на клиентов.
В сбербанке полный писец. сейчас время 12:50 Сервер подключен к КВИКу но трансляции никакой нет Полная хрень, Индикатор подключения - зеленый а время последней сделки 11:55
сегодня дурдом какой-то Во-первых, при подключении исчез вчерашний день торгов . Во-вторых, сейчас соединение с сервером разорвалось и не восстанавливается. интернет норма скорость 100 Мбод
Nikolay написал: А прямо сейчас цена последней сделки в ТТТ, видимо, отстает от графика. Время сервера встало на 10 утра. Данные ТТТ видимо тоже. Для целей автоматизации брокер просто нерабочий. Да и для торговли тоже т.к. вчера графики просто стояли.
Вам повезло У меня сбер вообще на сообщении - соединение установлено прислал код а меню для ввода не выдает
У брокера сбер вчера сначала время сервера отставала на 50 минут. после двух кратного переподключения время сервира стало нормальным но цена последней сделки в ТТТ стала отставать минут на 30 от цены на графике. Потом графики встали , а цены в ТТТ изменялись. ============= раньше уже писал про выкрутасы сбера. ============== хорошо бы что-то в консерватории изменить.
Иван Иванов написал: + "; CLIENT_CODE=" + comment;
читаем внимательно документацию: =================================== Настройки автозаполнения полей ввода заявки Заполнение полей «Код клиента» и «Поручение» ======================== Применение глобальной настройки управляется параметром «set-comment-mode», который может быть указан как в секции [Global], так и в секции настроек для какого-либо класса. Параметр может принимать следующие значения:
«0» – применение глобальной настройки отключено,
«1» – включено автозаполнение поля «Поручение» значением глобальной настройки, значение берется из параметра «sell-default-client-code» для заявок на продажу и «buy-default-client-code» для заявок на покупку в секции [Global]. Если в параметрах указан код клиента, то он игнорируется. Например, если параметром «sell-default-client-code=77//global» задана подстановка кода клиента «77» и поручения «global», то код клиента не будет использоваться для автоподстановки.
Александр написал: Можно конечно, но почему вывод данных так работает? Если есть 40 строк в стакане, так и он должен выводить 40 строк, даже если они пустые. Или по какому принципу работает вывод данных из стакана?
возможно он и выводит. Возможно это эксель не отображает пустые строки та как после них ничего нет.
no field package.preload['socket'] no file 'C:\VTBC_Broker\QUIK\lua\socket.lua' no file 'C:\VTBC_Broker\QUIK\lua\socket\init.lua' no file 'C:\VTBC_Broker\QUIK\socket.lua' no file 'C:\VTBC_Broker\QUIK\socket\init.lua' no file 'C:\VTBC_Broker\QUIK\. .\share\lua\5.3\socket.lua' no file 'C:\VTBC_Broker\QUIK\. .\share\lua\5.3\socket\init.lua' no file '.\socket.lua' no file '.\socket\init.lua' no file 'C:\VTBC_Broker\QUIK\socket.dll' no file 'C:\VTBC_Broker\QUIK\. .\lib\lua\5.3\socket.dll' no file 'C:\VTBC_Broker\QUIK\loadall.dll'
проверьте версию dll в 9 версии квик можно работать с dll Lua 5.3 либо Lua 5.4
Quikos написал: Прошу пожалуйста подтвердить, что это ошибка или что это корректное поведение Квика: Версия Квика 9.7.1.10
Если по понятиям, то такое поведение функции, мягко сказать, странное. ----------------------------- Если по документации, то там ничего об этом нет, следовательно, получилось как всегда. ----------------------- Но исправлять в ближайшем будущем это никто не будет. -------------------- Поэтому, что Вам даст их ответ?
вот нашел ответ на данный вопрос на бирже( совпало с данным мною выше определением ): ---------------------- Заявки с признаком только пассивные
В декабре 2022 года на Срочном рынке будет добавлен новый признак заявки только пассивная
Новый признак заявок "только пассивная" доступен для лимитированной или айсберг-заявки, которая становится Активной если в момент объявления имеет цену / величину спреда хуже цены / величины спреда встречных Активных заявок. Если Заявка в момент объявления имеет цену / величину спреда лучше цены / величины спреда хотя бы одной встречной Активной заявки, она отклоняется торговой системой.
Новый тип заявок с признаком только пассивные (BoC - Book-or-Cancel) предполагает, что заявка, поданная в торговую систему, никогда не будет тейкерской.
Особенности заявки с признаком только пассивные (BoC)
Признак BoC сохраняется на протяжении всей жизни заявок (в том числе и для GTD – good till date);
В рамках действующей тарификация признак BoС гарантирует нулевую комиссию по сделкам;
Команда MoveOrder исполняется в случае, если она не приводит к исполнению заявки, исходная заявка не снимается.
Иван Иванов написал: Столкнулись с тем, что в брокере А..р не получается указать произвольный коммент к ордеру в CLIENT_CODE. По итогу постановки заявки там всегда оказывается номер счета SPBFUT1234F. Невозможность пометить ордера ломает логику менеджмента заявок...
Вопрос такой: замена CLIENT_CODE происходит на стороне брокера из-за каких-то особых настроек сервера ? Или может всё-таки в локальных настройках терминала как-то можно подшаманить?
а где Вы прочитали что в CLIENT_CODE могут быть комментарии? ссылку дайте плиз.
nikolz написал: Так Вы просто сделали функцию OnQuote но ваша dll вообще здесь не причем. -------------------------- Вы dll сделали правильно (если выкинуть лишнее, из того что Вам написали) Но Вы не объявили Вашу функцию колбеком. -----------------------
Как вариант,вы можете вызвать вашу функцию внутри например так:
Код
--здесь загрузите вашу dll
function OnQuote (class, sec)
---- здесь вызов вашей функции из вашей dll
end
Не понимаю, что значит я просто обьявил функцию, но не сделал ее колбеком ? Я обявил Сишную функцию и связал ее с именем реальной глобальной квиковской функции - OnQuote.
Что значит не сделал ее колбеком ? И что такое " ---- здесь вызов вашей функции из вашей dll". Функция OnQuote вызывается не мной - а самим Квиком.
покажите где КВИК в скрипте, который написали Вы, загрузил вашу dll
Просто вы же сами написали, что я неправильно описываю ее в dll, да и BVladimir , что вроде бы может работать без указания этих двух строчек в скрипте.
Собсвенно работает и хорошо, но теперь мне все таки интересно - может ли это работать без указания OnQuote в скрипте или нет.
Так Вы просто сделали функцию OnQuote но ваша dll вообще здесь не причем. -------------------------- Вы dll сделали правильно (если выкинуть лишнее, из того что Вам написали) Но Вы не объявили Вашу функцию колбеком. -----------------------
Как вариант,вы можете вызвать вашу функцию внутри например так:
Код
--здесь загрузите вашу dll
function OnQuote (class, sec)
---- здесь вызов вашей функции из вашей dll
end
Quikos написал: Хмммм, в моем случае - начинает работать когда я объявляю callback-функцию в самом скрипте, без этого в dll - не вызывается.
надо с самой dll разбираться...
Я даже не знаю, что там еще можно разобрать. В Luaopen - я добавил функцию на стек, определил ее, как глобальную "OnQuote". Не вызывается. Как только добавляю в Lua скрипт эти две строчки - то начинает вызываться. Ну и хорошо, что мне еще нужно :)
Проблема в том что Вы неправильно ее описываете в dll. Ваша DLL - это таблица которая размещается в глобальном стеке, а колбек - это функция которая размещается в глобальном стеке Когда Вы присвоите функции вашу функцию тогда и вызывается.
Quikos написал: Хмммм, в моем случае - начинает работать когда я объявляю callback-функцию в самом скрипте, без этого в dll - не вызывается.
надо с самой dll разбираться...
Я даже не знаю, что там еще можно разобрать. В Luaopen - я добавил функцию на стек, определил ее, как глобальную "OnQuote". Не вызывается. Как только добавляю в Lua скрипт эти две строчки - то начинает вызываться. Ну и хорошо, что мне еще нужно :)
Проблема в том что Вы неправильно ее описываете в dll. Ваша DLL - это таблица которая размещается в глобальном стеке, а колбек - это функция которая размещается в глобальном стеке Когда Вы присвоите функции вашу функцию тогда и вызывается.
Quikos написал: Оказывается в самом Lua-Скрипте нужно еще прописать вызов OnQuote.
Не нужно. В скрипте только подключение dll.
Хмммм, в моем случае - начинает работать когда я объявляю callback-функцию в самом скрипте, без этого в dll - не вызывается.
Чтобы было проще программировать колбеки, Вы можете эти функции написать на луа, а внутри их вызвать ваши функции на СИ. ------------------- например так function OnQuote() --------------- вызываете что хотите писанное на СИ ..... -------------- end ================= На самом деле Вы так сейчас и делаете, так как QLUA - библиотека функций, писанных на СИ. Вы хотите написать еще и свою хотелку на CИ.
Kander написал: Добрый день. Есть проблема которая отравляет пользование приложением не первый год. На вкладке три окна 1 таблица 2 график 3 Стакан. (вид на скрине под спойлером) Таблица поверх графика и в настройках стоит "Поверх всех окон". График снизу и у него в настройках НЕ стоит "поверх всех окон". Проблема в том, что при запуске приложения, таблица каждый раз оказывается под графиком и ее приходится вытаскивать от туда. Пока приложение на закроешь все нормально, оно остается поверх, при перезагрузки приложения, все поновой.
Скрытый текст
Вопрос собственно в том, как сделать, что бы таблица оставалась поверх графика всегда?
Если выходите нажатием "X", то та и будет. Попробуйте выходить через меню "Выход".
Евгений написал: Для того что бы сделки поступали нужно что бы эта таблица была открыта, и это в принципе даже не плохо. Но вот эти сообщения в таблице(появление сделки и ее параметры) они много пожирают ресурсов квика ? Может можно как то их сэкономить и не транслировать эти сообщения ?
Ну то есть пусть они туда пишутся в эту таблицу, только без выдачи этого визуально. Например сделать чек бокс не отображать
[не показывать]
V
Для этого надо подаисаться на обезличенные сделки, а таблицу не открывать.
читайте внимательно документацию, там даже пример написали, чтобы было понятно: этот параметр обязателен, но значение его может быть nil читаем внимательно там где звездочки
serggio написал: Вам ровно пять сообщений назад поддержка ответила .
Я видел, что ответила поддержка. Заметьте, что после этого так же nikolz задал свой вопрос и поддержка не ответила. Вообще поддержка ответила, что такой стакан "огрызок" по сути - транслирует биржа. Т.е. биржа у себя имеет полный стакан котировок на акции, а брокеру она транслирует "огрызок" этого стакана. Вам не кажется это странным? Как поддержка вообще взялась тут ответить за брокера? Квик оперирует данными брокера, но не биржи. Поэтому думаю вопрос этот пока открыт и напишу брокеру - пусть он ответит какой полный стакан на бирже и какой стакан ему транслирует биржа и почему. Толи сам брокер делает у себя такие настройки, что биржа ему даёт не полный стакан, толи брокер получает таки полный стакан с биржи, но по каким то своим понятиям транслирует нам в квик не полный стакан.
потому что у брокера сервер QUIK и поддержка знает, что говорит. Но какая длина очереди на сервере биржи почему-то не знает. Понимаю что она разная бывает, но ее длина полагаю измеряется тысячами.
В NeuralNetwork.Training первые строки до коммента "--Теперь правим веса": ошибки(delta) собираются в обратной порядке: выходной слой, далее остальные(for tmpl =self.layers-1, 1, -1 do -- слои) до первого.
Можете привести оценку скорости обучения для каких либо примеров и сравнение скорости например с факелом. -------------------------- Я сделал обертку для Lua библиотеки fastNet на СИ, но для акций ее так и не применил, так как использую бинарную сеть, для которой не нашел алгоритма оптимизации.
читайте внимательно документацию. Там стоит звездочка - т е надо читать сноску, а в сноске написано: (*) В зависимости от настроек сервера QUIK, величина может выражаться в лотах или в штуках. Уточните единицы измерения у обслуживающего брокера.
Функция getBuySellInfoEx возвращает два параметра:
Цитата
is_long_allowed = 1; //Признак того, является ли бумага разрешенной для покупки на заемные средства. Возможные значения: «1» – разрешена, «0» – не разрешена. is_short_allowed = 1; //Признак того, является ли бумага разрешенной для покупки на заемные средства. Возможные значения: «1» – разрешена, «0» – не разрешена.
То есть бумага для которой я запрашивал getBuySellInfoEx - имеет возможность торговли с плечом.
Но параметр так же возвращенный функцией getBuySellInfoEx:
читайте внимательно документацию. Там стоит звездочка - т е надо читать сноску, а в сноске написано: (*) В зависимости от настроек сервера QUIK, величина может выражаться в лотах или в штуках. Уточните единицы измерения у обслуживающего брокера.
Вопрос к разработчиками. Как я понимаю, глубина стакана - это размер очереди заявок на сервере биржи. -------------------- Регулируется ли на сервере КВИК брокера размер транслируемой очереди т е глубина стакана. Еесли да , то какая максимальная, если нет , то какая максимальная на сервере биржи. Спасибо
Quikos написал: Подскажите, возможна ли остановка и запуск скрипта из другого скрипта ?
К примеру так: первый скрипт следит за соединение Квика - если соединение разрывается, то первый скрипт останавливает второй скрипт. Первый скрипт ждет пока восстановится соединение и как только соединение восстанавливается первый скрипт запускает второй скрипт.
скрипт - это всего лишь текст на языке луа. Почему не можете все написать в одном романе, зачем второй?
Nikolay написал: Не лучшее решение, оно блокирует исполнение кода. Запросы где время ответа неизвестно, лучше решать через очереди задач ожидания. Потоков в lua нет, но, как минимум, не блокировать весь код. Если, например, скрипт обрабатывает много инструментов и потоков данных, то ждать после каждого заказа - много времени пройдет пока до последнего дойдет. Или надо что-то другое постоянно контролировать, пока по другому инструменту заказ сделали. То что долго идет ответ - это не повод для уже работающих инструментов ждать.
Не от хорошей жизни, данные не всегда успевают. Поскольку, как вы заметили, потоков в луа нет, пришлось на каждый инструмент(тикер) сделать по скрипту. Ну а в отдельном скрипте без базы никаких задач нет. К стати, пока ни при какой нагрузке ожидание начала загрузки больше секунды-двух не встретил, а базы подгружается в основном либо при запуске, либо на открытии сессии. Как и повода жаловаться на SetUpdateCallback. Хотя в основном как колбэк используется OnAllTrade, база больше для расчетов.
В квике можно создавать сколько угодно потоков При этом надо использовать общий глобальный стек. В нем решены проблемы синхронизации для main и для любых других. ---------------- я приводил пример с пулом потоков Использовал его для обработки колбеков по 200 инструментов. в итоге максимальное количество потоков которые были открыты пулом составило 12. Никаких проблем с синхронизацией не было.