Совсем недавно, буквально 2 месяца назад, Мосбиржа запустила Algopack и выложила на Гитхаб долгожданную многими библиотеку на python –moexAlgo, которая должна упростить работу с AlgoPack API.
Что такое Алгопак?ALGOPACK предоставляет исторические данные, на которых можно тестировать стратегии и делать бэктестинг. Также предполагаются онлайн данные для запуска торговых стратегий.
Данные в ALGOPACK включают:
– Super Candles – 5-минутные свечи с 50+ параметрами, история с 2020 года.
– Mega Alerts – уведомления о рыночных аномалиях.
– Market Signals – сигналы о рыночных аномалиях.
– Market Data – стандартные онлайн данные: стаканы и свечи.
Исторические данные в алгопаке доступны с 2020 года. Доступ к данным возможен через API и Python клиент на библиотеке moexAlgo.
В настоящий момент в Алгопаке доступен только раздел Super Candles (суперсвечи), который (согласно информации с мосбиржи) имеет более 50 готовых сигналов, рассчитанных:
– На потоке сделок: средневзвешенные цены, доля покупок/продаж, объемы.
– На потоке заявок: количество, объем новых и снятых заявок.
– На стакане котировок: дисбаланс спроса/предложения, ликвидность, спреды.
Сигналы публикуются каждые 5 минут. Таким образом, ALGOPACK упрощает создание торгового алгоритма, предоставляя качественные биржевые данные.
Это очень важно и удобно, особенно для таких как я – начинающих изучать язык Python.
Хорошо документированная библиотека сильно повышает ее ценность для сообщества разработчиков и упрощает её использование.
— Документирование библиотеки облегчает использование и понимание – можно сразу узнать для чего предназначен каждый объект и метод библиотеки;
— Наличие документации определенно увеличит вовлеченность со стороны сообщества, а также сокращает время на разработку, поддержку и любые изменения кода.
Docstrings (докстринги) – это строки документации в исходном коде на Python, которые описывают, что делает код. Они пишутся в самом начале определения функций, методов, классов или модулей и заключаются в тройные кавычки. Примерно так:
Конечно рекомендуется еще и добавлять рабочие примеры использования, дополнять описания реальными примерами работы с кодом. Это избавляет пользователей от необходимости самостоятельно экспериментировать. И именно этого мне сейчас и не хватает! Вот бы разработчикам мосбиржи написать конспект по практическому применению библиотеки!
Для текущей версии библиотеки moexalgo 1.0.1 я сгенерировал документацию в виде HTML страниц.
Сделано это с помощью утилиты Pdoc (Auto-generate API documentation for Python projects). Установите эту библиотеку командой «pip install pdoc3» и далее, убедившись, что moexalgo установлена в вашем окружении, создайте документацию в виде html файлов следующей командой: "pdoc --html -o ./ moexalgo". Если Вы получаете ошибку, а они появляются часто даже при создании документации по популярным библиотекам, то используйте команду «pdoc --html -o ./ --skip-errors moexalgo». Все! Полноценная документация будет лежать в одноименной папке в виде html файлов.
Ну и если заморачиваться с установкой pdoc3 нет желания, то можете использовать мой вариант:
Онлайн документация по библиотеке moexalgo.
Пользуйтесь на здоровье. Как библиотека обновится — обновлю и документацию.
Telegram-канал "Алготрейдинг на Python"
>> Сигналы публикуются каждые 5 минут.
Это типа в риал-тайме?) Или просто каждые 5 минут?) Потому что супер-свечи бессмысленны если нет риал-тайма. Вот научился ты миллионы зарабатывать на супер свечах, а в риал-тайме в твоем провайдере данных тебе приходят обычные не супер, деревянные свечи).
А во-вторых сейчас время специализации, интерфейс делают фронтендеры, а расчёты, регистрации, хранение и прочее — бекендеры.
А нужен ещё дизайнер / руководитель/ аналитик, который бы описал задачу. Для фронта и бека.
Конечно можно и в одиночку делать, но надо тратить время.
А кто-то работает по найму, другой на фрилансе. Для стартапа — не понятны перспективы, окупится ли.
Вот и остаются в основном начинающие энтузиасты, которые для опыта делают что-то, но в одиночку делать непонятно что сложно, описать задачу вероятно сложнее чем её сделать