Автор:Николай Камынин

При создании роботов во внешних приложениях на основе таблицы всех биржевых сделок, возникает задача экспорта данной таблицы и создание истории всех  сделок.

Большой объем экспортируемых данных создает ряд проблем с накоплением данных и ведением истории. Например таблица всех сделок за 6 января 2012 года содержит более 820 тысяч записей.

Для решения задачи экспорта таблиц QUIK во внешнее приложение я использую протокол DDE, как наиболее быстрый из доступных в QUIK , по сравнению с ODBC.

С помощью написанного мною плагина для Амиброкера , информация  о котором есть на сайте, данная таблица выводится на диск в текстовом виде   за 410 секунд( примерно 7 минут ) , что составляет  0.5 ms на запись.

Для сокращение времени создания базы данных , мною была начата разработка отдельной от Амиброкера СУБД для экспорта по протоколу DDE таблиц QUIK, в том числе и таблицы всех сделок.

Сегодня я завершил разработку первого этапа.

Результаты превзошли ожидания.

Тестирование показало, что  таблица всех сделок размером 820 тысяч записей записывается на диск и становится доступной внешним программам  через ….10 секунд.

Таким образом, скорость экспорта таблицы всех сделок сократилась в 40 раз и составляет 12.5 мкс на запись.

Следующий этап необходимо реализовать сортировку «на лету»аблицы всех сделок по инструментам.

О результатах напишу.

This entry was posted on Воскресенье, 8 января, 2012 at 21:15 and is filed under QUIK и QPILE, Интеллект, торговые роботы (МТС). You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

2 comments so far

anton
 1 

Добрый день.
Можно например создать в Quik несколько таблиц изменения параметров. Для каждого инструмента свою таблицу. Для каждой таблицы — в Excel сделать отдельный лист и выводить данные по DDE на него. Тогда отпадает необходимость сортировки по инструменту на лету… Кроме того примерно 800 тыс данных за сессию это на один инструмент — в Excel чуть больше 1 млн строк. так что 1 страница — только на один инструмент.

2 февраля, 2012 at 18:08
Kamynin
 2 

Добрый вечер!
1) А Вы определите время вывода всей таблицы сделок в Excel.
Делается это просто по часам компьютера.
Если получите вечером вывод всей ТВС меньше, чем секунд за 30, 1 млн.строк,то сообщите
2) Больше чем 65 тысяч строк в Excel не выводится.
3) Сейчас у меня автоматически выводится ТВС сделок по 1900 инструментам.
Вы сможете сделать столько таблиц в Excel?

2 февраля, 2012 at 19:07