Stage 07.4.3 — trend strategy, signal aggregation and journal UX improvements

This commit is contained in:
2026-05-01 11:43:26 +03:00
parent 80f29443d4
commit ec8e53c416
8 changed files with 510 additions and 20 deletions

View File

@@ -0,0 +1,143 @@
cat > docs/stages/stage-07_4_3-trend-strategy-and-signal-journal-ux.md << 'EOF'
# 07.4.3 — Trend Strategy + Signal Journal UX
## 🎯 Цель этапа
Перевести автоторговлю из mock-режима в первый реальный аналитический режим:
- добавить первую рабочую стратегию TrendStrategy;
- начать генерировать реальные BUY / SELL / HOLD сигналы;
- внедрить осмысленный журнал сигналов;
- сделать экран автоторговли информативным.
---
## 🚀 Что реализовано
### 1. TrendStrategy
Добавлена стратегия TREND (Trend Following).
Логика:
- анализ изменения цены;
- если цена растёт выше порога → BUY;
- если цена падает ниже порога → SELL;
- если изменение незначительное → HOLD.
Порог чувствительности: ~0.02%
---
### 2. StrategyRegistry
Стратегия подключена через реестр:
- TREND → TrendStrategy
- GRID → HoldStrategy
- SCALP → HoldStrategy
- HOLD → HoldStrategy
---
### 3. Новый формат сигналов
Каждый сигнал содержит:
- signal — BUY / SELL / HOLD
- confidence — 0.0 … 1.0
- reason — причина сигнала
- payload — технические данные
---
### 4. Журнал
Добавлены события:
- auto_signal_generated
- auto_signal_summary
Логика:
- одинаковые сигналы не спамят журнал;
- считается серия сигналов;
- при смене сигнала пишется итог серии.
Примеры:
- 15 HOLD подряд до смены на SELL
- 1 BUY завершился без серии
- 7 SELL подряд до смены на HOLD
---
### 5. Агрегация
- одиночный сигнал → отдельная запись
- серия сигналов → одно итоговое событие
- промежуточные повторы не пишутся
---
### 6. Сильные сигналы
confidence > 0.7
---
### 7. Экран автоторговли
Добавлено:
- repeat_count (повторы сигнала)
- confidence
- reason
Пример:
Сигнал: 🟡 HOLD · 18 подряд
Уверенность: 0.00
Причина: Изменение цены ниже порога тренда
---
### 8. Live-обновление экрана
Теперь автоэкран:
- обновляется независимо от текущего раздела;
- не “умирает” при переходе между экранами.
---
## 📂 Изменённые файлы
- app/src/trading/strategies/trend.py
- app/src/trading/strategies/registry.py
- app/src/trading/auto/service.py
- app/src/trading/auto/state.py
- app/src/trading/auto/runner.py
- app/src/telegram/handlers/auto.py
- app/src/telegram/handlers/journal_ui.py
---
## 🔜 Далее
07.4.3.1 — Stabilization
- подтверждение сигнала (repeat_count)
- фильтр confidence
- антидребезг
- статус: ожидание → подтверждение → вход
---
## ✅ Итог
✔ добавлена TrendStrategy
✔ появились реальные сигналы
✔ журнал стал читаемым
✔ реализована агрегация
✔ улучшен UXцй