# Crypto Trading Telegram Bot by [KODORVAN](https://git.svoboda.works/kodorvan)
Автоматизированный торговый помощник для работы с криптовалютной биржей Bybit на основе стратегии мартингейла.
Он позволяет торговать бессрочными контрактами с управлением рисками, тейк-профитами, стоп-лоссами и кредитным плечом.
**Разработано командой [КОДОРВАНЬ](https://git.svoboda.works/kodorvan)**
_Мы окажем полное содействие и поддержку, пишите в телеграм: https://t.me/kodorvan_
## Основные возможности
- Поддержка работы с биржей Bybit через официальный API.
- Открытие и закрытие позиций по выбранным торговым парам.
- Поддержка рыночных и лимитных ордеров.
- Установка уровней тейк-профита (TP) и стоп-лосса (SL).
- Управление кредитным плечом (leverage).
- Реализация стратегии мартингейла с настройками шага, коэффициента и лимитов.
- Контроль максимального риска на сделку по балансу пользователя.
- Обработка ошибок API, логирование событий и информирование пользователя.
- Таймеры для отложенного открытия и закрытия сделок.
- Интерактивное меню и ввод настроек через Telegram.
- Хранение пользовательских настроек и статистики в базе данных.
## Установка
1. Клонируйте репозиторий:
```bash
git clone https://git.svoboda.works/kodorvan/stcs
```
2. Установите зависимости:
```bash
pip install -r requirements.txt
```
или для отдельного пользователя
```bash
sudo -u www-data /usr/bin/pip install -r requirements.txt
```
3. Зарегистрируйте чат-робота и сгенерируйте ключ авторизации
[@BotFather](https://t.me/BotFather)
4. Создайте файл .env и настройте переменные окружения
```bash
cp .env.sample .env
nvim .env
```
5. Выполните миграции:
```bash
alembic upgrade head
```
6. Убедитесь в том, что установлен redis и открыт порт 6789
```bash
sudo ufw allow 6789
```
7. Запустите бота:
```bash
python run.py
```
## Настройка автономной работы
1. Создаём файл конфигурации SystemD
```bash
sudo cp examples/systemd/stcs.service /etc/systemd/system/
```
2. Настраиваем его
```bash
nvim /etc/systemd/system/stcs.service
```
3. Добавляем в автозапуск
```bash
sudo systemctl enable stcs
```
4. Запускаем
```bash
sudo service stcs start
```
5. Проверяем
```bash
sudo service stcs status
```
## Настройки пользователя
- Кредитное плечо (например, 15x)
- Торговая пара (например, DOGEUSDT, BTCUSDT)
- Начальное количество для сделок
- Тип ордера (Market или Limit)
- Уровни Take Profit и Stop Loss (в процентах или цене)
- Коэффициент мартингейла и максимальное количество шагов
- Максимально допустимый риск на одну сделку (% от баланса)
- Таймеры для старта и закрытия сделок
## Безопасность и риски
- Бот требует аккуратной настройки параметров риска.
- Храните API ключи в безопасности, избегайте публикации.