13 releases
Uses new Rust 2024
new 0.2.11 | Jul 10, 2025 |
---|---|
0.2.10 | Jul 9, 2025 |
0.2.0 | Jun 28, 2025 |
0.1.0 | May 28, 2025 |
0.0.1 | Mar 30, 2025 |
#5 in #на
1,471 downloads per month
1.5MB
23K
SLoC
Open source cross-platform trading system
AVIN (от лат. Ars Vincere - искусство побеждать) — это кросплатформенная трейдинговая система, написана на Rust, с GUI на egui/eframe.
Содержит все, что нужно для алготрейдинга: от загрузки исторических данных и разработки стратегии, до запуска в боевой режим и построения отчетов.
Интерфейсы и принципы работы стремятся быть такими же простыми как Pine от TradingView, но реализация на Rust дает возможность создавать сложные алгоритмы, и обеспечивает скорость достаточную для работы с тиковыми данными, кластерами и стаканом на grpc стриме.
Модули и возможности
- analyse: инструменты статистического анализа исторических данных
- connect: коннекторы, пока доступно подключение только к Тинькофф брокеру (Т-банк)
- core: структуры для удобной работы с данными на "трейдерском языке": график, таймфрейм, ордер...
- data: загрузка и обновление исторических данных. Пока только с Московской биржи
- tester: простой, но очень быстрый бэк-тестер
- trader: модуль запуска стратегий в боевом режиме
- terminal: GUI терминал для ручной торговли
- report: построение отчетов
- informer: уведомления в telegram
- gui: утилиты для просмотра результатов тестов и др.
Цели проекта
1. Open-source фреймворк для алготрейдера
Каждый алготрейдер, так или иначе, решает для себя задачи: получения и обновления исторических данных, проверки торговых гипотез, коннекторы к брокерам и логику управления торговыми стратегиями. На разработку подобных велосипедов уходит от пары месяцев до нескольких лет, смотря как делать.
Хорошо бы в мире быть бесплатному открытому проекту, который развивается сообществом и предоставляет такой базовый инструментарий для алготрейдера. В идеале должен получиться этакий фреймворк для трейдера, чтобы можно было сосредоточиться на анализе данных и разработке стратегий, а не служебном коде.
2. Собрать команду алготрейдеров, программистов, математиков
Я ищу единомышленников. Чтобы вместе пить хеннеси и трахать телочек
зарабатывать на бирже.
На данном этапе я открыт к общению с каждым заинтересованным. Не зависимо от опыта и знаний. Главное - желание развиваться в сфере алготрейдинга, программирования, математики и машинного обучения. Узкому кругу лиц я готов показать свою "пользовательскую" часть: наработки по анализу данных и готовые рабочие стратегии - с целью переопыления идеями и дальнейшей совместной разработки. Пиши.
let contact = email || telegram;
Текущий прогресс
В 2023-2024г был сделан прототип на Python, с GUI на PyQt6. Кодовая база составила 40к строк. Стало понятно:
- Все это и очень хорошо, и нужно, и работает. И дальше хочется развивать.
- Python не достаточно производительности для реал-тайм работы с тиками, стаканом и SuperCandles от Московской биржи.
Можно было использовать С, С++ или Cython для критических участков... Так обычно и делают. Но в марте 2025 был выбран долгий и сложный путь - переписать все на Rust. Это даст бОльшую надежность кода и лучшую производительность. В перспективе библиотека может использоваться и для создания HFT стратегий.
Программа на этапе активной разработки. Пока работоспособна только "для себя", нет документации, часто меняются интерфейсы. На сегодня (2025-05-16) переписано около 50% python кода.
Getting start
- Clone this repository
git clone --depth=1 https://github.com/arsvincere/avin.git
Dependencies
~72–115MB
~2M SLoC