Сергей (Все сообщения пользователя)

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

Страницы: 1
Le,kbhjdfybt
 
К сожалению не увидел как исправить заголовок сообщения. Если возможно - исправьте на "Дублирование исторических данных"
Le,kbhjdfybt
 
Подписался на источник данных, установил тайм-фрейм месяц и прошёл по списку инструментов. Что выяснилось - у некоторых инструментов есть свечи, имеющие разные индексы (id), но с одной и той же датой и РАЗНЫМ содержимым:

Подписываюсь и читаю исторические данные следующим образом:
Код
SECURITIES[scode][tf].DS, _error   = CreateDataSource('TQBR', scode, tf_value)

SECURITIES[scode][tf].LastBarIndex = SECURITIES[scode][tf].DS:Size()
for i = 1, SECURITIES[scode][tf].LastBarIndex-1 do
   FillTableRow(SECURITIES, scode, tf, i)
end

функция FillTableRow - просто выводит в таблицу данные:

function FillTableRowCandles(SECURITIES, scode, tf, index)
   tmp = InsertRow(t_id_IND, -1)
   SetCell(t_id_IND, tmp,  0, string.format("%04d-%02d-%02d %02d:%02d:%02d",
      SECURITIES[scode][tf].DS:T(index).year, SECURITIES[scode][tf].DS:T(index).month, SECURITIES[scode][tf].DS:T(index).day,
      SECURITIES[scode][tf].DS:T(index).hour, SECURITIES[scode][tf].DS:T(index).min, SECURITIES[scode][tf].DS:T(index).sec))
   SetCell(t_id_IND, tmp, 1, tostring(scode))
   SetCell(t_id_IND, tmp, 2, 'TQBR')
   SetCell(t_id_IND, tmp, 3, tostring(tf))
   SetCell(t_id_IND, tmp, 4, tostring(index), index)
   SetCell(t_id_IND, tmp, 5, tostring(SECURITIES[scode][tf].DS:O(index)))
   SetCell(t_id_IND, tmp, 6, tostring(SECURITIES[scode][tf].DS:L(index)))
   SetCell(t_id_IND, tmp, 7, tostring(SECURITIES[scode][tf].DS:H(index)))
   SetCell(t_id_IND, tmp, 8, tostring(SECURITIES[scode][tf].DS:C(index)))
   SetCell(t_id_IND, tmp, 9, tostring(SECURITIES[scode][tf].DS:V(index)))
end

Вот даты с дублями (что характерно они все на тайм-фрейме месяц, хотя я подписываюсь и на другие тайм-фреймы):

│ 2007-03-01 00:00:00 │ GAZP   │ MN1 │       2 │
│ 2007-03-01 00:00:00 │ SNGS   │ MN1 │       2 │
│ 2007-02-01 00:00:00 │ IMOEX  │ MN1 │       2 │
│ 2007-03-01 00:00:00 │ PLZL   │ MN1 │       2 │
│ 2007-03-01 00:00:00 │ GMKN   │ MN1 │       2 │
│ 2007-02-01 00:00:00 │ LKOH   │ MN1 │       2 │
│ 2007-03-01 00:00:00 │ SNGSP  │ MN1 │       2 │
│ 2007-02-01 00:00:00 │ NVTK   │ MN1 │       2 │
│ 2007-03-01 00:00:00 │ ROSN   │ MN1 │       2 │
│ 2007-02-01 00:00:00 │ TATN   │ MN1 │       2 │
│ 2007-03-01 00:00:00 │ SBER   │ MN1 │       2 │
│ 2007-03-01 00:00:00 │ LKOH   │ MN1 │       2 │
│ 2007-02-01 00:00:00 │ SBER   │ MN1 │       2 │
│ 2007-02-01 00:00:00 │ ROSN   │ MN1 │       2 │
│ 2007-03-01 00:00:00 │ TATN   │ MN1 │       2 │
│ 2007-02-01 00:00:00 │ SNGSP  │ MN1 │       2 │
│ 2007-03-01 00:00:00 │ NVTK   │ MN1 │       2 │
│ 2007-02-01 00:00:00 │ GMKN   │ MN1 │       2 │
│ 2007-02-01 00:00:00 │ PLZL   │ MN1 │       2 │
│ 2007-02-01 00:00:00 │ GAZP   │ MN1 │       2 │
│ 2007-02-01 00:00:00 │ SNGS   │ MN1 │       2 │
│ 2007-03-01 00:00:00 │ IMOEX  │ MN1 │       2 │

Примеры дублей (для первой строки GAZP):

Код
┌────dt_date─┬─────────dt_datetime─┬─symbol─┬─class─┬─tf──┬──open─┬───low─┬───high─┬──close─┬────volume─┐
│ 2007-03-01 │ 2007-03-01 00:00:00 │ GAZP   │ TQBR  │ MN1 │   266 │   249 │  270.4 │ 256.42 │   7683639 │
│ 2007-03-01 │ 2007-03-01 00:00:00 │ GAZP   │ TQBR  │ MN1 │ 258.5 │ 239.8 │ 277.45 │ 270.87 │ 108418206 │
первая запись - свеча №15, вторая запись - свеча №17. На графике данные второй свечи (17), но перебор по данным источника находит именно две свечи. Квик - 8.0.5.2

Возможно ли проверить у вас корректность получаемых исторических данных на этом же таймфрейме и по этим инструментам?

С уважением, Сергей.
Данные свечей содержат пустые значения
 
Разобрался сам. Причина в том что у я подписан на множество инструментов и они записывают данные в таблицу и в какой-то момент времени (особенно это заметно в рабочее время когда идёт большой поток обновляемых данных) получается конфликт записи в одну и ту же таблицу разными процессами.
Данные свечей содержат пустые значения
 
Подписался в скрипте на получение данных по свечам (Callback), и за последние дни нашёл несколько странных записей:

+---------------------+--------+------+-----------+--------+--------+--------+---------+--------+

| dt_datetime         | symbol | tf   | candle_id | p_open | p_low  | p_high | p_close | volume |

+---------------------+--------+------+-----------+--------+--------+--------+---------+--------+

| 2019-08-30 10:56:00 | SBERP  | M1   |      3577 | 195.3  | NULL   | NULL   | NULL    | NULL   |

| 2019-08-23 17:32:00 | PLZL   | M1   |      1383 | 7277.5 | 7274.5 | 7279   | 7276    | NULL   |

| 2019-08-28 13:59:00 | ROSN   | M1   |      2718 | 404.5  | 404.5  | NULL   | NULL    | NULL   |

+---------------------+--------+------+-----------+--------+--------+--------+---------+--------+

При этом на графике эта свеча содержит данные:


Являются ли такие записи корректными? Ведь если объём свечи равен 0, то может вообще такую свечу пропускать и не выводить?
Формат вывода данных при экспорте через ODBC
 
Добрый день.

Вопрос к разработчикам системы - возможно ли изменить формат выводимых данных при экспорте через ODBC? Объясню с чем это связано:
например я хочу вывести таблицу обезличенных сделок во внешнюю базу (в частности ClickHouse), но когда я пытаюсь выгрузить поле дата/время сделки, и квик пытается отправить DD-MM-YYYY, но КХ принимает дату/время в формате YYYY-MM-DD HH:MM:SS, и соответственно происходит ошибка и данные невыгружаются. Возможно есть какой-то встроенный механизм, который позволяет отформатировать поля в требуемый формат перед их выгрузкой во внешнюю БД?
Отображение графика открытого интереса, Не отображается открытый интерес за текущий период
 
Цитата
Egor Zaytsev написал:
Цитата
Сергей   написал:
Добрый день.

Подскажите в чем может быть моя ошибка: хочу на график инструмента (фьючерс) вывести открытый интерес (кол-во открытых позиций). Сначала для проверки что значения передаются добавил сам инструмент в ТТТ и добавил поле для отображения "Кол-во открытых позиций". Все нормально - во время торгов это поле постоянно изменяется. Теперь решил добавить его на график, он добавился - но на графике есть значения ТОЛЬКО за предыдущий период, который уже завершен. Текущие значения этого показателя на графике не отображаются. В таблице обезличенных сделок это поле есть и оно изменяется. Что я сделал неправильно? Или здесь нужно работать с брокером (но ведь в ТТТ ОИ отображается за текущий период!, значит передаётся с биржи).

квик 7.2.2 (последняя с сайта)
Добрый день.

Проверьте настройку.

Зайдите в пункт меню Система/Настройки/Основные настройки/Программа/Сохранение данных/
и выберите пункты "Данные, отражающие текущее состояние и всю историю изменений» и   «Получать пропущенные данные"  
Спасибо! Жаль что в таком режиме (у меня до этого стоял режим получать только текущие данные) - программа РЕЗКО увеличивает потребление памяти и процессора....
Отображение графика открытого интереса, Не отображается открытый интерес за текущий период
 
Добрый день.

Подскажите в чем может быть моя ошибка: хочу на график инструмента (фьючерс) вывести открытый интерес (кол-во открытых позиций). Сначала для проверки что значения передаются добавил сам инструмент в ТТТ и добавил поле для отображения "Кол-во открытых позиций". Все нормально - во время торгов это поле постоянно изменяется. Теперь решил добавить его на график, он добавился - но на графике есть значения ТОЛЬКО за предыдущий период, который уже завершен. Текущие значения этого показателя на графике не отображаются. В таблице обезличенных сделок это поле есть и оно изменяется. Что я сделал неправильно? Или здесь нужно работать с брокером (но ведь в ТТТ ОИ отображается за текущий период!, значит передаётся с биржи).

квик 7.2.2 (последняя с сайта)
Страницы: 1
Наверх