Михаил Гизунов, Николай Казанцев. Новая технология экспорта из QUIK'а в Омегу.
Re: Программное обеспечение -- admin3   Ответить Форум
Отправлено:
11/14/2002, 16:09:34

Author Profile e-mail автора
Вам представляется технология экспорта из QUIK'а эталонных данных тикеров ММВБ в OmegaTS.

{Убедительная просьба к пользователям технологии не обращаться за поддержкой к создателям QUIK}

Вводные.

При данной схеме использования связки Квик-Омега необходимо отметить несколько моментов.

В реестр компьютера, посредством ключа (о нем пойдет речь ниже), вносится запись, блокирующая обращение ГлобалСервера (далее — ГС) к системному времени.

Отправляемые Квиком тики записываются в локальном времени ГС с биржевым временем сделки (т.е. в интервале 10:29 — 18:45 МСК). Иными словами, в локальном времени ГС мы увидим тики с таким же временем как и в рекорде Квика (эталонным временем).

Как известно, ГС хранит рекорд в «несдвигаемом» Гринвиче (UTC). Чтобы записать рекорд в UTC ГС использует поправку, которую ему сообщает Квик. Квик «сканирует» поправку один раз во врямя старта, ориентируясь на региональные установки компьютера. Например, если у вас на машине стоит часовой пояс Москвы, то в период летнего времени поправка будет -4, а зимой -3 часа.

Технология организации экспорта.

1. Создаем ключ, посредством которого вносится запись, блокирующая обращение ГС к системному времени.

В стандартном приложении Windows — «Блкнот» создаем файл такого содержания:

REGEDIT4

[HKEY_CURRENT_USER\Software\Omega Research\Server\DBC Online SubServer.DBC Online]
"USEPCCLOCK"="NO"

Сохраняем этот файл как «Имя файла.reg». Далее запускаем этот файл — запись в реестр будет добавлена. Если вам будет необходимо удалить эту запись, то вам необходимо будет запустить с командной строки приложение regedit.exe и, отыскав по пути, указанному выше, её удалить.

2. Формируем экспорт тикеров в Квике.

Для этого в Квике идем в «Экспорт данных» — «Вывод данных для теханализа» и формируем группу тикеров с соответствующим им названиями в ГС. С установками «Выводить объем сделок в лотах» и «Не выводить данные повторно» я думаю, вы разберетесь самостоятельно.

3. Несколько слов о «рисовании» графиков в Омеге.

Чтоб Омега отображала динамику последнего бара необходимо чтобы тики, поступающие в ГС и воспринимаемые Омегой во времени UTC, имели UTC-время большее, нежели UTC-время запуска ГС в режиме он-лайн. Время запуска ГС в режиме он-лайн отображается в нижнем правом углу Омеги. Чтобы получить нужное время запуска мы, перед запуском ГС в онлайн, отводим локальное время компьютера на разницу между «несдвигаемым» Гринвичем и часовым поясом локального времени компьютера. Необходимо отметить, что рабочие вокспейсы должны быть открыты ранее, нежели запуск ГС в режиме он-лайн, во избежание неправильной отрисовки последнего бара (глюк Омеги, выражающийся в появлении на последнем баре нескольких цен открытий-закрытий).

4. Рекомендуемый пример порядка операций и настроек.

Региональные настройки компьтера — часовой пояс Москвы.

Вносим запись в реестр с помощью ключа (это нужно сделать один раз).
Запускаем Квик.

Отводим локальное время назад на 4 часа в летнем времени и на 3 часа в зимнем.

Запускаем Омегу и ГС. Если ГС запускается в режиме он-лайн, то переводим его в режим офф-лайн.

Открываем рабочие вокспейсы.

Переводим ГС в режим он-лайн. После этой операции можно вернуть локальное время компьютера в истинное, соответствующее региональным настройкам.

В Квике идем в «Экпорт данных» — меню «Вывод данных для теханализа» — «Начать вывод». Если вы запускаете экспорт данных во время или после торговой сессии (но до сброса данных интересующей сессии — по моему, до 12:00 Мск), то вам следует снять крыжик «не выводить данные повторно».

Замечу, что если у вас в ГС уже есть часть данных этой сессии, то данные необходимо вычистить, иначе — данные запишутся сгруппировано по объемам «рядом» с уже имеющимися, что приведет к неправильному отображению объема сделок (их удвоению на участках совпадения рекордов). И ещё — Квик при экспорте формирует рекорд без разбиения тика на объемы сделок контрагентов. Т.е. если стоит одна заявка по какой-либо цене, выставленная сразу несколькими трейдерами и проходит сделка по этой цене, то тик, отправляемый в ГС будет один с удовлетворенным по этой цене объемом, без разбивки по контрагентам. Этим объясняется разница в количестве тиков м/д подробным рекордом биржи и вашим рекордом в ГС.

В последней версии Квика есть очень удобная фича — автоконнект при разрыве связи (настройки — соединение с интернет). Настройте её — при обрыве связи Квик через некоторое время восстановит связь и докачает утерянные тики в ваш ГС с полагающимся временем сделок.
Для удобства вы можете поместить ключи доступа к Квику (pubring.txk и secring.txk) в любое место на жестком диске и в файле квика QRYPTO.CFG в самом начале указать путь к ним (например, secring=C:\Program Files\QUIK\secring.txk pubring=C:\Program Files\QUIK\pubring.txk ).
Теперь вам не нужно будет мучиться с дискетой.

И, напоследок, ложка дёгтя — так как экспортный модуль QUIK'a не дает потока bid/ask и некоторых параметров Daily тайм-фрема, то в RadarScreen'e некоторые колонки рассчитываюся неверно.

Разработка метода экспорта:
Михаил Гизунов aka Vedmed', Николай Казанцев aka Staer.

Идея блокировки обращения ГС к системному времени:
Андрей Назаров aka Andrew.


Ответить   Назад |Вперед |Текущая страница
Rambler's Top100