Программа служит для преобразования тиковых значений котировок в свечи необходимого периода
Исходный файл в формате .csv получается в результате выгрузки (экспорта) котировок с сайта www.finam.ru (Фьючерсы ФОРТС),
и содержит большое количество строк (записей) - около 1 миллиона за 1 день.
В исходном файле CSV имеется таблица со следующими столбцами:
<TICKER> <PER> <DATE> <TIME> <LAST> <VOL>

В этой таблице:
<TICKER> - код инструмента, ценной бумаги;
<PER> равен 0, поскольку указывает, что это значения для тиков (конкретных сделок);
<DATE> - дата в формате ггггммдд; <TIME> - время в формате ччммсс;
<LAST> - цена; <VOL> - объем лотов.
Программа преобразовывает исходный файл в таблицу (файл CSV) со следующими столбцами:
<TICKER> <PER> <DATE> <TIME> <OPEN> <HIGH> <LOW> <CLOSE> <VOL>
где <PER> будет равен заданному периоду (в секундах),
а <OPEN> <HIGH> <LOW> <CLOSE> - соответственно, цены открытия, максимальная, минимальная и закрытия для заданного диапазона.

Скорость обработки исходного файла котировок зависит, прежде всего, от количества тиков (сделок)
На 2-ядерном компьютере с 2 гигабайтами оперативной памяти
обработка 1.000.000 строк занимает около 16 секунд.
Конечно, с сайта можно выгрузить и свечные графики цен, но они начинаются с одной минуты.
Эта же программа позволяет задавать длительность свеч в широком диапазоне - от 1 секунды до нескольких часов или дней.
Программа также позволяет учесть технические перерывы в торговле.
(время клиринга, в течение которого производится списание и начисление средств)
Как вы можете видеть на скриншоте программы, в настройках заданы технические перерывы с 14-00 до 14-03, и с 18-45 до 19-00.
(можно указать любое количество таких перерывов)
Это позволяет не выводить на график несуществующие свечи (во время клиринга)
Комментарии
Максимальный размер обрабатываемого файла CSV не ограничен.
Размер файла, конечно, скажется на скорости обработки данных,
но каких-то ограничений на количество строк нет.
А какой максимальный размер файла который сможет открыть программа?
Отправить комментарий