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

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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 20 След.
QUIK 8.13 индикаторы перестали загружаться из подпапок., Раньше было лучше...
 
Не смог найти ветку на форуме, но точно помню, что писал в поддержку предложение запускать из папки LuaIndicators только файлы  *.lua
Они отписались, что в 8.13 это реализовали... Явно отсюда ноги растут.

Простите меня, люди!  :oops:

А еще обнаружил поиском такую ветку форума с запросом 2-х летней давности: https://forum.quik.ru/forum10/topic3758/ (это не моё!!)
Не срабатывает OnMoneyLimit при изменении значения locked
 
Цитата
Вячеслав написал:
2) Прошу добавить в пожелания - добавление полей "Доступно" и "Всего" из таблицы позиций по деньгам в коллбек OnMoneyLimit.

Эти поля элементарно вычисляются. Как - указано в справке info.chm, раздел "Позиции по деньгам":

«Всего» = «Текущий остаток» + «Текущий лимит»
«Доступно» = «Всего» - «Заблокировано»

Так что добавлять их в коллбек OnMoneyLimit смысла нет.
Злополучные Коды Клиента....
 
Что не так с кодами клиентов?
Оптимизация QUIK
 
Цитата
Андрей написал:
Вот откуда мне узнать за 1 минуту, не читая справки, (что нормально)

Нет, ненормально.
Это не дота и не танчики.
Это игра на реальные деньги. На ваши реальные деньги.
Договора с банками тоже не читаете?

Почитайте материалы в сети или сходите на курсы к брокеру.
Ошибка создания заявки. [GW][32] "Цена сделки вне лимита"
 
http://www.h2t.ru/blog/7620.html
https://smart-lab.ru/blog/297231.php
короче гугл штука мощная
Ошибка создания заявки. [GW][32] "Цена сделки вне лимита"
 
https://forum.quik.ru/forum10/topic2365/
Событие получения данных всех таблиц и графиков после подключения к серверу
 
Цитата
Старатель написал:
Очевидно же, что когда говорят об "актуальности данных", речь про данные, которыми располагает сервер QUIK. Или для вас это не очевидно?

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

Нет передёргивания.
Сервер данными может и располагает, но до клиента они будут ехать еще какое-то время.
И? какие ваши предложения?
Пример см. в предыдущем сообщении.

Цитата
Старатель написал:
Про ТТТ я писал в отдельной теме: важно понимать свежие ли значения мы имеем или это мусор, оставшийся со "вчерашнего вечера".

Для ТТТ достаточно поставить настройку "Очищать в новый день" или "в новую сессию", что-то такое, забыл название. Тогда недоехавшие данные будут или отсутствовать или равны 0.
Событие получения данных всех таблиц и графиков после подключения к серверу
 
Цитата
Nikolay написал:
Да, актуальность потока данных не контролируется. Но вот на момент заказа вполне (это ведь точная отметка по оси времени).
Супер.
Я подключился к серверу в 10:00. "Заказал данные". Сервер лил мне их 1 минуту (да, я оптимист). В 10:01 до меня доедет маркер "на момент заказа данные загружены".
Т.е. я имею данные на момент 10:00, и начинаю на их основании отправлять заявки. Хотя сейчас 10:01 и рынок уже совсем другой.

Я ведь всё описал по вашему алгоритму? ничего не упустил?
[BUG] Пропадает текст в таблицах
 
О! Локализовал проблему!
Парень, реально ты крут  :!:
Функция CalcBuySell
 
Книжку твою никому неизвестную ты для доктора пишешь. Ему, быть может, будет любопытно к истории болезни приобщить.
Более никому этот бред не интересен.
Функция CalcBuySell
 
Цитата
Владимир написал:
никогда никому не показывалось, так что брехать про "говорилось" не следует.

Именно про этот код тебе, идиоту со стажем, и говорилось: с таким написанием - огребёшься. Огрёбся. Но продолжаешь изворачиваться, т.к. говно иначе не умеет.
Средства разработки многопоточных скриптов в QUIK., OS_Quesha, свидетельство регистрации в Роспатенте № RU 2020612905. Бесплатная для некоммерческого использования.
 
Цитата
Программирование давно и далеко ушло от Фортрана на БЭСМ-6. И даже от Кернигана с Ричи.
....Убедительная просьба

s_mike@rambler.ru, вы всерьез пытаетесь разговаривать с говном как с человеком??
Удивительные люди :)
Событие получения данных всех таблиц и графиков после подключения к серверу
 
Цитата
Михаил Понамаренко написал:
Теперь я понял, в чём дело, когда брокер утром включает сервер, подключаются все запущенные терминалы клиентов.
Соответственно, сервер брокера не может отдать быстро эти данные, т.к. одновременно, много желающих их получить.

А вот это очень здравое рассуждение.  :!:
Функция CalcBuySell
 
Цитата
Владимир написал:
Оказалось, моя и совсем дурная: вместо a[i][1][5] стояло a[i[1][5]]. Раз двадцать глядел на это место - не видел!

Тебе, дурачку, давно уже сказали, что и сам ты говно, и код твой такой же. Причем именно про это место и говорилось.
Но, разумеется, в твоих руках из жопы виноват нормальный язык Lua, кто бы сомневался.
Про руки твои и голову - это медицинский факт.
Функция CalcBuySell
 
Цитата
Андрей написал:
PS
КАК ЖЕ МНЕ ДОРОГ ЭТОТ LUA

Зачем ты мучаешься?
Переходи на QPILE
Средства разработки многопоточных скриптов в QUIK., OS_Quesha, свидетельство регистрации в Роспатенте № RU 2020612905. Бесплатная для некоммерческого использования.
 
Поддерка, вы спам от КатСервиса уберёте уже из этой темы?!!
Особенно смешно (если не сказать грустно) долгое наличие этого сообщения выглядит после совершенно бестолкового наезда на одного из грамотных пользователей форума за "рекламу" в сообщениях.
Средства разработки многопоточных скриптов в QUIK., OS_Quesha, свидетельство регистрации в Роспатенте № RU 2020612905. Бесплатная для некоммерческого использования.
 
Да, ты медицинский факт, это и так уже всем понятно.
Оптимизация QUIK
 
Создать окно -> Состояние счета
QUIK не отправляет заявку, в которой цена представлена переменной
 
Цитата
Андрей написал:
И вообще, я не понимаю, зачем надо было выбирать глючный LUA

В чем его глючность? Вот как языка?

Цитата
Андрей написал:
в ущерб тому же несчастному питону

Питона тогда почти не было, когда в QUIK прикручивали Lua. Во всяком случае - он еще не взлетел так массово.

Цитата
Андрей написал:
Это при том, что LUA изначально не предназначен для точных вычислений и пр. математики (за исключением арифметики).

Могли бы пояснить эту фразу? в чем заключается "неприспособленность" для указанного?
Средства разработки многопоточных скриптов в QUIK., OS_Quesha, свидетельство регистрации в Роспатенте № RU 2020612905. Бесплатная для некоммерческого использования.
 
Цитата
Владимир написал:
строка есть кусок памяти, размер которой не известен и определяется по заранее специфицированному значению терминатора

Такое может существовать только в голове дурачка с крайне ограниченными познаниями.
Какая версия луа используется по умолчанию
 
F9 - Lua скрипты - смотрим умолчательные версии
Событие получения данных всех таблиц и графиков после подключения к серверу
 
Цитата
Старатель написал:
Цитата
swerg написал:
Ну есть собатия прогрузки позиций после начал торгов / клирингов. И что они вам дают?
Именно об этом и спрашивает ТС.

"Но как вы догадались, Холмс?!"

Цитата
Старатель написал:
Надо разделить 1) обезличенные данные и 2) данные, относящиеся непосредственно к портфелю: ордера, сделки, лимиты, позиции, стопы.
Последние как раз будут статичны статичны и актуальны в начальный момент. Это и есть точка отсчёта, от которой будет отталкиваться скрипт.

Почему позиции будут точкой отсчета??
Торговый скрипт, очевидно, обязательно опирается на данные графиков и торговые данные для принятия решений. Позиции учитывает наверняка, но опираться только на них??
Событие получения данных всех таблиц и графиков после подключения к серверу
 
Цитата
Старатель написал:
swerg, даже у биржи есть понятие "законченности загрузки данных".
https://forum.quik.ru/messages/forum10/message51109/topic5698/#message51109

Ну есть собатия прогрузки позиций после начал торгов / клирингов. И что они вам дают? Как это связано с торговыми данными?
Событие получения данных всех таблиц и графиков после подключения к серверу
 
Цитата
Nikolay написал:
Даже бесконечный поток реального времени, если разделить на дискретные пакеты, уже позволяет контролировать загрузки пакетов

Ну и зашибись. Едут пакеты. Контролируется, что они целые. Не целые перезаказываются.
Но знаний об "актуальности" эти никак не добавляет.
Событие получения данных всех таблиц и графиков после подключения к серверу
 
Цитата
Nikolay написал:
OnParam - это всего лишь какая-то реализация, предложенная разработчиками.

Что значит "реализация предложенная"?
В рамках обсуждаемого вопроса - изменился(лись) параметр(ы) на бирже - изменений приехали на сервер - приехали на терминал - вызов OnParam.
Какая еще реализация может быть?

Цитата
Nikolay написал:
Вопрос получения данных и их актуальности на этом форуме уже много лет обсуждается.

Потому как нет никакой "актуальности данных". Обсуждать просто нечего. Много лет это пытаюсь объяснить.
Пожелания по развитию форума
 
Модераторы не нужны.
Пусть каждый видит всё как есть.

PS
Самое смешное - это как отдельные граждане не теряют надежды урезонить дурачка. Их бы благородную энергию да на что полезное :)
Событие получения данных всех таблиц и графиков после подключения к серверу
 
Цитата
Nikolay написал:
Необходимо либо иметь метод в API дающий ответ, что все загружено, либо колбек по факту события загрузки.

"Всё" никогда не бывает загружено. Вот простой факт, который надо заставить себя принять - и жизнь сразу наладится.
Все, что мы можем сделать - это быть достаточно близко к реальным текущим данным на бирже.
Все, что мы можем делать - это стараться максимально приближаться к получению в терминале реальных текущих данных на бирже, уменьшать временной лаг.

Это всё. Ничего другого нам не дано.
Событие получения данных всех таблиц и графиков после подключения к серверу
 
Цитата
Михаил Понамаренко написал:
Но данные могут загрузиться, как быстрее, так и позже.
Может у кого есть более подходящее решение?

Я каждый раз предлагаю исходить из одной простой штуки. А как вы сами "на глаз" определяете, что данные загружены?
Вот ровно это и реализуйте в скрипте. Это будет самое надёжное. И вот почему.

QUIK (как система) построен именно для визуального отображения данных в терминале. И скрипты навешаны уже поверх этой парадигмы. Именно поэтому и надо все придумки в скриптах делать исходя из наблюдений "а как я сам принимаю решение глядя в терминал в таком-то случае?".
(потому, кстати, никого и не парил приезд одних и тех же сделок по 5 раз, пока это не вылезло в скриптах; этого просто никто не видит!)

С одной стороны, объективного понятия "загружены все данные" - просто нет. Ну в самом деле: на бирже изменилась цена - все равно терминалы получают это с задержкой. А т.к. в биржевых данных все время что-то меняется - то фактически терминал все время биржу как-то "догоняет". И задача построения торговой инфраструктуры лишь в том, чтобы данные в терминале догоняли биржу с как можно меньшим временным лагом.
Для этого брокер запускает сервер до торгов, с запасом. Для этого терминал есть смысл подключать к серверу брокера с запасом.

Как вы в терминале определяете, что "данные актуальны"? Ну вы же на глаз это как-то можете определить, ведь так?
Например, по прекратившемуся "мельтишению данных". Значит, терминал более-менее всё накопленное прокачал и сейчас получает on-line данные.
Вероятно, в скрипте есть смысл повторить эту логику: например, за какой-то через какой-то интервал времени сравнивать количество данных по каким-то сущностям: количество свечей на графике, количество изменений цены по какому-то инструменту, количество изменений стакана. Что еще у нас "мультишит" в терминале при подключении?
Ну и как только между очередными замерами количество изменившихся данных станет меньше какой-то экспериментально подобранной величины - принять решение "данные актуальны".

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

Или стоит задача попасть в движняк самого начала торговой сессии?
Тогда, на самом деле, надо применять "инфрастуктурный" метод, сокращая время прокачки данных и уменьшая тайм-аут: толще канал интернета, быстрее компьютер, бодрее брокер. И стартовать по времени.
Но: при таком решении надо отдавать себе отчет, что периодически по разным причинам будут происходить неудачные сделки  из-за неактуальности данных в терминале в момент принятия решений роботом. И от этого точно никуда не деться!! Потому как любые способы "контроля" будут оттягивать время начала работы робота, а мы хотим попасть именно в самое начало торгов, потому затягивание для нас неприемлемо. А проблемы иногда точно будут: у провайдера сбойнуло оборудование - просел интернет; у брокера захлебнулся сервер в дни особого движняка; ну и т.д.
QUIK не отправляет заявку, в которой цена представлена переменной
 
На документацию тут ссылаться не совсем точно, ибо вообще не очевидно, что строка числового значения "500" подходит, а "500.0" - не подходит. Хотя это одно и тоже числовое значение, представленное строками.
Перехват событий формы и отмена заявки
 
Цитата
Артем написал:
Алексей, бинарный плагин для Lua
используйте С
У Lua есть специальный API для работы из С и для запуска бинарных библиотек

Как это поможет решить задачу в её изначальной постановке?
QUIK не отправляет заявку, в которой цена представлена переменной
 
Цитата
Андрей написал:
Принцип программирования - что запросил то и получил здесь нарушен.

Ничего здесь как раз не нарушено. Запрошена цена - её значение возвращается как double. Все логично.

Цитата
Андрей написал:
В таблицах по фьючу РТС явно целочисленные значения приводятся, да и биржа тоже целые транслирует

Это не так. Вы путаете транслируемые и отображаемые значения. Просто QUIK в таблицах при отображении учитывает еще параметр "точность цены", отображая лишь то значение цифр после запятой, которое соответствует указанному параметру.

Цитата
Андрей написал:
Я понимаю, что в недоязыке LUA непредусмотрено целочисленных значений

И это не так. Добавление .0 после чисел с типом double появилось в Lua5.3, где есть отдельный целочисленный тип.
Но он здесь не применим, т.к. бывают инструменты с дробной ценой. Так что цена универсально возвращается как double, а tostring() приписывает при конвертации .0 в таким аргументам (при целом значении).

Цитата
Андрей написал:
Вопрос к разработчикам

Вопрос к разработчикам ровно один и простой: неужели до сих пор нельзя сделать так, чтобы параметр Transaction["PRICE"] можно было задавать числом, а не строкой?!
Добавить аргумент param в колбек OnParam
 
Цитата
BlaZed написал:
изменились параметры по инструменту
А пожелание ... в коллбек приходили измененные параметры.

Ровно это и приходит.
Или требуются новые значения параметров?
Снимать активные заявки одной понятной клавишей, в таблице заявок, В талице заявок
 
Цитата
A.T. написал:
Очень мучает момент, когда нельзя оперативно снять заявку одним простым нажатием Delete.

Clrl-D
https://broker.vtb.ru/login/quik/guide/#:~:text=Снятие%20активной%20заявки&text=Снять%20заявку%20можно%­20также%2C%20нажав,Ctrl%2BD%20или%20кнопку%20меню
QUIK не отправляет заявку, в которой цена представлена переменной
 
Надо точно ответить на простой вопрос: какое именно значение имеет переменная PRCStr  ?
Ну если вам требуется решить проблему, конечно.
QUIK не отправляет заявку, в которой цена представлена переменной
 
Цитата
Андрей написал:
Цена во втором случае высчитывается нормально

Что такое нормально? Что выводится в окно сообщений, какое значение имеет PRCStr  ?
Средства разработки многопоточных скриптов в QUIK., OS_Quesha, свидетельство регистрации в Роспатенте № RU 2020612905. Бесплатная для некоммерческого использования.
 
Цитата
Владимир написал:
Ну, а уж про порчу переменных у меня просто слов нет - как можно изуродовать ассемблерный JMP, чтобы он стал выдавать такую херню?!

Местный дурач0к по прежнему не читает документацию.

Цитата
Second, the control variable is a local variable automatically declared by the for statement and is visible only inside the loop.
A typical idiot's mistake is to assume that the variable still exists after the loop ends
Не отображать в настройках Lua-индикатора слишком большое количество линий
 
Цитата
Евгений написал:
Есть способ ускорить

Знаешь - делись.
Что бы это значило?
 
ресурсы GDI
Таблица состояние счета, закрытие позиции., Ошибка 167.
 
Цитата
Старатель написал:
swerg, Вы слишком поверхностно читаете темы. Не стоит просто так отвечать, на последнее сообщение ветки.

Читаю я подробно, вы ошибаетесь.
Ошибка при запуске Луа-скрипта
 
Цитата
Spadar написал:
А каким образом тогда использовать функции библиотеки (например, CreateDataSource())? Или из-под командной строки это невозможно?
Невозможно, конечно. Все эти функции - часть терминала, а не просто одной библиотеки.
В самом деле: какое получение данных возможно, если вы даже к серверу не подключены в командной строке?
Таблица состояние счета, закрытие позиции., Ошибка 167.
 
Цитата
Старатель написал:
Надеюсь теперь вашего тестировщика уволят: он ничерта не делает.

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

Я про человеколюбие :)
Брокер видит стоп-заявки?
 
Разумеется. Коль скоро они переносятся на след. день, а значит хранятся в какой-то базе.
Возможно нет готового удобного интерфейса для брокера, но технически информация, очевидно, доступна.
Формирование списка Lua-скриптов
 
+ Изменение размера окна списка скриптов. С сохранением размера при перезапуске.
+ Поле поиска скрипта по названию (или может даже лучше фильтрация списка, как сделано в других списках)

Косность и дубовость интереса (или разработчиков?) - просто поражает воображение!
Добавить типы линий Линия с подсветкой
 
Кр. - сестр. таланта.
Но не вашего.
Индикатор торговой сессии
 
Цитата
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
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 20 След.
Наверх