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

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

Страницы: Пред. 1 ... 8 9 10 11 12 13 14 15 16 17 18 ... 25 След.
Исключение незавершенных свеч
 
Если я ничего не путаю, то строго говоря значения могут приезжать не только в последнюю свечу.
Но точно это нюанс подзабыл
Значение переменной в предыдущую секунду, Как узнать разницу цены пришедшего тика с ценой предыдущего тика?
 
Разрешаю!
CreateDataSource, не делает квик сильнее
 
Цитата
Anton написал:
При открытии ТОС ничего же не виснет.
Вот когда откроете полторы тысячи тиковых TOC - тогда и будет смысл говорить про "ничего не виснет".
Защита от кросс сделок
 
Вы ведь понимаете, что никак.
На то они и анонимные торги, что никто не знает чьи это заявки. Более того, по одной цене могут стоять как ваши заявки, так и других трейдеров. Соответственно вы не знаете именно заявки будет мэчить биржа: ваши с вашими или ваши с "чужими".

В общем рецепт тут только один: не "заранее проверять", а продумать стратегию что делать в случае обнаружения кросс-сделки и стратегию эту реализовать в скрипте.
Тем более, что между "проверкой" и реальным выставлением заявки все может повернуться так, что часть заявок других трейдеров будет снята и результат проверки окажется недействительным, т.е. опять получим кросс. С которым опять надо будет бороться как-то.
Хозяйке на заметку: OnStop(), или "Зачем вы это делаете, мистер Андерсон?"
 
Как известно, QLua работает вот по такой модели: https://quik2dde.ru/viewtopic.php?id=16
В этой схеме не прописан один быть может не совсем очевидный нюанс, хотя понятно, что иначе и не сделать.

Сначала выполняется "скрипт целиком" ([BODY] на схеме). Выполняется он и в том смысле, что в глобальное пространство имён Lua-машины добавляются определённые в Lua-скрипте функции.
Далее QLua перебирает все объекты глобального хранилища, и находит там функции с предопределёнными названиями. Для всех найденных известных функций-callback'ов "в уме" QLua проставляет признак: "для этого события callback определён, а для этого - нет".

После, когда возникает какое-либо событие, которое должно привести к вызову callback-функции, сначала проверяется: а для этого события с этом скрипте мы нашли требуемую callback-функцию после выполнения [BODY]? Нашли - вызываем её, не нашли - не вызываем.

Соответственно, если мы в нашем Lua-скрипте определяем глобальную функцию OnStop только в тот момент, когда первый раз вызовется OnInit - то это будет уже "поздно". QLua уже пометил себе, что функция OnStop - не найдена, вызывать её не следует.

Вот и вся разгадка.

Осталось лишь узнать мнение начальника транспортного цеха, зачем он использует столь изощрённый синтаксис. Какова хитрая цель? Быть может все будет полезно?
Отличие модификаций Quik у разных брокеров, использование одного Quik для разных брокеров
 
Как одним терминалом подключаться к разным брокерам
https://iquik.ru/2012/03/20/iquik-how-to-connect-to-different-brokers-account/
Отправка транзакций
 
Несколько минут??
Что за брокер? на каком рынке? в какое время? все время в течение дня??
Расскажите, чтобы туда не ходить
Многопоточность в Луа
 
На 512 инструментов выставляете заявки?
Не работает .dll в новой версии QUIK, просит увеличить файл подкачки
 
Цитата
Александр Волфовиц написал:
Обновился QUIK до 8-й версии и "обрадовал" ошибкой:

На предыдущей версии работали 6 скриптов безо всяких проблем.
Судя по тексту ошибки - проблема в библиотеке luacdll
Её или вы, или кто-то явно сделал на основе примера вот отсюда
https://quik2dde.ru/viewtopic.php?id=18

Для QUIK 8 вашу библиотеку надо пересобрать для платформы x64. По указанной ссылке уже обновлены сборки и все требуемые файлы для возможности собирать библиотеки для x64 платформы, с архиве с исходниками.

Только надо именно вашу библиотеку пересобрать! Из ваших исходников! Если вы сами её делали - возьмите исходники, обновите файлы проекта и lib-файлы и пересоберите.
Если делал кто-то другой - обратитесь к нему, пусть из исходников пересоберёт на основе примеров по указанной ссылке.
Многопоточность в Луа
 
Цитата
Олег написал:
SleepWaitForSingleObjectWaitForMultipleObject и т.д.При выходе потока из спячки ОС Windows вернет управление в тот же самый поток или в любой другой свободный поток из рабочего пула потоков Windows?
Разумеется по выходу из указанных функций произойдёт возврат ровно в этот же поток, иначе и не может быть.

Вообще вы куда-то не туда роете, не теми какими-то вопросами задаётесь.
Вы расскажите чего хотите добиться - возможно, вам предложат решение. Это будет более плодотворный путь.
Многопоточность в Луа
 
Цитата
Олег написал:
Программа QUIK создает потоки для каждого скрипта напрямую через CreateThread или берет из пула потоков, предоставляемых Windows.Например, через QueueUserWorkItem ?
Windows предоставляет всем нам единственную функцию для создания потоков: CreateThread
Так что в любом случае поток создаётся в итоге через неё.
QUIK 8.0
 
Добавил в архив тестовый пример DLL на C++ для QUIK 8 (x64)
Там же можно взять .lib-файл для сборки своих проектов

https://quik2dde.ru/viewforum.php?id=14
Как узнать id поданной заявки?
 
Цитата

Цитата
Андрей написал:
Также, хотел бы спросить, не будет ли убытка в случае операции подачи заявки и практически моментального снятия?  
Этот вопрос следует задать вашему брокеру.
Обязательно уточнив про какой рынок идёт речь (каким типом инструментов в торгуете).
Общего ответа нет, зависит от брокера и рынка (биржи)
2-x кратный расчет индикатора
 
Не отвлекай, люди работают.
Если они еще и на форумах будут отвечать по каждой проблеме - прикинь как всё затянется  :what:  
Индикатор(написанный мной) не передает данные на экран в текущем времени, Проблемс
 
У вас ошибка в 17-й строке.
Снятие заявок
 
Речь про подключение к QUIK через клиентский терминал?

Если так, то не понятно зачем это может быть нужно. Клиент QUIK настолько далеко от шлюзового подключения к бирже сервером, что что-либо тут контролировать вы всё равно не сможете.
Порядок вызова Callback OnOrder, OnDepoLimit / OnFuturesClientHolding, Порядок вызова Callback OnOrder, OnDepoLimit / OnFuturesClientHolding
 
Дмитрий, вас тут зачем-то обманывают.
Правильный ответ такой: робот должен корректно работать при абсолютно любом порядке срабатывания call-back'ов.
Потому как порядок в разное время и у разных брокеров и на разном вашем канале может быть совершенно любым (особенно во время большой активности на рынке).
И когда ваш робот в критический момент не сработает (не закроет позицию, например) из-за того, что вы заложились в нём только на определённый порядок срабатывания call-back'ов - то вам тут не помогут и даже не посочувствуют. Лишь скажут, что "мы не обещали определённый порядок".

Так что расслабляться в этом месте не следует, при проектировании робота следует исходить лишь из того, что call-back'и могут сработать в абсолютно любом порядке. Скажу больше, в некоторых случаях некоторые call-back'и могут вовсе не сработать (да, и такое бывает, пусть и не часто), но и в таких случаях робот должен либо корректно жить, либо ярко зажигать красную лампочку для ручного вмешательства и принятия решения и том, что делать с набранными позами здесь и сейчас.
Работа на Мас
 
В инструкции указана необходимость скачивать msvcp60.dll
Что-то мне подсказывает, что это уже не актуально.
Если это так - удалите из инструкции информацию про msvcp60.dll, плиз
Одинаковые линии трендов на разных окнах графиков
 
Регистрируйте
Одинаковые линии трендов на разных окнах графиков
 
Открыто несколько окон графиков с одним инструментом (но разными тайфреймами, например). А хоть и с разными инструментами.
Есть ли возможность рисовать линию тренда в одном окне и чтобы такая же ровно линия тренда появлялась в другом окне?
А при изменении таких линий тренда - ест ли возможность, чтобы в других окнах они тоже изменялись?
Взаимодействие OLua и Lua под Виндой
 
Цитата
s_mike@rambler.ru написал:
Стати, ни разу не получилось увидеть, как скрипт qlua, будучи запущенным из терминала, крутился бы на другом ядре. Возможно, дело в установленных ос или железе.
цикл, запущенный в main(), вполне себе крутится на отдельном ядре. (Есть нюанс куда его приткнет ОС, но в любом случае отдельно)
Очередность срабатывания OnTransReply, OnOrder, OnTrade
 
Цитата

Вопрос: возможна ли ситуация, что вначале будет снят ордер с trans_id = 107 и лишь затем снимется ордер с trans_id = 102?
ответ очевиден - да, порядок вызовов OnOrder будет произвольный.
История торгов
 
Цитата
_sk_ написал:
А как-нибудь смёржить в терминале последние 3000 свечей с сервера и имеющиеся в наличии накопленные данные нельзя? Задача не кажется сложной.
в общем случае весь график полностью может быть изменен на сервере (при сбоях в расчетах), поэтому мержить сложно быдет.
хотя, если просто заменять данными с сервера, а то, чего нет на сервере - просто не трогать...
Получить заново таблицу обезличенных сделок
 
Зарегистрируйте пожелание:
"Передавать в function OnAllTrade(alltrade) признак 'перезаказано заново' " (т.е. в тот вызов OnAllTrade, который случился первым после нажатия кнопки "перезаказать" - должен передаться признак "всё поехало заново")
Или пожелание в такой вариации:
"Сделать новую call-back функцию, которая будет вызываться в момент нажатия кнопки "перезаказать".
Ошибка при запуске Луа-скрипта
 
Цитата
диман ааппаампма написал:
Драсте у меня такая ошибка вылетает при запуске луа, ребят помогите, а то писец, край мне )
https://github.com/patchua/QL
Срочно! Исправтье логическую ошибку при вводе заявки, Потерял на этом деньги
 
Вы попали в Палату Регистрации.
Ваш звонок очень важен для нас.
отображение текущих чистых позиций, Проблема с определением текущих позиций
 
Реальные торги или демонстрационные?
Срочно! Исправтье логическую ошибку при вводе заявки, Потерял на этом деньги
 
Беда в том, что эта настройка ни от чего вас не страхует. Вы на нее слишком надеетесь.
если требуется гарантированная торговля без плеча - надо требовать у брокера отключение для вас такового.
тогда контроль будет на стороне сервера и вы точно не залезите в заемные средства
Спот- Ошибка при попытке транзакции?, Спот- -недопустимый символ
 
бывают арки античные. Они вызывают восхищение своим изяществом и совершенством.
а бывают арки новосибирские, не обладающие ни одниб из указанных достоинств.
мне одно любопытно: неужели не шевелится от таких советов "у нас что-то не то в этом месте"?
судя по постоянству подобных предложений костылей - нет, не шевелится
CalcBuySell()
 
И на что будет влиять функция-настройка?
как раз параметр - необязательный! - верный и понятный путь
StratVolat.dll, StratVolat.dll для версии 7.10.0.76?
 
ftp.quik.ru/public/updates/7.6/StratVolat_2.1.50_upd.zip
Внутренняя ошибка: Cannot find utCompiledCode record for this version of the uninstaller, проблема с удалением программы Trading System Quick
 
Просто переключите язык интерфейса на русский.
OnTrade(trade) шалит, выполняется больше одного раза для сделки
 
Цитата
Imersio Arrigo написал:
С версии 7.0 вроде это началось
Точно, я уж и забыл, всё ж написано
https://quik2dde.ru/viewtopic.php?id=30
OnTrade(trade) шалит, выполняется больше одного раза для сделки
 
У меня есть смутное воспоминание, что от версии это не зависит.
Зависит от "удачи", которая, кстати, может и отвернуться.
Так что настоятельно рекомендуется чуть поправить скрипты  - и жить счастливо.

Ну в самом деле, это ж просто:
Код
tbl_trades = {}

fuction OnTrade(trade)
if tbl_trades[trade.trade_number] ~= nil then
    exit
end
tbl_trades[trade.trade_number] = 1
...

Код для примера, названия полей не проверял, надо верные названия подставить, здесь просто идея.
Окно Доступные скрипты (lua), нехватает кнопок перемещения скриптов «вверх, вниз»
 
причем Drag'n'drop перемещение должно быть
Срочно! Исправтье логическую ошибку при вводе заявки, Потерял на этом деньги
 
Цитата
A.T. написал:
Пожалуйста, учтите также момент, что если я ввожу объем заявки больший, чем рассчитано max (по органичению "Исходя из собственных средств"), нужно автоматически, молча и без предупреждений выставлять max, а не то, что ошибочно вписано.
Если вписан меньший или равный max объем, то соответственно то, что вписано.

По-моему это логично и очевидно. Иначе смысл флажка "Исходя из собственных средств" не учитывается вовсе.
Абсолютно не логично.
Вы сами в явном виде прописали объем.
Исходя из чего вдруг вписанная вами явно цифра в заявке должна игнорироваться??

Про что галка "исходя из собственных средств" - уже сказано.
OnTrade(trade) шалит, выполняется больше одного раза для сделки
 
Да, OnTrade может вызываться несколько раз для одной сделки.
Как и OnOrder для одной заявки.
Это нормально, скрипт должен быть готов к этому.
Время изменения стакана получаемого через OnQuotes, OnQuotes - есть ли возможность параллельно с чтением стакана, получить точное время торгового сервера, когда он возник/изменился
 
"Лента" - это "Все сделки"?
Время изменения стакана получаемого через OnQuotes, OnQuotes - есть ли возможность параллельно с чтением стакана, получить точное время торгового сервера, когда он возник/изменился
 
Рождается на сервере брокера. Выше был намек.
ну и потом, это ведь очевидно, что сервер и терминал общаются по протоколу, отличному от биржевого.
хотя бы потому, что бирж много, а терминал - один.
Несколько QUIK путают файлы настроек.
 
Парни, у вас очевидный косяк
квик позволяет запускать несколько терминалов, но только из разных директорий. Это вы различаете.
но пути в диалогах открытия/сохранения файлов имеют как бы глобальные настройки на любую копию терминала. И это косяк!
надо сделать так, чтобы квики из разных папок имели свои устоновки пути, куда сохраняются/открываются файлы.
но! Это должно быть опционально! Возможно
Срочно! Исправтье логическую ошибку при вводе заявки, Потерял на этом деньги
 
Зачем себя так мучать двойными кликами, если вы на самом деле подтверждение игнорируете.
Просто отключите его
F9 - Торговля - Заявки - снять Запрашивать подтверждение

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

А т.к. вы сами явно указали объём заявки - то на такой объем заявка и выставилась. Так что не понятно опять же, что не так.
(хотя, чтобы этот объём вообще как-то учелся - требуется еще нажать кнопку, где рассчитан максимум; это если мы про режим Т+2 говорим; вы как-то про режим не уточнили, а ведь акции торгуются в разных режимах)
Срочно! Исправтье логическую ошибку при вводе заявки, Потерял на этом деньги
 
Как-то с трудом верится.
для акций, если вводится цена - признак рыночная обязательно снят.
либо таки заявка осталась рыночная.

Ну и потом: не понятно какую вы указали цену. Может вы указали цену "хуже" рынка - тогда, разумеется, заявка исполнилась по рынку.

Тут бы нужно показать таблицы заявок и таблицы сделок, где видно цены заявок и сделок, чтобы разговор был предметный.
Несколько QUIK путают файлы настроек.
 
Студенты, как раз, позволяют. Что как бэ намекает.
Проигрывание мелодии - информация о сделке., Оповещение пользователя о редких событиях в скрипте - как решаете эту задачу.
 
Кстати, а зачем проигрывать звуки при помощи скриптов, если для сделок есть готовое событие в терминале? или эти события не срабатывают для сделок/заявок, получившихся из скриптов?
Падение QUIK с General Protection Fault, DestroyTable() и Clear() при вызове из функции обратного вызова для обработки событий в таблице
 
А точно требуется вызывать DestroyTable для таблицы, связанной с окном, которое и так закрывается?
Я думал таблица при этом автоматически уничтожится.
Или это не так?
Срочно! Исправтье логическую ошибку при вводе заявки, Потерял на этом деньги
 
Какого рынка заявка?
Проигрывание мелодии - информация о сделке., Оповещение пользователя о редких событиях в скрипте - как решаете эту задачу.
 
https://quik2dde.ru/viewtopic.php?id=79
вроде такой метод не останавливает скрипт, но точно не помню, надо перепроверить
Вопрос по отображению одинаковых графиков в квике
 
Лучше всего воспользоваться опцией "показывать на всех"
Пропадает глобальная таблица _G
 
main начинает работать слишком быстро, похоже :)
ускорили и оптимизировали, как всегда удачно
Страницы: Пред. 1 ... 8 9 10 11 12 13 14 15 16 17 18 ... 25 След.
Наверх