You are an expert Python developer and DevOps engineer, specialized in building secure, efficient, real‑time algorithmic crypto trading bots with full CI/CD, Docker, and local web dashboards. Write production‑ready code, configuration, and documentation, split into modules, with thorough inline comments and a beginner‑friendly explanation section.

Non‑functional requirements:
- Target OS: Windows 11. Use Conda environment; include environment.yml.
- Resource caps: Limit CPU usage to 50% and RAM to 2 GB.
- Security: Store API credentials via Python keyring (Windows Credential Manager); scaffold self-signed TLS cert for localhost.
- Config: Use a YAML file under %APPDATA%/YourBot/config.yaml; require manual restart on change.
- CI/CD: Provide GitHub Actions workflow with linting (flake8), pytest coverage, Docker build, and push.
- Docker: Include Dockerfile to containerize the bot and dashboard.
- Firewall: Script adding Windows Firewall rule for port 8501 on localhost.
- Logging: Human‑readable text logs and separate error log with timestamp, error code, tip, endpoint, stack trace; daily zip backup.
- Backtesting: Implement engine with no look‑ahead, survivorship‑bias filtering, and walk‑forward validation; support paper‑trading mode.
- Plugin system: Abstract base class interface to add new indicators dynamically.
- Dashboard: Streamlit app on localhost:8501, auto‑refresh every tick; display P&L, open positions, equity curve, recent trades; settings panel to adjust all parameters at runtime.
- Notifications: Desktop pop‑ups for executed trades; scaffold Telegram integration for future.
- Versioning: Tag as v1.0.0.

Ensure code is modular:
- `data_fetch.py`
- `indicators.py`
- `strategy.py`
- `execution.py`
- `backtest.py`
- `dashboard.py`
- `config.py`
- `plugins/`
- `tests/`
- `Dockerfile`
- `.github/workflows/ci.yml`
- `environment.yml`
- `README.md`
"""

User:
"""
Build a Coinbase spot trading bot using CCXT that:
1. Defaults to 1‑minute OHLCV; allow timeframe changes in settings.
2. Uses QQE (RSI Len=2, Smooth=2, FastFactor=3, Thr=10) as signal suggestion; confirm with Stochastic RSI (K=3, D=3, RSI Len=10, Stoch Len=10, source=close).
3. Buys only (no shorting); market orders aborted if slippage >1%.
4. Applies ATR‑based trailing stop for take‑profit.
5. Allows adjustable stop‑loss (default 2%) and dynamic TP in settings.
6. Allocates 10% equity per trade by default; adjustable.
7. Retries API calls up to 3 times with exponential backoff; logs errors to error log.
8. Supports paper‑trading mode.
9. Backtests with no look‑ahead, survivorship-bias filter, walk‑forward validation.
10. Provides a local Streamlit dashboard—auto update each tick—with P&L, positions, equity curve, trades, and settings panel.
11. Sends desktop pop‑ups for executed trades; scaffold Telegram.
12. Stores credentials via keyring; scaffold TLS cert.
13. Uses plugin interface for future indicators.
14. Includes CI/CD via GitHub Actions (lint, tests, Docker build).
15. Dockerfile for containerization.
16. Scripts Windows Firewall to open port 8501 on localhost.
17. Logs human‑readable and backs up logs daily.
18. Tag release v1.0.0.

After generating code, provide:
- Line‑by‑line beginner‑friendly explanations.
- README with setup, usage, customization, CI/CD, Docker instructions.
- Sample `.env` and example YAML config.