SimpleTradeBot — сеточный бот с открытым кодом
Тот самый сеточный алгоритм из моей торговой системы — отдельным проектом, бесплатно и с открытым кодом. Скачайте, запустите, прочитайте.
ПроектыSimpleTradeBot — сеточный бот с открытым кодом

Как устроено
Это сеточный алгоритм из моей торговой системы, вынесенный в отдельный открытый проект. Бот ведёт один инструмент — бессрочный контракт Bybit: строит от текущей цены лесенку лимитных заявок, на каждый залитый уровень ставит свой тейк-профит, а всю позицию держит под общим тейком, стоп-лоссом и трейлингом.
Базы данных нет: всё состояние живёт в памяти процесса. Это осознанное упрощение, а не недоделка — такой код читается подряд, без миграций, очередей и фоновых служб. Из него же следуют два правила: при запуске бот снимает свои прошлые заявки и не встаёт поверх позиции, которую открыл не он.
Заявки уходят на биржу по REST, состояния заявок и сделки приходят приватным сокетом, публичный поток сделок кормит стратегию. Перед каждым закрытием позиция сверяется с биржей: если там её уже нет, закрытие отменяется — иначе заявка не закрыла бы позицию, а открыла встречную.
Что умеет
- Лесенка уровней от текущей цены: шаг в процентах или в тиках, прогрессия шага и объёма.
- Свой тейк-профит на каждом залитом уровне — на этом сетка и зарабатывает в боковике.
- Общий тейк-профит, стоп-лосс и трейлинг-стоп по всей позиции.
- Ограничители: сколько заявок держать в рынке и какой объём позиции не превышать.
- Веб-интерфейс: запуск, остановка, закрытие позиции, уровни сетки, заявки и лента событий.
- Демо-торговля, testnet и реальный счёт переключаются одной настройкой.
- Все параметры — в одном файле настроек, ключи — в переменных окружения.
- 51 модульный тест на математику сетки, учёт позиции и весь торговый цикл.
Технологии
- C#
- .NET 9
- ASP.NET Core
- Bybit API V5
- WebSocket
- Docker
- xUnit
- GitHub Actions
Как поднять у себя
Шесть шагов от пустой папки до работающего бота. Все команды выполняются из корня проекта, если не сказано иначе.
Что понадобится
- .NET 9 SDK или Docker
- Аккаунт Bybit и ключ API с правом Trade
- Любая система: Windows, macOS или Linux
Скачать код
git clone https://github.com/Snake0369/SimpleTradeBot.gitВесь проект — четыре небольших сборки на C#. Ни базы данных, ни очередей, ни внешних служб ставить не нужно.
Выпустить ключ на Bybit
В разделе демо-торговли создайте ключ API с правом Trade. Демо-счёт идёт по настоящему рынку виртуальными деньгами — начинать стоит именно с него.
Прописать ключ
dotnet user-secrets set "Bybit:ApiKey" "ваш-ключ"Команда выполняется из папки src/SimpleTradeBot.Web; секрет задаётся так же, ключом Bybit:ApiSecret. В файл настроек ключи класть не нужно: он лежит в репозитории, а секрет туда попасть не должен. В Docker ключи передаются переменными окружения — образец в файле .env.example.
Задать инструмент и сетку
src/SimpleTradeBot.Web/appsettings.jsonИнструмент, направление, шаг сетки, число уровней, объём, тейк-профит, стоп-лосс и предел объёма позиции — всё в одном файле. Каждый параметр подписан в README проекта.
Запустить
dotnet run --project src/SimpleTradeBot.WebИнтерфейс откроется на http://localhost:5080. В Docker то же самое: скопируйте .env.example в .env, впишите ключи и выполните docker compose up --build.
Нажать «Запустить»
Бот построит сетку от текущей цены и начнёт работу. Рядом две кнопки: «Закрыть позицию» перестраивает сетку от новой цены, «Остановить» снимает заявки и закрывает позицию по рынку.
Начинайте с демо-счёта. Бот ставит настоящие заявки, а настройки из примера — иллюстрация, а не рекомендация: шаг сетки, объём и предел позиции подбираются под инструмент и депозит. Торговля бессрочными контрактами связана с риском, и прошлые результаты ничего не обещают.
Весь код на GitHub