Загрузка котировок в базу данных

 

Добрый день!

 Хочу создать своего торгового робота. Прогностические модели создавал и ранее, но они не касались трейдинга. Всегда использовал для этого SAS Base + БД. 

Подскажите, пожалуйста, как можно загрузить историю котировок в базу данных? 

 
BullDozer_ru:

Добрый день!

 Хочу создать своего торгового робота. Прогностические модели создавал и ранее, но они не касались трейдинга. Всегда использовал для этого SAS Base + БД. 

Подскажите, пожалуйста, как можно загрузить историю котировок в базу данных? 

В какую БД?
 

Котировки в .csv

.csv в базу

))

 
Vladimir Kazakov:

Котировки в .csv

.csv в базу

))

База плодоовощная?
 

Туда тоже можно.

А вообще, это пустая трата времени: базы не заточены на работу с таймсериями. На mssql сводил несколько тиковых котировок за 10 лет - это караул: за 8 часов около 2% обработалось. За пару часов написал на С++ конвертер, и еще за пару часов все перелопатил.

 
Vladimir Kazakov:

А вообще, это пустая трата времени: базы не заточены на работу с таймсериями. На mssql сводил несколько тиковых котировок за 10 лет - это караул: за 8 часов около 2% обработалось. За пару часов написал на С++ конвертер, и еще за пару часов все перелопатил.

У меня прога на Матлабе конвертирует тиковые котировки из .csv в .mat за месяц примерно минут за 15. Это по одному инструменту. Зато потом при работе с .mat все летает, к тому же формат .mat жмет данные. Например, файл за месяц по EURUSD .csv - 184.9 Мб, .mat - 24.4 Мб.
 
BullDozer_ru:

Добрый день!

 Хочу создать своего торгового робота. Прогностические модели создавал и ранее, но они не касались трейдинга. Всегда использовал для этого SAS Base + БД. 

Подскажите, пожалуйста, как можно загрузить историю котировок в базу данных? 

https://www.mql5.com/ru/articles/69

и очень очень старая - к сожалению под умерший практически slq2000  https://www.mql5.com/ru/articles/1533

Практическое применение баз данных для анализа рынков
Практическое применение баз данных для анализа рынков
  • 2010.04.20
  • Alexander
  • www.mql5.com
Работа с данными стала главной задачей современного программного обеспечения, как автономных, так и сетевых прикладных программ. Для ее решения было создано специализированное программное обеспечение - системы управления базами данных (СУБД), которые позволяют структурировать, систематизировать и организовывать данные для их компьютерного хранения и обработки. Что касается трейдинга, то основная масса аналитиков не прибегает к использованию баз данных (БД) в своей работе. Но бывают задачи, где такое решение пришлось бы кстати. В данной статье приводится пример индикатора, который может сохранять и загружать данные из баз как с клиент-серверной, так и с файл-серверной архитектурами.
 
Vladimir Kazakov:

Туда тоже можно.

А вообще, это пустая трата времени: базы не заточены на работу с таймсериями. На mssql сводил несколько тиковых котировок за 10 лет - это караул: за 8 часов около 2% обработалось. За пару часов написал на С++ конвертер, и еще за пару часов все перелопатил.

не понятна  фраза:  сводил несколько тиковых котировок за 10 лет - это караул  


1 какое количество строк в файле  

2 какая длина в байтиках в одной записи - хотя бы примерно


 Вы когда нибудь прогружали базы размером более 3 терабайт ?  - подозреваю что не грузили

 У вас там было боле 3 террабайта  данных ?   и что  8 часов ?  как так можно код написать что бы 8 часов грузить! 


у меня бекап базы в 3 террабайта проходит за 2 часа - не понимаю как у вас могло 8 часов набежать ? 

у вас какая аппаратура ,  каким образом заливаются данные ?

--

догадываюсь что неправильно грузите

---

теперь о скорости:   к примеру база более 3 террабайта  -  конечно прикручены ПРАВИЛЬНЫЕ индексы

достаточно навороченная выборка идет 0.01 секунды некоторые выборки идут 0.00 секунд есть конечно офигенные минут по 5 но там просто расчеты дикие и объемы выборки не детские

машина не самая крутая -   64 гига  озу  , 16 ядер XENON 7350   , RAID5 достаточно шустрый

если  использовать что то пободрей :  скажем 128 гигов  и процы подороже  ,  SSD массив  ---   то скорость будет еще выше


--

теперь о  загрузке данных по трейдингу


скорость загрузки  в MS SQL   минутки  ВСЕЙ  истории  начиная 1971  года  по текущий  2016  т е   все что есть   =     длится около 30 секунд

количество записей  для современных баз просто детское  порядка  6,099,238

вот длина строки:  1971.01.04,00:00,0.53690,0.53690,0.53690,0.53690,1

да и грузится она ведь один раз , потом только дописываем


--

p.s.  базы не заточены на работу с таймсериями.    - неправда Ваша !  реально не хочу обидеть --   нужны  заточенные руки   - скорости я Вам показал

 

 


 
Alexey Volchanskiy:
У меня прога на Матлабе конвертирует тиковые котировки из .csv в .mat за месяц примерно минут за 15. Это по одному инструменту. Зато потом при работе с .mat все летает, к тому же формат .mat жмет данные. Например, файл за месяц по EURUSD .csv - 184.9 Мб, .mat - 24.4 Мб.

за месяц тики прогружу в ms sql  за 15-20  секунд  -   по крайне мере файл в 320 мегобайт гружу  за  30 секунд

одной  операция считает эту мелочь  -   второй  операцией сразу поместит в базу

а уже выборки на таком смешном объеме по времени  даже не летать  будут  - а просто мелькать

 
Yuriy Zaytsev:

https://www.mql5.com/ru/articles/69

и очень очень старая - к сожалению под умерший практически slq2000  https://www.mql5.com/ru/articles/1533

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

Для тиковой также подойдет, но больше не для хранения, т.к. тиков может быть очень много.

Чарты c разных символов по join клеит на раз два. Пробуйте, все получится.

 
RSRS:

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

Для тиковой также подойдет, но больше не для хранения, т.к. тиков может быть очень много.

Чарты c разных символов по join клеит на раз два. Пробуйте, все получится.

я просто улыбнулся увидев что коллега 8 часов что то сводит ..

скорость загрузки  показал -  а скорость выборок будет на порядки выше 

--

с сервера метаквотов - не грузит всю историю ( 1971-2016 ) по  инструменту   за 30 секунд  - интерет пока медленней прямых операций с диска на диск

зато в  MS SQL   базу  минутки заливаю  ( 6 миллионов записей   )   - за 30 секунд...  но это еще и делается один раз вообще то   - потом только дозагрузка

--

у меня  эта технология  с 2008 года прекрасно работает

привел  свою старую статью - т к юзал первые результаты еще на 2000

сейчас уже на 2014

--

Вообще эта технология  великолепна по скорости  в сравнении с другими

использую не только для поиска закономерностей


но  и для работы  выжимками по оптимизации   т к выборками  на офигенной скорости  прекрасно отсекать нужные результаты !   

матлаб и прочие инструменты  -  стоят в стороне они не заточены под скорость работы с данными

--

у мт5 и мть4 как известно своя база данных! и достаточно оптимальная

но  если ее переложить в SQL   и обрабатывать уже на самом сервере 

при этом отдавая в мть4 всего лишь вычисленные параметры  после оптимизации

или сигнал -  то скорость обработки просто на порядки выше



 

Причина обращения: