От ответа "Стандартная библиотека Lua не поддерживает UTF-8." до "Ваше пожелание зарегистрировано" - прошло два дня. Видимо за два дня Lua стал поддерживать "UTF-8"
Давайте делать ставки, что эти криворукие никогда того не реализуют, просто потому что - судя по ответу, даже не понимают, как у них все это работает )))
Че за дела такие ? Запрашиваю таблицу CretaeDataSource по TQBR GAZP по минутному интервалу. У меня в Терминале данные идут с 18 декабря 2024 по естественно текущий момент, вывожу пришедшие данные и после даты свечи 2025:03:25 (25 марта) идет сразу 4 апреля 2025 - в терминале такая же фигня данные отсутвуют, Хотя на 5 минутках такой проблемы нет.
nikolz написал: Еще очень прикольно, что есть API и его раздают брокерам, а их клиентам - фиг вам, хотя за все платят клиенты. ----------------
Все как обычно - при наличии возможности отсекать лишних от кормушки. Я всю аналитику поэтому перевел на данные с API MOEX и Python. К сожаления для автоматизации торговли этого не достаточно
А API MOEX позволяет получать доныне о сделках в реал-тайме или только исторические данные ?
Я делаю подписку CreateDataSource и SetUpdateCallback условно по TQBR GAZP по дневному интервалу. Пока что все OK - данные начинают приходить. Потом я делаю отписку от CreateDataSource и SetUpdateCallback вызывая "Close". На удивление пока что все тоже хорошо, данные больше не обновляются и не приходят.
ТЕПЕРЬ я опять подписываюсь на TQBR GAZP по дневному интервалу. И вот хрен - никаких данных уже не приходит.
Разработчики - прошу подтвердить или не подтвердить - что это ожидаемое поведение или баг.
Подскажите, кто, как решает или решил - "проблему" с авторизаций через СМС ? Ну то есть торговый день закончился, произошёл дисконнект, бот в работе, и ожидает данные, наступило утро и чтобы опять подключить Квик нужно проснутся получить СМС на телефон и ввести его ручками в КВИК.
SetUpdateCallback - как определить что начали приходить Не исторические данные., SetUpdateCallback - как определить что начали приходить Не исторические данные.
Вы ошибаетесь. Это не время пришедшей свечи. Это время пришедшей сделки. Если свеча в момент пришедшей сделки не закрыта, то это текущая свеча, вне зависимости от времени сервера. Но если Вы проверяете время сделки, а с временем текущей свечи. Собственно параметр Size и позволяет определить есть новая свеча или это текущая.
Да Вы батенька фантазер. Про вас даже песня есть "фантазер ты меня называла" :)
Я еще не допустил не одной ошибки, а Вы только и делаете, что пишите ошибающуюся чушь. :)
Еще раз повторю приходит время свечи, разуйте глаза, если они у вас заклеились - " 20:00" - это время трехминутной свечи. Вы Квик вчера первый раз что ли открыли ?
Поэтому я и написал, что "Тоже не вариант, так как свечи могут приходить немного с опозданием и в итоге на границе времени интервала - эти свечи будут отбрасывается." на предложение "еще проще сравнивать время свечи и текущее время компа."
funduk написал: Вы имеете ввиду что-то, отличное от Lua команды dofile?
Я имею ввиду - "Возможно ли с помощью одного Lua скрипта, запустить другой ?" То есть один Kua скрипт запущенный в цикле проверял бы если другой Lua скрипт не запущен - то запустить его.
SetUpdateCallback - как определить что начали приходить Не исторические данные., SetUpdateCallback - как определить что начали приходить Не исторические данные.
SetUpdateCallback - как определить что начали приходить Не исторические данные., SetUpdateCallback - как определить что начали приходить Не исторические данные.
nikolz написал: еще проще сравнивать время свечи и текущее время компа.
Тоже не вариант, так как свечи могут приходить немного с опозданием и в итоге на границе времени интервала - эти свечи будут отбрасывается.
Вы ошибаетесь. В любом случае свечи истории - это свечи прошедших торговых дней. и как минимум не могут быть в предыдущем отсчете.
В чем же я ошибаюсь то :) Это факт - онлайн свечи могут приходить с примерно с 3 секундной задержкой. Вчерашний пример который я заметил на тестировании: 3 минутная свеча:
-время пришедшей свечи в callback 20:00, время сервера 20:01:34 (пока все нормально, треxминтная свеча укладывается в диапазон сервера с 20:00:00 - 20:02:59, поэтому эта свеча считается онлайн) -время пришедшей свечи в callback 20:00, время сервера 20:02:47 (пока все нормально, треxминтная свеча укладывается в диапазон сервера с 20:00:00 - 20:02:59, поэтому эта свеча считается онлайн) -время пришедшей свечи в callback 20:00, время сервера 20:03:02 (ТОЛЬКО ЧТО Пришедшая свеча все еще находится в 3 минутном диапазоне с 20:00:00 - 20:02:59 ,НО время сервера уже вышло из этого диапазона, то есть Квик или сервер брокера прислал запоздавшую сделку на несколько секунд, и если сравнивать это временем сервера, то получается, что эта сделка относится к исторической свече, хотя по факту - эта последняя онлайн сделка присланная с сервера)
Так что повторю без всяких ошибок: К сожалению Тоже не вариант, так как свечи могут приходить немного с опозданием и в итоге на границе времени интервала - эти свечи будут отбрасывается.
SetUpdateCallback - как определить что начали приходить Не исторические данные., SetUpdateCallback - как определить что начали приходить Не исторические данные.
SetUpdateCallback - как определить что начали приходить Не исторические данные., SetUpdateCallback - как определить что начали приходить Не исторические данные.
Придумал :) По Volume. Первоначально заполняется при вызове SetUpdateCallback - заполнятся таблица CreateDataSource, я беру размер таблицы и Volume из последней свечи это таблицы и сохраняю в отельную переменную. После того, как начали вызывается колбеки SetUpdateCallback - проверяю в каждом вызове:
- размер таблицы - если размер таблицы совпадает, то проверяю Volume, если Volume совпадает, значит новых данных еще нет. -Если размер таблицы совпадает, но Volume нет, то в данной колбеке - были первые новые данные. - ну и если размер таблицы Не совпадает, то точно пришли новые данные и даже уже новая свеча.
SetUpdateCallback - как определить что начали приходить Не исторические данные., SetUpdateCallback - как определить что начали приходить Не исторические данные.
Saturn написал: Подскажите пожалуйста, вот я вызываю SetUpdateCallback - предположим по Газпрому по дневному интервалу и в колбек начинают приходить данные, но сначала приходят исторические данные, а не реальные онлайн изменения цены сделки. И вот вопрос: а как мне тогда определить, что данные которые начали приходить в колбек - уже реальные изменения цены купли/продажи - чтобы я на них реагировал, а не исторические данные ?
Использовать счетчик свечей не предлагать - так как он естественно работать не будет: потому что ну пришел индекс последней Дневной свечи к примеру 100 датированная сегодняшним днем, начала пришли за половину дня исторические данные, а потом начали приходить онлайн изменения - НО индекс свечи все равно будет тот же - так как день еще не прошел.
используйте OnParam или OnAllTrade
Не хочу, у меня уже настроено все под SetUpdateCallback - вот только единственная проблема есть описанная. С OnParam или OnAllTrade - есть еще большая проблема - потому что там нужно самому формировать данные в интервалы, а это вообще капец неудобно, потому что нужно учитывать ночные переходы времени, выходные, праздники - геморрой короче один только.
SetUpdateCallback - как определить что начали приходить Не исторические данные., SetUpdateCallback - как определить что начали приходить Не исторические данные.
Подскажите пожалуйста, вот я вызываю SetUpdateCallback - предположим по Газпрому по дневному интервалу и в колбек начинают приходить данные, но сначала приходят исторические данные, а не реальные онлайн изменения цены сделки. И вот вопрос: а как мне тогда определить, что данные которые начали приходить в колбек - уже реальные изменения цены купли/продажи - чтобы я на них реагировал, а не исторические данные ?
Использовать счетчик свечей не предлагать - так как он естественно работать не будет: потому что ну пришел индекс последней Дневной свечи к примеру 100 датированная сегодняшним днем, начала пришли за половину дня исторические данные, а потом начали приходить онлайн изменения - НО индекс свечи все равно будет тот же - так как день еще не прошел.