Files

109 lines
3.3 KiB
Markdown

# Grid Trading Bot — Tradernet / Cifra.by
Grid-торговый робот для криптобиржи через платформу Cifra.by (Tradernet API).
## Установка
```bash
cd /root/grid-bot
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
```
## Настройка
1. Скопировать `.env.example` → `.env`
2. Заполнить ключи API:
```bash
TRADERNET_PUBLIC_KEY=ваш_публичный_ключ
TRADERNET_PRIVATE_KEY=ваш_приватный_ключ
```
**Как получить ключи:**
1. Зарегистрироваться на [cifra.by](https://cifra.by)
2. Открыть счёт → перенаправляет на [tradernet.by](https://tradernet.by)
3. Настройки → API-ключи → создать пару
## Запуск
```bash
# Dry-run (без реальных ордеров)
python main.py --dry-run
# Один цикл (для тестирования)
python main.py --once
# Production
python main.py
```
## Systemd (автозапуск)
```bash
cp grid-bot.service /etc/systemd/system/
systemctl daemon-reload
systemctl enable grid-bot
systemctl start grid-bot
systemctl status grid-bot
```
## Структура файлов
```
grid-bot/
├── config.py # Параметры торговли
├── api.py # Обёртка Tradernet API
├── grid.py # Логика сетки
├── main.py # Точка входа
├── requirements.txt
├── .env.example # Шаблон переменных окружения
└── grid-bot.service # systemd unit
```
## Параметры (config.py)
| Параметр | По умолчанию | Описание |
|---|---|---|
| `SYMBOL` | BTC | Торгуемая пара |
| `GRID_LEVELS` | 10 | Количество уровней сетки |
| `GRID_STEP_PERCENT` | 0.3 | Шаг сетки (% от цены) |
| `ORDER_AMOUNT_USD` | 100 | Объём каждого ордера (USD) |
| `MAX_POSITION` | 1000 | Макс. позиция в USD |
| `UPDATE_INTERVAL_SECONDS` | 30 | Частота цикла |
| `TRADING_ENABLED` | True | False = dry-run |
## Как работает grid
```
Цена BTC = $67,500
Сетка (шаг 0.3% = $202.50):
BUY @ $66,600 ← уровень -4
BUY @ $66,802 ← уровень -3
BUY @ $67,005 ← уровень -2
BUY @ $67,208 ← уровень -1
───────────────────────── center (не выставляем)
SELL @ $67,612 ← уровень +1
SELL @ $67,815 ← уровень +2
SELL @ $68,018 ← уровень +3
SELL @ $68,220 ← уровень +4
BUY исполняется → выставляем SELL на уровень выше
SELL исполняется → выставляем BUY на уровень ниже
Каждый round-trip = profit = шаг_сетки × количество
```
## Telegram-уведомления
```bash
TELEGRAM_BOT_TOKEN=... # через @BotFather
TELEGRAM_CHAT_ID=... # через @userinfobot
```
## Важно
⚠️ **Всегда тестируйте в dry-run режиме перед реальной торговлей.**
⚠️ **Инвестируйте только те средства, которые готовы потерять.**