Например, если мы получаем trans_reply.status == 3 (заявка выполнена), то какое время мы получаем в OTR: - время сервера биржи в момент выполнения заявки? - время сервера брокера, когда он получил ответ от сервера биржи? - что-то ещё? Аналогичный вопрос, если заявка не выполнена. В описаниях этой функции об этом ни слова...
Я сейчас перед вечерней сессией делал заявку на покупку и в OnTransReply получил ответ "не выполнена", время при этом такое: 19:00:04.224811. Но я эту заявку повторял несколько раз и в следующий раз получил ответ "выполнена", время при этом такое: 19:00:04.377904.
А это я получал содержимое стаканов и отмечал время на моём ПК, которое я перед этим синхронизировал с NTP сервером: 19:00:04.621937 19:00:04.746745 19:00:04.932090 19:00:05.319159
И только в 4-й раз, т.е., когда время было 19:00:05.319159, моя заявка появилась в стакане. Как можно понять такую задержку? Может ли кто-то задерживать мои заявки намеренно?
Сейчас сталкивался с тем, что выставляю в Квике 11.0.0.92 заявку, она принимается, но не отображается в стаканах и в табл. заявок. При этом в андроид приложении она отображается в активных заявках. Перезагрузил Квик - не помогло. Помог перезаказ данных...
Потом в стаканах вдруг вместо 40 строк стало отображаться только 4 (2 на покупку, 2 на продажу), а в андроид приложении отображались все 40 строк. Через несколько секунд стали отображаться все 40 строк. Пока писал, это повторилось (отображались 2 строки). Брокер ВТБ. Не знаю, что думать...
В файле "Интерпретатор языка Lua.pdf" в разделе "3.12.3 Особенности получения значений Таблицы текущих торгов" написано: === • Автоматически из скрипта Lua с помощью функций ParamRequest или CreateDataSource, при включенной настройке Рабочего места QUIK «Исходя из настроек открытых пользователем таблиц» (меню Система / Настройки / Основные настройки..., раздел «Программа» / «Получение данных»).
Терминал QUIK автоматически заказывает параметры, необходимые для корректного расчета лимитов, при включенной настройке Рабочего места QUIK «Исходя из настроек открытых пользователем таблиц» (меню Система / Настройки / Основные настройки..., раздел «Программа» / «Получение данных»). ===
Но фразы «Исходя из настроек открытых пользователем таблиц» в меню Система / Настройки / Основные настройки / Программа / Получение данных не видать...
Когда приходит инфо, напр., по OnAllTrade, там присутствует направление сделки: B - покупка и S - продажа. Я заметил, что, когда я продаю, то в этой сделке стоит B, когда покупаю, - S. А как сервер биржи определяет напр. сделки? А если моя заявка будет по текущей цене, а не лимитная, то тогда направление будет другое? От вида встречной ко мне заявки (лимитная или по маркету) это направление зависит?
Чтобы при приёме заявок раньше встать в очередь, я синхронизирую часы Виндовс по атомным часам и проверяю это в сервисах типа time100.ru. Но всё равно возникают погрешности. Напр., утром эти сервисы, как правило, говорят (да ещё и каждый по-своему), что у меня точное время, а в 19 часов, что мои часы спешат на 0.3 сек... Можно ли как-то узнавать время точнее, напр., с точностью 5-10 мсек? Например, получая его с сервера брокера? Или более точно установить его в Виндовс? Регион - Ставропольский край (не сам Ставрополь).
К примеру, в приложении ВТБ Инвестиции для Андроида сделали показ объёмов заявок в биржевом стакане более мелким шрифтом внутри серого прямоугольничка со скруглёнными краями. Для этого в Квике есть свободное место в столбцах, соответственно, "Продажа" и "Покупка". Это бывает нужно, если хочешь отменить или перенести все заявки по данной цене. Сейчас для этого я заглядываю в Андроид приложение.
Если хочется получать скриптом информацию по каждой сделке с выбранными акциями, обязательно ли в загруженном конфигурационном файле иметь таблицу обезличенных сделок по всем этим акциям? Почему для этого недостаточно в скрипте подписаться через Subscribe_Level_II_Quotes на получение этой информации? Если не создавать табл. обезл. сделок, то скрипт получает только инфо по OnQuote...
Очень не удобно быбирать компании в подокошечке "Доступные инструменты". Оно такое маленькое, что потянешь за бегунок, и проскакиваешь неизвестно куда. И поиск в этом окошечке работает очень странно. То ли виснет, то ли неправильно ищет...
Иногда запускаю квик, выбираю Система/Загрузить настройки из файла..., и квик зачем-то открывает каталог Виндовс Изображения. Закрываю окно с этим каталогом, повторяю предыдущую операцию, и открыватся правильный каталог QUIK_VTB. Загадка природы!
Также иногда отсутствует звук при завершении заявки (слышен только звук сделки).
В таблице заявок неплохо было бы сделать множественное выделение заявок согласно юзеринтерфейсу Виндовс: щёлкая левой кнопкой при нажатой клавише Ctrl для добавления к выделенному этой строки и нажатой клавише Shift для добавления к выделенному диапазонов строк.
PS: представляю сколько будет возмущённых жалоб юзеров из-за безвинно удалённых заявок в результате ошибок в программировании. :-)
Если в таблице заявок по строке с активной заявкой дважды щёлкнуть, то появляется окно типа "МБ ФР: Т+ ETF: Ввод заявки" и можно редактировать её параметры. Это работает нормально. Но если это окно вызвать щелчком правой кнопки по строке с заявкой и выбрать из контекстного меню "Заменить заявку", то ещё до появления этого окна заявка отменяется. Если юзер передумает редактировать заявку, то ему придётся воссоздать эту заявку и он потеряет очередь в биржевом стакане.
Не знаю, чья это ошибка, возможно, серверной версии Квик, которой пользуются брокеры. Я у брокера ВТБ торгую этим фондом с тикером LQDT. Это единственный фонд, на который нет даже комиссии биржи (если брокер ВТБ). Я давно пишу и звоню в ВТБ, чтобы исправили ошибку: иногда примерно в одной сделке из 100 берётся комиссия биржи. На следующий день эту комиссию возвращают, но всё равно из-за неё есть потеря денег. В последнее время эту комиссию не брали на дневной сессии, а брали очень редко при сделках после 21 часа. А сегодня прямо с утра её стали взимать, да ещё и довольно часто. Неужели программисту трудно вставить в код условный оператор: если тикер == LQDT, то комиссию биржи не берём?
Кто скажет, зачем столько условий для проверки, что заявка выполнена (qty == 0, 2 мл. бита флагов == 0)? Чем эти условия отличаются? Может быть, когда qty == 0, но флаги говорят, что заявка ещё не выполнена, деньги от продажи акций ещё не вернулись на счёт? Меня интересует, как скрипту узнать, что эти деньги от продажи акции вернулись на счёт и их можно снова использовать для покупки?
Почему-то значения BID и OFFER в моей программке не соответствуют положению дел в стакане котировок, который я смотрю в Quik и в приложении для Андроида. Такое впечатление, что в скрипт сначала передаются старючие значения и только через несколько минут эти значения совпадают с тем, что показывает терминал и приложение. Программка такая: