Как стать автором
Обновить

Комментарии 11

То же самое через апи тинька получится? И небось бесплатно?

Я недавно нашел для себя систему OS Engine.

Открытые исходники на c# , скачивание истории и тестирование есть уже из коробки, есть коннекторы к различным биржам (в том числе к moex через Тинькофф апи).

Но эта статья тоже неплохой вариант, если хочется разобраться как все работает или любит делать все своими руками.

На Тинке есть ограничения по запросам и некоторую информацию проще получить у MOEX. Лучше использовать их вместе

На тиньке котировки только с 2018 года, причём до июля 2018 они некорректные. А в последние годы там мешаются свечи внебиржевых торгов. Я замучился всё это обходить и исправлять.

Мне для анализа было удобнее делать через json. А что бы выгрузить все данные из большого массива, каждый раз при получении нового блока проверял его размер - если меньше 100 (максимальное количество строк, которое грузится к тому же по умолчанию), значит дальше будет пустой блок. И на сколько я понимаю, для трейдинга эти данные не особо подойдут, скорее для исторического анализа, т.к. для бесплатного доступа данные доступны либо исторические, либо с задержкой.

Совет - попросите ChatGPT написать парсер мосбиржи с использованием aiohttp/scrapy и asyncpg, удивитесь насколько порядков будет работать быстрее.

Неплохо в качестве первого приближения к теме, но лучше все же работать с json'ами, тем более, что pandas позволяет без проблем создавать датафреймы на основе json.
Да и данные, тем более, потенциально большие объемы хранить в .csv в 2023 году как будто бы не стоит, есть форматы, которые позволяют использовать сжатие и сохраняют типы данных, например .parquet, да, такой файл не получится открыть в блокноте и посмотреть, но операции чтения/записи при этом на порядок быстрее.

Ваще огонь.

Я использую Borads нужной секции рынка и не парюсь. Взял несколько секнций, выгрузил и замержил. Не сказала бы что очень быстро, но за м3 минуты на не быстрой VDS справляется. И так каждый день на автомате. Полет нормальный!

Приятная статья , хорошо написано , но лично я использовал бы json.

Не знаю как во времена написания статьи, но в современном мире давно есть moex algopack. Не надо ничего парсить, одна строчка и получаем данные в DataFrame или dict() повыбору.

from moexalgo import Ticker, session
session.TOKEN = 'eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiS...lM_-n_l1LsSRX55A'

# выбираем акции Сбера
sber = Ticker('SBER')

# получим дневные свечи с 2020 года
sber.candles(start='2020-01-01', end='2023-11-01').head() 

Пакет сделан самой же Мос.Биржей, официальный репозитарий с примерами тут:
https://github.com/moexalgo/moexalgo

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации