Высокопроизводительное модульное ядро криптовалютной биржи на C++
Crypto — это открытое, модульное ядро криптовалютной биржи, разработанное на C++ с фокусом на производительность, прозрачность и расширяемость.
В отличие от проприетарных «черных ящиков» крупных бирж, наш проект позволяет любому разработчику:
- Увидеть, как именно обрабатываются ордера и управляются активы.
- Аудировать логику сопоставления заявок (matching engine).
- Модифицировать и расширять функциональность благодаря четкой модульной архитектуре.
Этот проект — первый шаг к созданию прозрачной, надежной и высокоскоростной торговой платформы.
| Компонент | Описание |
|---|---|
Управление активами (asset.h) |
Модуль для учета и управления балансами пользователей в различных криптовалютах. |
Ядро обработки ордеров (Market-architecture) |
Реализация стакана заявок (order book), добавление, удаление и сопоставление ордеров. |
Система интерфейсов (Interfaces.h) |
Четкие контракты между модулями для обеспечения гибкости и тестируемости. |
| Высокая производительность | Выбор C++ и продуманная архитектура закладывают фундамент для работы с большим потоком заявок. |
- Язык: C++17
- Система сборки: Makefile
- Контроль версий: Git
- Платформа: Кроссплатформенный (Linux, macOS, Windows)
project/
├── include/
│ └── asset.h # Управление активами
├── src/
│ └── Market-architecture/ # Ядро обработки ордеров и стакана
├── Interfaces.h # Основные интерфейсы системы
├── main.cpp # Точка входа (демо-запуск)
└── README.md # Этот файл
- Компилятор с поддержкой C++17 (g++ 7+, clang 6+, MSVC 2019+)
- Система сборки (CMake 3.10+ или Make)
# Клонируйте репозиторий
git clone https://github.com/reprenter/project.git
cd project
# Сборка с помощью CMake (пример)
mkdir build && cd build
cmake ..
makemake run- Написание юнит-тестов для всех модулей
- Подготовка документации с описанием API
- Реализация консольного интерфейса (CLI) для тестирования
- Добавление поддержки различных типов ордеров (Stop-Loss, Take-Profit)
- Создание REST API для внешнего взаимодействия
- Интеграция с базой данных для хранения истории сделок
- Разработка веб-интерфейса (GUI)
- Подключение реальных рыночных данных
- Переход к децентрализованной модели (интеграция со смарт-контрактами)
- Формирование сообщества разработчиков вокруг проекта
Распространяется под лицензией MIT. См. файл LICENSE для получения дополнительной информации.