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

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

Страницы: Пред. 1 ... 3 4 5 6 7 8 9 10 11 12 13 След.
std::recursive_mutex и cинхронизация потоков в Lua
 
Цитата
Вячеслав написал:
используется разные структуры lua_State*
Это вот откуда такой вывод?
Цитата
Вячеслав написал:
и сразу ли значение, присвоенное в одном lua_State станет доступно в другом
Конечно сразу. Вы и сами легко это можете проверить, добавляя в колбеке за раз 100 (или тысячу) элементов одном потоке, и тут же вычитывая их в main(). Новые элементы будут видны в main еще до завершения колбека.
std::recursive_mutex и cинхронизация потоков в Lua
 
Цитата
Николай Камынин написал:
т е на какой момент извлеченный в main элемент будет первым в таблице, если колбеке есть вставка первого элемента?
Таблица, как известно, в QLua всегда целостна. Не зависимо от многопоточного обращения.
Целостна в том смысле, что в любой момент времени количество элементов, вычитываемое через получения размера в таблице гарантированно совпадает с реальным количеством элементов на момент вычитывания значения счётчика.

Потому не очень понятен ваш вопрос.
Если на момент обращения элемент в таблице уже размещён - то произойдёт корректное обращение к элементу таблицы, если же элемент еще не размещен - то его и не  будет!

Единственное тонкое место, как известно из предыдущих обсуждений, состоит лишь в том, что если в одном потоке у нас есть
  t[1] = 5  (поток 1)
а в другом потоке есть
  x = t[1]    (поток 2)
и они происходят "одновременно", то возможны варианты:

а) x = t[1] приведёт к ошибке, т.к. на самом деле в потоке 1 этот код еще вовсе не начал выполняться и элемент еще не добавлен; однако тогда и счётчик нам скажет, что количество элементов еще 0 (если это первый элемент)

б) после выполнения x = t[1] не будет ошибки, но в x окажется nil; это произойдёт в том случае, если в потоке 1 уже успеет добавиться новый элемент в таблицу с индексом 1, однако само значение ему еще не присвоится; (хотелось бы отметить, что само состояние таблицы будет при этом совершенно корректным! т.е. количество элементов в таблице равно 1, это единственный элемент равен nil)

в) в результате выполнения после  x = t[1] в x будет значение 5, т.е. к моменту выполнения этого кода в рамках потока 2 в потоке 1 уже успел и новый элемент в таблицу добавиться, и значение ему присвоиться.

Собственно классика многопоточности )
Переподключение к серверу: автоматическое или из Lua
 
Николай, вы очень невнимательны. Исходники лежат рядом, каждый может легко их прочитать и собрать самостоятельно, во избежание.
Ну и, конечно, любопытно, что вы скажете о разных торговых приводах, которые авторы принципиально распространяют только в бинарном виде.
Трендовые линии привязка к одному графику
 
В смысле одно окно графика, но переключаете инструмент при помощи рядом стоящей таблицы со список инструментов и якоря, верно?
Крякозябры в Quik Junior, Проблема в терминале
 
Какой шрифт выбран для таблиц в "Настройки - Основные"?
Документация по Qlua
 
Обновляемый список изменений в QLua.
Подскажите, что можно "почистить" в квике
 
У меня есть пожелание к ARQA: сделайте опцию "не загружать обновление для файла Winros.exe"
Файл это в самом деле не нужен, но напоминания про наличие обновлений только из-за него - задалбывает.
Спасибо.
std::recursive_mutex и cинхронизация потоков в Lua
 
Что касается "Потокобезопасных функции для работы с таблицами  Lua" - то они несколько про другое. Во всяком случае они не реализуют тот алгоритм, который приведён в примере.
Отличие будет в том, что не будет лочения потоков на время обработки всех элементов таблицы.
Подходит ли это автору вопроса - не понятно. Он ведь лочит вокруг всего цикла обработки, а не вокруг обработки одного элемента.
std::recursive_mutex и cинхронизация потоков в Lua
 
Цитата
Вячеслав написал:
Вопрос в том, прочитаются ли данные в потоке main сразу после вставки их в таблицу в обработчике callback'а
Да, прочитаются. Ну с поправкой на sleep(50), конечно, т.е. "сразу" может случиться через 50 мс, после фактического добавления.
std::recursive_mutex и cинхронизация потоков в Lua
 
Вячеслав,
то как вы делаете, на мой взгляд в общем-то идеально. Не могу только понять при чем тут версия квика, от неё точно ничего здесь не зависит.

Идеальность в том, что вы, с одной стороны, полностью блокируете работу с таблицей из другого потока на все время добавления в неё элемента, с другой стороны полностью блокируете добавление в таблицу на всё время перебора имеющихся элементов внутри main(). Т.е. у вас всегда гарантированно в цикле обрабатывается некое полностью статичное состояние таблицы. И это само по себе безусловно здорово.

Однако, есть важный момент. Состоит он в том, что на всё время обработки таблицы (в main()) у вас фактически полностью блокирована работа call-back'ов при наступлении события OnParam(). И тут уже возникает вопрос про эффективность такого алгоритма. В самом деле: видно, что вы пытаетесь сделать "очередь событий" в таблице, и события из этой очереди разгребаете как бы в отдельном потоке main().
Но в вашем алгоритме вы не можете положить в таблицу очередное событие из OnParam() до тех пор, пока не обработали все имеющиеся события в таблице. Т.е. у вас получится, что в таблицу попали какие-то события (в виде элементов таблицы), вы их в main() обрабатываете - и на всё время этой обработки у вас OnParam() тупо залочен, QUIK стоит и ждёт, пока вы в main() обработаете все имеющиеся элементы таблицы.
Не видно, чтобы тут случился выигрыш-то от двухпоточности. У вас всё равно каждый поток постоянно ждёт другой поток, в том числе и поток добавления событий.
Add/SetLabel
 
Теперь понятно, спасибо.
Изменение размера шрифта заголовков таблиц
 
Ну т.е. в "тёмной теме" шрифт и высоту заголовка изменить нельзя, верно?
Недоработочка это, как мне видится.
Зарегистрируйте, пожалуйста,  пожелание: "желаю настраивать высоту заголовков окон в тёмной теме (обычных и "лоченых" окон раздельно) и шрифт (размер, цвет) шрифта заголовка окна"
Различие архива фортс и данныз квика, одна и таже сделка проходит по разному времени
 
QUIK вам отдал время отсечением милисекунд, а биржа в архиве - округлила.
Тут бы бирже вопрос задать, зачем они так сделали.
пересечениэ мувингов
 
Вычислять мувинги руками по данным всех сделок, например, а не брать с графика.
Переподключение к серверу: автоматическое или из Lua
 
После потери связи можно настроить автопереподключение штатными средствами.
А чтобы терминал автологинился при запуске (или перезапуске в случае краха) можно использовать скрипт на Lua с небольшой доп. библиотекой.
Add/SetLabel
 
Цитата

Sergey Gorokhov написал:
> При успешном завершении вызовов Add/SetLabel метка будет сохранена в     хранилище,
вот и ответ
Сергей, на что это ответ?
Какая-то метка будет сохранена. Что входит в понятие "метка"  - совершенно не ясно.
Трактовать это можно как угодно, в том числе и так, что "параметры метки будут сохранены, а когда придёт время отрисовки - прочитаем картинку из файла".

Так что вы опять не ответили точно на вопрос, поэтому я и пишу, что ответа - нет.
Добавьте наконец индикатор ХЕЙКЕН АШИ в базовые индикаторы Квика
 
DMITRYQ,
быть может вас не затруднит перед отправкой сообщения нажимать кнопочку "Просмотр" и предварительно смотреть, что же получается в итоге?
Читать ваши сообщения крайне сложно, а значит они не будут прочитаны.
Изменение размера шрифта заголовков таблиц
 
А в "тёмной теме"?
последнее обновление
 
info.chm - это файл справки.
Add/SetLabel
 
Позвольте встряну.
Sergey Gorokhov, в вашем ответе нет главного: когда можно удалять BMP-файл c диска, но при этом быть уверенным, что метка уже будет отрисована и удаление файла не помешает отрисовке?
последнее обновление
 
Цитата
Вячеслав написал:
Расход компьютерных ресурсов, при включении "Темной темы":
График = 20% - 30%
Стакан: 10% - 30%
Параметры компьютера можно?
У меня так себе старенький целерончик 2ГГц двухядерный - и проблем такие нет.
Что за [ FORTS ] [ 90112 ] " SQLProxy ограничение борьбы с наводнениями " .Кто сталкивався?
 
Значит вы его кода-то не туда вставили.
Предлагаю создать платное приложение-тренажер на базе quik, Для мобильных устройств. Я бы купил.
 
iQuik + QUIK Junior -- может самое оно

Что касается "я бы купил" - стоит озвучить сумму имеющихся у вас денег. Ну чтобы было понятно стоит ли продолжать разговор.
SetTableNotificationCallback, множественное срабатывание
 
Цитата
Вячеслав написал:
swerg  ,
Такой способ должен быть, т.к. WinAPI поддерживает 3 типа сообщений для каждой кнопки мыши:
WM_LBUTTONDOWN
WM_LBUTTONUP
WM_LBUTTONDBLCLK
Первое - это нажатие кнопки, второе - отпускание и третье - двойной клик.
В общем, технически это возможно (только важно не забыть установить стиль окна CS_DBLCLKS).
Вы правы. Такие сообщения есть.
Но вот сюрприз: при клике двойном мышью в ваше приложение последовательно приходит 4 сообщения:
  WM_LBUTTONDOWN
  WM_LBUTTONUP
  WM_LBUTTONDBLCLK
  WM_LBUTTONUP
Ну кто бы мог подумать, правда?
Несколько очень простых пожеланий по стакану / таблице котировок
 
Про рыночные заявки - это к брокеру.
Или вы на тестовом сервере?
Что за [ FORTS ] [ 90112 ] " SQLProxy ограничение борьбы с наводнениями " .Кто сталкивався?
 
Цитата
Андрей Мурга написал:
Как ограничить количество заявок в секунду?
От вашего робота?
Вставьте в код Sleep(200) после отправки транзакции - и вы отправите максимум 5 заявок в секунду.
FORTS SL TP по рынку
 
Так работает биржа. Именно про биржевую "программу" вам сказал брокер.
А цену следует устанавливать в рамках между минимальной и максимальной ценой (эти цены транслируются в параметрах каждого инструмента)
Закрытие позиции, нет индикации, Есть только значки покупки и продажи, непонятно какая позиция закрыта, если позиций несколько
 
Вопросы надо задавать предметно.
Вдруг всплыли слова "вариационная маржа" и как она рассчитывается.
Ждём новых подробностей.
Закрытие позиции, нет индикации, Есть только значки покупки и продажи, непонятно какая позиция закрыта, если позиций несколько
 
Цитата
Вопрос:
Вопрос:
Мне вот что любопытно: вы сделаете то, что вам предлагают? или будете опять вопросами сыпать?
SetTableNotificationCallback, множественное срабатывание
 
Конечно же такого способа нет.
Ведь когда вы первый раз нажимаете для на кнопку мыши - еще никто не знает будете ли вы делать двойной клик. Никто даже не знает отпустите ли вы её.
Главные проблемы QUIK, Которые не решаются и почему все уходят на аналоги
 
Цитата
Если кто-то вносит предложения - его тролят те-же самые диспетчеры под специально созданными для этого никнеймами.  
Господин хороший, вы снова несёте ахинею, обчитавшись эти ваши интернеты.
Зачем вы это делаете?
Закрытие позиции, нет индикации, Есть только значки покупки и продажи, непонятно какая позиция закрыта, если позиций несколько
 
Цитата
rozmin написал:
На близком вам картофельном примере: купил мешок за 300, продал за 400. Вы когда-нибудь вставали мешками в лонг?
С точки зрения биржевой терминологии, когда вы купили мешок по 300 - вы встали в лонг.
Когда продали по 400 - закрыли позицию.

Есть к вам предложение, даже два:
1) Посчитать результирующий прибыль/убыток для описанного вами сценария.
2) Написать сценарий покупки двух мешков по разным ценам и продажи их по одной (для начала) цене. А после для этого сценария также вычислить прибыль/убыток, но для двух случае:
  а) когда вы первым продаёте первый мешок
  б) когда вы первым продаёте второй мешок.
Результат прибылей/убытков вариантов а) и б) - сравнить.
Тогда будет смысл продолжать разговор, хотя, уверен, вы и сами всё сразу поймёте, что вам тут говорят.
Закрытие позиции, нет индикации, Есть только значки покупки и продажи, непонятно какая позиция закрыта, если позиций несколько
 
Господин хороший,
с вами здесь культурно общаются, терпеливо разъясняя элементарные вещи, хотя и могли бы послать читать учебники.
Вы же не желаете даже попытаться понять того, что вам пишут.
Это верный путь к успеху.
Базовые настройки и скорость работы
 
Что-то мне подсказывает, что ваш процессор загнётся, если на каждую котировку вести пересчёт.
Ну и главное: ну будут у вас цифры мотаться туда/сюда как стакан - что это даст? не понятно мне. Уж не "прибыль", возникшую на десятую долю секунды вы таким образом попытаетесь "зафиксировать" ? ;)
Базовые настройки и скорость работы
 
А как иначе вы себе это представляете? вопрос лишь в периоде расчёта, а это компромисс между разумностью и загрузкой процессора.
QUIK v.7.1.0.381, Баги
 
A.T.,
рекомендую перейти на таблицу "состояние счёта".
Она одна скорее всего заменит вам и клиентский портфель, и купить/продать, и таблицы лимитов по бумагам и деньгам.
Сделать тикер (он же код бумаги) основным параметром на всей платформе и просьба
 
A.T., есть простое предложение:

а) или подавать заявки всегда мышью (во многих окнах это доступно: и из стакана котировок, и с графика), тогда вы не будете промахиваться

б) или при открытии формы заявки где вы видите не тот инструмент - нажать Esc, выбрать нужный в таблицах/графиках и снова F2.
Сделать тикер (он же код бумаги) основным параметром на всей платформе и просьба
 
Кстати, что-то в этом пожелании есть.
В самом деле, вот я попробовал ограничить список бумаг через "Заказ данных". Выбрал только 3 бумаги:



Однако даже после перезапуска QUIK в форме заявки всё равно есть все бумаги. Хотя я вроде как настроил список "Получаемые ценные бумаги":



Я пытался и данные заново перезаказать (кстати, после этого только что настроенный фильтр бумаг оказывался вовсе выключенным!!!) и перезапускать и проч.
Но всё равно все бумаги были в форме заявки.

Может это как-то неправильно и тут можно рассмотреть какое-нибудь пожелание по поводу ограничения списка отображаемых бумаг только теми, которые вообще заказаны?
Сделать тикер (он же код бумаги) основным параметром на всей платформе и просьба
 
Цитата
Окно ввода заявки (F2). По умолчанию в нем появляется бумага, выделенная в таблице текущих торгов (Quotes). Во всяком случае, я так настроил.  Если я ошибся, например просматривал график одной бумаги, а в Quotes была выделена другая, то по F2
Мне лично вот что здесь не понятно:что вы предлагает? следить за вашим взглядом при нажатии F2? ну вот правда.
"Я так настроил" и "если ошибся" "то мне не нравится" - и что с этим предлагаете делать?
Опция настройки скрывания или изменения строки с отображением времени сервера, датой и серверами с портом, Для экономии места в рабочей области квика за счет еще одной строчки
 
Кстати, было бы полезно сделать соответствующую панельку инструментов: кружок про подключение к серверу и время сервера. Это была бы в самом деле полезная панелька. Вместе паровозика.
SciTE
 
t={{"a","b"},{1,2,3,4}}
table.foreach(t, function (k,v) print(table.concat(v, ";")) end)
Вывод таблицы
 
Можете привести при мер, что должно в файле содержаться? не понятно
Проблема с циклом
 
Приведите полный текст скрипта, пожалуйста.
Защита соединения
 
Здесь как бы про настройку прокси, но указано какие порты использует QUIK
http://sberbank-cib.ru/products/gm/it/proxy.wbp

Интересно, кстати, соответствует ли данная информация действительности?
Нет связи с сервером, Соединение установить не удалось. Возможно, Вы используете ключи, которые не зарегистрированы на сервере.
 
Логин, случайно, не русскими буквами используете?

Попробуйте вот эти рекомендации для решения проблемы "ОШИБКА Ключ сервера или пользователя не найден"
SciTE
 
Уточните, как именно вы сейчас выводите значения, что они у вас оказываются в SciTE?
ОЧЕНЬ медленный запуск Quik
 
Сергей, вы бы не хамили, а уточнили, какой именно способ из озвученных решает задачу.
Если вы про параметр -clear - спасибо, конечно, но хотелось бы вам рассказать (лишь в предположении, что вдруг вы не знаете) - программы в Windows традиционно запускаются при помощи ярлыка. Не из  командной строки, где можно каждый раз дописывать разные занимательные параметры.

Или вы предлагаете прямо в ярлык прописать -clear и радоваться? но тогда на кой этот log-файл вообще нужен, если с ним сделать быстрый запуск QUIK невозможно? давайте тогда вовсе сделаем опцию по отключению сохранения этого бесполезного файла.

Мне вот любопытно: жалобы на медленный старт идут постоянно, много лет.
Но разработчики с удовольствием их читают и продолжают радоваться всё новым сообщениям о медленном запуске, вместо решения данной проблемы без применения ключей.
В чем смысл этой радости - мне решительно не понять.
QLua 7.1, справка
 
Было сказано, что исправите что-то в документации.
Есть в ней ошибка, нет в ней ошибки - не понятно.
Так что "как раз" - не надо, пожалуйста.

Теперь понятно, спасибо.
Дополнительные настройки таблицы лимитов по бумагам, Цветовые настройки
 
Алексей, кстати: вместо "Лимитов по бумагам" - откройте таблицу "Состояние счёта".
Она более наглядная (заменяет собой "Лимиты по бумагам" и "Лимиты по деньгам") и раскраска в ней уже есть готовая (да еще и настраиваемая)
Дополнительные настройки таблицы лимитов по бумагам, Цветовые настройки
 
Как раскрасить таблицу QUIK под свои нужды? теперь вы знаете.

Страницы: Пред. 1 ... 3 4 5 6 7 8 9 10 11 12 13 След.
Наверх