# Инструкция по использованию улучшенной системы торговли

## 🚀 Быстрый старт

### 1. Проверка готовности системы

```bash
# Убедитесь, что все зависимости установлены
pip install -r requirements.txt
pip install mysql-connector-python

# Проверьте доступность T-Bank API
python src/get_account_balance.py --env sandbox
```

### 2. Настройка окружения

```bash
# Убедитесь, что .env файл содержит правильные токены
cat .env
```

### 3. Проверка баланса

```bash
# Проверьте баланс тестового счёта
python src/get_account_balance.py --env sandbox

# Проверьте баланс реального счёта
python src/get_account_balance.py --env real
```

## 🎯 Основные сценарии использования

### Сценарий 1: Полностью автоматическая сделка

```bash
# 1. Запуск агента для создания сделки
opencode trade-executor-enhanced

# 2. Агент автоматически:
#    - Проверит баланс
#    - Запросит окружение (sandbox/real)
#    - Валидирует параметры сделки
#    - Создаст сделку
#    - Запустит мониторинг

# 3. Мониторинг работает в фоне
#    - Автоматическое обнаружение TP
#    - Автоматический перевод SL в безубыточок
#    - Логирование всех событий
```

### Сценарий 2: Ручное управление сделками

```bash
# 1. Создание сделки вручную
python src/create_trade_orders.py \
  --ticker SBER \
  --direction BUY \
  --entry 245.50 \
  --sl 240.00 \
  --tp 255.00 \
  --capital 100000 \
  --risk 1.0 \
  --confidence 75 \
  --env real

# 2. Мониторинг сделки
python src/monitor_trade.py \
  --ticker SBER \
  --trade-id <trade_id> \
  --daemon \
  --env real

# 3. Управление сделками
python src/manage_trade.py --env real --list
python src/manage_trade.py --env real --modify-sl --trade-id <trade_id> --new-sl 242.00
```

### Сценарий 3: Просмотр и анализ

```bash
# 1. Просмотр открытых сделок
python src/manage_trade.py --env real --list

# 2. Просмотр истории сделок
cat reports/trades.json

# 3. Анализ баланса
python src/get_account_balance.py --env real --ticker SBER
```

## 📋 Подробная инструкция

### Шаг 1: Проверка баланса (ОБЯЗАТЕЛЬНО)

```bash
# Для тестового режима
python src/get_account_balance.py --env sandbox

# Для реального режима
python src/get_account_balance.py --env real
```

**Что вы увидите:**
- Общий баланс счёта
- Информация о открытых позициях
- Доступный капитал
- Валютные балансы

### Шаг 2: Получение торгового сигнала

Сигнал может быть получен из:
- Файла `reports/tickers/{TICKER}.md` (автоматический анализ)
- Вручную (через агента или скрипт)

**Пример сигнала:**
```json
{
  "ticker": "SBER",
  "direction": "BUY",
  "entry": 245.50,
  "sl": 240.00,
  "tp": 255.00,
  "confidence": 75,
  "source": "tech-analysis",
  "risk_pct": 1.0,
  "capital": 100000.00
}
```

### Шаг 3: Создание сделки

#### Через агента (рекомендуется)
```bash
opencode trade-executor-enhanced
```

#### Через скрипт
```bash
python src/create_trade_orders.py \
  --ticker SBER \
  --direction BUY \
  --entry 245.50 \
  --sl 240.00 \
  --tp 255.00 \
  --capital 100000 \
  --risk 1.0 \
  --confidence 75 \
  --env real
```

**Что произойдет:**
1. Валидация параметров сделки
2. Расчёт размера позиции
3. Создание ордеров (вход, SL, TP)
4. Логирование в журнал сделок
5. Подтверждение сделки

### Шаг 4: Мониторинг сделки

```bash
# Запуск мониторинга
python src/monitor_trade.py \
  --ticker SBER \
  --trade-id <trade_id> \
  --daemon \
  --env real

# Проверка состояния
python src/monitor_trade.py \
  --ticker SBER \
  --trade-id <trade_id> \
  --once \
  --env real
```

**Функции мониторинга:**
- Автоматическое обнаружение TP исполнения
- Перевод SL в безубыточок при достижении TP
- Проверка срабатывания SL
- Учет торговых часов MOEX
- Логирование всех событий

### Шаг 5: Управление сделками

```bash
# Просмотр всех сделок
python src/manage_trade.py --env real --list

# Изменение SL
python src/manage_trade.py \
  --env real \
  --modify-sl \
  --trade-id <trade_id> \
  --new-sl 242.00

# Изменение TP
python src/manage_trade.py \
  --env real \
  --modify-tp \
  --trade-id <trade_id> \
  --new-tp 258.00

# Закрытие сделки
python src/manage_trade.py \
  --env real \
  --close \
  --trade_id <trade_id>

# Отмена сделки
python src/manage_trade.py \
  --env real \
  --cancel \
  --trade_id <trade_id>
```

## 🛡️ Безопасность и риск-менеджмент

### Правила безопасности

1. **Тестовый режим всегда первым**
   ```bash
   # Всегда тестируйте в sandbox
   python src/create_trade_orders.py --env sandbox --ticker SBER --direction BUY --entry 100 --sl 95 --tp 110 --capital 10000 --risk 1.0
   ```

2. **Проверка баланса перед сделкой**
   ```bash
   # Проверьте доступный капитал
   python src/get_account_balance.py --env real
   ```

3. **Использование stop-loss**
   - Всегда устанавливайте SL
   - Не инвестируйте больше 1-2% капитала в одну сделку
   - Используйте RR ≥ 2:1

4. **Мониторинг позиций**
   - Запускайте мониторинг после создания сделки
   - Проверяйте состояние сделок регулярно
   - Имейте план действий при разных сценариях

### Параметры риск-менеджмента

| Параметр | Рекомендуемое значение | Описание |
|----------|----------------------|----------|
| Risk % | 1.0% | Риск на сделку как процент от капитала |
| RR | ≥ 2.0 | Соотношение риск/прибыль |
| Confidence | ≥ 60% | Уверенность в сигнале |
| SL | < Entry < TP (BUY) | Стоп-лосс всегда ниже входа для BUY |
| TP | Entry < TP (BUY) | Тейк-профит всегда выше входа для BUY |

## 🔧 Расширенные функции

### 1. Пакетная обработка сделок

```bash
# Создание нескольких сделок
for ticker in SBER GAZP LKOH; do
  python src/create_trade_orders.py \
    --ticker $ticker \
    --direction BUY \
    --entry 245.50 \
    --sl 240.00 \
    --tp 255.00 \
    --capital 50000 \
    --risk 1.0 \
    --confidence 70 \
    --env real
done
```

### 2. Автоматический мониторинг портфеля

```bash
# Мониторинг всех открытых сделок
python src/manage_trade.py --env real --monitor-all
```

### 3. Генерация отчетов

```bash
# Ежедневный отчет по сделкам
python src/generate_daily_report.py --env real

# Еженедельная статистика
python src/generate_weekly_report.py --env real
```

## 📊 Анализ результатов

### 1. Просмотр истории сделок

```bash
# JSON формат
cat reports/trades.json

# Текстовый отчет
python src/api/trade_journal.py
```

### 2. Статистика сделок

```python
# Расчет основных метрик
- Win rate: (прибыльные сделки / все сделки) * 100
- Средний RR: среднее соотношение риск/прибыль
- Общая прибыль: сумма всех прибыльных сделок
- Общий убыток: сумма всех убыточных сделок
- Максимальная просадка: максимальная потеря капитала
```

### 3. Оптимизация стратегии

```bash
# Анализ эффективности по тикерам
python src/analyze_ticker_performance.py --ticker SBER

# Оптимизация параметров риск-менеджмента
python src/optimize_risk_parameters.py --backtest 30
```

## 🚨 Обработка ошибок

### Распространенные проблемы и решения

1. **API недоступен**
   ```bash
   # Проверьте интернет-соединение
   ping api-invest.tinkoff.ru
   
   # Попробуйте fallback режим
   python src/get_account_balance.py --env real --fallback
   ```

2. **Недостаточно средств**
   ```bash
   # Проверьте баланс
   python src/get_account_balance.py --env real
   
   # Уменьшите размер позиции
   python src/create_trade_orders.py --risk 0.5 ...
   ```

3. **Неверный тикер**
   ```bash
   # Проверьте список доступных тикеров
   python src/moex_tickers.py
   
   # Убедитесь, что тикер существует в MOEX
   ```

4. **Рынок закрыт**
   ```bash
   # Проверьте торговые часы MOEX
   python src/market_time.py
   
   # Мониторинг будет работать только в часы торгов
   ```

### Восстановление после сбоев

1. **Отмена всех ордеров**
   ```bash
   python src/manage_trade.py --env real --cancel-all
   ```

2. **Восстановление журнала сделок**
   ```bash
   python src/recover_trade_journal.py --env real
   ```

3. **Перезапуск мониторинга**
   ```bash
   python src/restart_monitors.py --env real
   ```

## 🎯 Рекомендации по использованию

### Для начинающих
1. **Начинайте с sandbox режима**
2. **Используйте небольшие риски (0.5-1.0%)**
3. **Тестируйте разные стратегии**
4. **Анализируйте результаты каждой сделки**
5. **Не инвестируйте больше, чем готовы потерять**

### Для опытных трейдеров
1. **Используйте автоматизированный workflow**
2. **Настройте параметры риск-менеджмента**
3. **Мониторьте несколько позиций одновременно**
4. **Используйте технический и фундаментальный анализ**
5. **Регулярно анализируйте и оптимизируйте стратегию**

### Для портфельного управления
1. **Диверсифицируйте позиции по разным тикерам**
2. **Используйте корреляцию между активами**
3. **Настройте автоматическое управление рисками**
4. **Регулярно ребалансируйте портфель**
5. **Используйте стоп-лоссы для защиты капитала**

## 📞 Поддержка

### При возникновении проблем
1. **Проверьте логи** в `reports/`
2. **Убедитесь в правильности конфигурации** `.env`
3. **Проверьте доступность T-Bank API**
4. **Обратитесь к документации**

### Документация
- `src/README.md` - Подробная документация скриптов
- `trade-executor-example.md` - Примеры использования
- `TRADING_SYSTEM_ENHANCEMENT.md` - Техническое описание системы

### Контакты
- GitHub Issues: для багов и feature requests
- Документация: для вопросов по использованию
- Конфигурация: для настройки системы

## 🚀 Заключение

Улучшенная система торговли предоставляет:
- **Полный цикл управления сделками**
- **Высокий уровень безопасности**
- **Автоматизацию рутинных операций**
- **Глубокую аналитику и отчетность**
- **Гибкость и масштабируемость**

Система готова к использованию и обеспечивает профессиональный подход к торговле на MOEX через T-Bank API.