Таблциа Истории

Страницы: Пред. 1 2 3 4 След.
RSS
Таблциа Истории
 
Цитата
Старатель пишет:
Цитата
Sergey Gorokhov пишет:
Цитата
Старатель пишет:
Биржа отправляет всем брокерам одинаковые параметры? Т.е. временные "срезы" для всех брокеров одни?
нет, разные
Получается на бирже ведётся таблица истории для каждого подключённого к ней аккаунта?
Этот вопрос уже к бирже а не к нам.
 
в общем. как я понял - биржу можно сравнить с файлообменником с возможностью докачки. Врядли история ведётся по каждому брокеру. Логичней  было бы предположить, что есть некий общий биржевой кеш, в структуре биржевого потока - есть поля временных меток. Квиковский сервер мониторит пакеты с биржевого шлюза, и если есть изменение метки времени в структуре пакета - принимает данные. Брокеры - являются подписчиками на информацию теперь уже через квиковский сервер - тут уже - единый биржевой поток разбирается на части и к реально биржевым данным примешиваются чисто исторические - свечи и т. д. Теперь уже брокер является своего рода биржевым каналом (через выделенный квиковский сервер) и главным арбитром предоставления информации. Старина квик же - делает тоже самое, что и квиковский сервер с биржей: есть изменение метки времени в структуре пакета - есть и так называемы срезы в OnParam и другие коллбеки. серверное время стоит на месте - значит квик замирает. Если разница между изменениями превышает квантум - запрос на пропущенные данные. (что нетрудно понять/заметить потому как квик, как ошпаренный потом начинает "догонять" информацию на графиках и даже в стаканах котировок).

tech support - поправьте где я ошибся.
 
Цитата
sam063rus пишет:
в общем. как я понял - биржу можно сравнить с файлообменником с возможностью докачки. Врядли история ведётся по каждому брокеру. Логичней было бы предположить, что есть некий общий биржевой кеш, в структуре биржевого потока - есть поля временных меток. Квиковский сервер мониторит пакеты с биржевого шлюза, и если есть изменение метки времени в структуре пакета - принимает данные. Брокеры - являются подписчиками на информацию теперь уже через квиковский сервер - тут уже - единый биржевой поток разбирается на части и к реально биржевым данным примешиваются чисто исторические - свечи и т. д. Теперь уже брокер является своего рода биржевым каналом (через выделенный квиковский сервер) и главным арбитром предоставления информации. Старина квик же - делает тоже самое, что и квиковский сервер с биржей: есть изменение метки времени в структуре пакета - есть и так называемы срезы в OnParam и другие коллбеки. серверное время стоит на месте - значит квик замирает. Если разница между изменениями превышает квантум - запрос на пропущенные данные. (что нетрудно понять/заметить потому как квик, как ошпаренный потом начинает "догонять" информацию на графиках и даже в стаканах котировок).

tech support - поправьте где я ошибся.
Я не буду комментировать описание поведения биржи, так как вопрос явно к специалистам биржи.
Могу только порекомендовать ознакомиться с технической биржевой документацией если таковая есть в публичном доступе
 
Цитата
Старатель пишет:
Уделив этому вопросу некоторое время (на самом деле, потратив кучу времени), я пришёл к выводу, что созданный колбек по какому-либо параметру из ТТП через SetUpdateCallback всё равно будет вызываться при изменении любого параметра по данной бумаге. Т.е., получим тот же самый OnParam, только по конкретной бумаге. Но после получения колбека всё равно нужно проверять, был ли вызван этот колбек по изменению отслеживаемого параметра.

А теперь внимание вопрос: Sergey Gorokhov , почему вы не сказали, что для решения данного вопроса создание колбека через SetUpdateCallback не имеет смысла?
скорей всего, SetUpdateCallback - это просто обёртка в виде метода CreateDataSource таких двух функций, как один из квиковских коллбеков (OnAllTrade, OnParam) + функция getParamEx. При том, что сравнения на старый-новый параметр в SetUpdateCallback похоже совсем не предусмотрено. Она просто полагается на то, что по коллбеку в так называемом "срезе" приходит целая линейка ТОЛЬКО изменённых параметров. Что, разумеется - в корне неверно бо как параметры - не меняются в одночасье (в силу тех или иных причин).
 
Цитата
sam063rus пишет:
SetUpdateCallback - это просто обёртка в виде метода CreateDataSource таких двух функций, как один из квиковских коллбеков (OnAllTrade, OnParam) + функция getParamEx
Добрый день.
Datasource не имеет ничего общего с перечисленными колбеками. Это посчитанные на стороне сервера интервалы.
 
Цитата
Michael Bulychev пишет:
Цитата
sam063rus пишет:
SetUpdateCallback - это просто обёртка в виде метода CreateDataSource таких двух функций, как один из квиковских коллбеков (OnAllTrade, OnParam) + функция getParamEx
Добрый день.
Datasource не имеет ничего общего с перечисленными колбеками. Это посчитанные на стороне сервера интервалы.
спасибо за информацию. буду знать.
 
Michael Bulychev,

вопрос несовсем по теме: при приходе OnParam - идёт цикл перебора всех возможных параметров по инструменту (максимум: около 150 итераций на инструмент) с помощью getParamEx - вопрос: какая существует (и существует ли) альтернатива? Всякие CreateDataSourse-"ы" - не предлагать.
 
и второй вопрос. с точки зрения архитектуры - как бы Вы поступили: иметь 150 разных всевозможных коллбеков (по параметру на коллбек) или один НО!, с указанием изменившегося параметра?
 
Цитата
sam063rus пишет:
всевозможных коллбеков (по параметру на коллбек)
причём, в каждом каждом коллбеке - можно запускать целую очередь обработчиков. Либо, создать один, как указано во втором варианте (и тоже можно повесить целую очередь обработчиков). В общем, как уже написал - вопрос по архитектуре.
 
Добрый день.
Кроме перебора нужных параметров пока вариантов нету.
 
это не ответ. Очевидно мне надо повторить:
1. существует ли ещё более быстрая альтернатива OnParam?
2. есть определённый паттерн проектирования. Причём описанные мной варианты встречаются оба в одинаковой степени. На Ваш взгляд, что лучше: 150 разных коллбеков или один НО! с указанием изменившегося параметра.
3. имеет ли смысл делать класс по отслеживанию изменений всех параметров, чтоб потом, используя его, как "контекст" наследовать от него более мелкие классы, заточенные на определённые коллбеки? Потому как в наследнике - всё равно будет происходить излишний расход ресурсов на копирование родителя (и получение его контекста, причём всё это для каждого экземпляра)
 
Цитата
sam063rus пишет:
1. существует ли ещё более быстрая альтернатива OnParam?
имелось ввиду getParamEx
 
1. Более быстрая для чего? Для получения каких данных?
2. Лучше с какой точки зрения? Можно и из одного OnParam породить еще 150 колбеков вызвав нужные функции.
3. Если речь идет о Ваших разработках, то только Вам решать как сделать лучше. Тут я точно ничего подсказать не могу.
Вы мне задаете вопросы о том как лучше спроектировать Ваше приложение, о котором мне ничего не известно.
 
OnParam и getParamEx разные функции в принципе. первая служит для нотификации об изменении ТТП, вторая для того чтобы забрать эти значения. Сравнивать их не совсем правильно.
 
Цитата
Michael Bulychev пишет:
2. Лучше с какой точки зрения? Можно и из одного OnParam породить еще 150 колбеков вызвав нужные функции.
далеко не лучше. классы на то и придумали, чтоб избавиться от рутины. К тому же инструментов может быть далеко не 150 (это только их максимум параметров), В итоге, я бы посмотрел потом на этот OnParam и его "километры" :)))

вопросов больше нет.
 
Цитата
Michael Bulychev пишет:
OnParam и getParamEx разные функции в принципе. первая служит для нотификации об изменении ТТП, вторая для того чтобы забрать эти значения. Сравнивать их не совсем правильно.
я уже написало ниже, что не так выразился.
 
Как будет выглядеть это дело вкуса и личного ощущения прекрасного. Все равно в итоге все сведется к вызову 150 функций.
Но не обязательно километр кода. Достаточно строчек 20. Подписка на изменение и затем в OnParam цикл по функциям-подписчикам.
 
Цитата
Michael Bulychev пишет:
и затем в OnParam цикл по функциям-подписчикам
именно так я и сделал в своём коде

а также добавил класс, для удобной работы с OnParam и другими коллбеками
 
и, насчёт километров:
at this time: 1120 строк, 54кБ
 
Цитата
Michael Bulychev пишет:
Достаточно строчек 20
чот не получилось у меня))) -> цикл в классе с getParamEx - не прокатил, если Вы об этом
 
Цитата
Старатель пишет:
Цитата
Sergey Gorokhov пишет:
Цитата
Серж пишет:
А пока данное пожелание не реализовано, разумно ли вместо OnParam использовать функции CreateDataSource и SetUpdateCallback на каждый из отслеживаемых параметров ? Не окажет ли это негативного влияния на производительность?
Здравствуйте,
На производительность не должно оказать влияния, но с оговоркой что речь идет о разумном количестве заказываемых параметров.
Уделив этому вопросу некоторое время (на самом деле, потратив кучу времени), я пришёл к выводу, что созданный колбек по какому-либо параметру из ТТП через SetUpdateCallback всё равно будет вызываться при изменении любого параметра по данной бумаге. Т.е., получим тот же самый OnParam, только по конкретной бумаге. Но после получения колбека всё равно нужно проверять, был ли вызван этот колбек по изменению отслеживаемого параметра.

А теперь внимание вопрос: Sergey Gorokhov , почему вы не сказали, что для решения данного вопроса создание колбека через SetUpdateCallback не имеет смысла

Добрый день,

Описанная ошибка будет исправлена в одной из очередных версий программы.
Приносим извинения за причиненные неудобства.
 
Подскажите, в таблице всех сделок, отображаются так же и в нестаканные сделки ?
 
Добрый день.
Да.
 
Цитата
Optimus1 Optimus1 пишет:
Подскажите, в таблице всех сделок, отображаются так же и в нестаканные сделки ?
В смысле, внесистемные? Их в ТВС нет.
Надо делать так, как надо. А как не надо - делать не надо.
 
Поясню, смотрел вчера ТВС по времени 15:30 по русгидро, сейчас перед галазами ее нет, то там четко была видна сделка на такой обьем, которого во всем стакане не было. Ну и на графике цены и обьема этой сделки тоже не видно было в самом Quik, на время 15:30  все спокойно, как водная гладь.
 
На минутном графике объёма виден "всплеск" в 15:30.
Надо делать так, как надо. А как не надо - делать не надо.
 
Это маленьктй всплеск, вечером напишу какой обьем был из ТВС, там такой обьем был, что весь стакан бы снес.
 
4774 лота?
Вы случаем ТВС с Таблицей истории значений параметров не путаете?
Надо делать так, как надо. А как не надо - делать не надо.
 
Надеюсь, что нет, в моем понимании ТВС - это таблица тиков.  Я вот только, что понял, что возможно в таблцие всех сделок, не лоты указаныы, а кол-во акций ?
 
Цитата
Количество Количество лотов в сделке, штук
Надо делать так, как надо. А как не надо - делать не надо.
 
А разве может быть такое, чтобы объем на графике не соответствовал данным из ТВС (ну если не считать каких-то сбоев в работе сервера QUIK)?
Ведь графики строятся на сервере по тем же данным, которые мы видим в ТВС. Или я ошибаюсь?
 
Я ошибся, прошу извенить.
 
Позвольте еще вопрос:

То время которое указывается на против каждого тика в Таблице всех сделок - это время биржи ?
 
Optimus1 Optimus1,Добрый день.
Да, время биржи.
 
Почему в таблице истории, не отображается информация по параметрам - "кол. спрос.",  "кол.предл."  ?
 
Цитата
Optimus1 Optimus1 пишет:
Почему в таблице истории, не отображается информация по параметрам - "кол. спрос.", "кол.предл." ?
Добрый день.

Предполагаем, что у Вас отключена настройка "Исходя из настроек открытых пользователем таблиц"

Зайдите в пункт меню Настройки/Основные/Программа/Получение данных/
и выберите пункт "Исходя из настроек открытых пользователем таблиц"
 
Такая галочка была.
 
Цитата
Optimus1 Optimus1 пишет:
Такая галочка была.
В таблице историй у Вас эти параметры нулевые или пусто?
В ттп трансляция идет?
 
В таблице истории - указаны 0, насчет трансляции не знаю, смотрю в конце торгового дня.
 
Цитата
Optimus1 Optimus1 пишет:
В таблице истории - указаны 0, насчет трансляции не знаю, смотрю в конце торгового дня.
Добрый день.

Чтобы ускорить решение вопроса, пришлите нам архив терминала QUIK (без ключей доступа и файла chm)  на адрес quiksupport@arqatech.com перед этим зафиксируйте проблему и закройте терминал.
 
Вот, что еще обнаружил, если запускать таблицу историй, когда идут торги, то все отображается, а вот, когда открываю таблицу историй по выбранному инструменту, по указанным параметрам, получаются - 0.
 
Цитата
Optimus1 Optimus1 пишет:
Вот, что еще обнаружил, если запускать таблицу историй, когда идут торги, то все отображается, а вот, когда открываю таблицу историй по выбранному инструменту, по указанным параметрам, получаются - 0.
Так если запускаете, когда уже торги закончились - то это нормально. Данные в эту таблицу поступают только пока идут торги, ну и еще иногда немного времени после их окончания.
 
Нееет!
К примеру параметры сумм.спроса и сумм.предл. в таблице истории, я выгружаю после 2 часов, как торги уже закончились только параметры кол.срос и кол.предл.  выгружаются нулевыми, после завершения торгов.
 
Цитата
Optimus1 Optimus1 пишет:
Вот, что еще обнаружил, если запускать таблицу историй, когда идут торги, то все отображается, а вот, когда открываю таблицу историй по выбранному инструменту, по указанным параметрам, получаются - 0.
Добрый день.

Открываете новую таблицу? Посмотрите, что транслируется в таблице текущих параметров.
 
Вообщем я локализовал проблему до следующего описания :)

Предположим я запускаю Quik в 18:00, открываю таблицу истории по любой акции, по параметрам: время, название бумаги, цена спроса, и кол-во спроса.

Все параметры отображаются в таблице истории, но если теперь пролистать таблицу истории вверх, до того, как я запустил quik, то параметр кол-во спроса не отображается. Все остальные параметры отображаются.!

Теперь если открыть по этой акции график цены и обьема и на этом графике построить график кол-во спроса и нажать кнопочку обновить, обновление происходит, как на графике, так и уже в таблице истории.

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


Код
Все параметры отображаются в таблице истории, но если теперь пролистать таблицу истории вверх, до того, как я запустил quik, то параметр кол-во спроса не отображается. 
Данное поведение у нас не воспроизводится. Можете зафиксировать проблему и прислать архив терминала без ключей доступа.
 
Подскажите пожалуйста, а как этот архив прислать и как убрать ключи доступа ?
 
Цитата
Optimus1 Optimus1 пишет:
Подскажите пожалуйста, а как этот архив прислать и как убрать ключи доступа ?
Ключи доступа это файлы pubring.txk и secring.txk если эти файлы находятся в директории с программой, то уберите их перед отправкой, а также файлы с расширение chm.
Далее по папке с программой QUIK нажмите правой кнопкой мыши и из контекстного меню выберите архиватор.
 
Цитата
Изменения в рабочем месте QUIK 7.0.0.pdf
Исправленные недоработки предыдущих версий
37. Вызов функции, заданной через SetUpdateCallback, происходил при изменении любого параметра инструмента, а не только заданного.
Проблема решена?
Надо делать так, как надо. А как не надо - делать не надо.
 
Цитата
Старатель пишет:
Цитата
Изменения в рабочем месте QUIK 7.0.0.pdf
Исправленные недоработки предыдущих версий
37. Вызов функции, заданной через SetUpdateCallback, происходил при изменении любого параметра инструмента, а не только заданного.
Проблема решена?
Добрый день.

Да.
Страницы: Пред. 1 2 3 4 След.
Читают тему
Наверх