Как получить исторические данные по акциям
Если задаетесь вопросом: Зачем мне это? То обычно это нужно, когда вы хотите написать торгового робота или провести некую аналитику по эмитенту.
Есть множество решений как загрузить исторические данные по акциям.
- Можно скачать с Финам - Экспорт котировок
- Можно скачать с Yahoo Finance - Historical Data -> Экспорт
Есть еще другие ресурсы, но в основном везде предлагают делать это вручную или даже просят дополнительно денег. Это не эффективно по времени и конечно не хочется на это тратиться, особенно, когда скачать исторические данные нужно по многим акциям.
Есть способ, как это немного автоматизировать, для этого я написал небольшой код на Python для скачивания котировок акций/фьючерсов.
Нам потребуется установленный Python и Metatrader от любого брокера.
Код выложен на github, доступен по этой ссылке.
Для его запуска нужно установить дополнительные компоненты, следующей командой:
Запускаемый файл main.py.
Сам код очень короткий, давайте ниже его разберем:
Импорт необходимых библиотек:
Устанавливаем сколько на экране показываем для таблицы pandas:
Считываем текущую директорию и сколько баров скачать:
Определяем по какую дату скачивать исторические данные, по каким тайм-фреймам и по каким тикерам:
И потом в цикле, просто скачиваем эти исторические данные по тикерам использую MetaTrader 5:
Экспорт в dataframe идет командой:
Если у вас установлено несколько MetaTrader 5, то в этой строке можно указать какой именно нужно использовать для скачивания исторических данных:
Это бывает нужно, когда например у разных брокеров - есть разные инструменты - например есть склейка фьючерсов у одного, а другого её нет.
В принципе всё интуитивно именовано и есть комментарии по коду.
При запуске main.py выгрузка исторических данных происходит в папку csv_export.
Делюсь этим кодом, т.к. сам намучался с этим и пока не написал это решение, которое мне теперь существенно экономит время для получения котировок акций и склеек по фьючерсам.
Надеюсь оно будет и вам полезно.