feat(nofxi): Phase 3 complete - Exchange factory, Web UI, Strategy runner, Docker

Exchange Factory:
- CreateTrader() supports Binance/OKX/Bybit/Bitget/KuCoin/Gate
- Auto-registers traders from config on startup
- Direct import of nofx/trader packages (merged into main module)

Web UI:
- Dark theme chat interface at :8900
- Quick action sidebar (analyze, watch, positions, balance)
- Real-time health check indicator
- Mobile responsive

Strategy Runner:
- /strategy start BTC 1h - AI auto-analyzes on interval
- /strategy stop <id> - stop strategy
- /strategy list - view active strategies
- Notifications pushed to Telegram on signals
- Configurable intervals: 15m/30m/1h/4h

Docker:
- Multi-stage Dockerfile (alpine, ~20MB)
- docker-compose.yml with volume persistence

Bug fixes:
- Fixed panic on empty exchanges config
- Fixed thinking mode response parsing (qwen3 content:null)
- Added request timeout (55s) in Telegram handler
- Better error logging
This commit is contained in:
shinchan-zhai
2026-03-22 22:04:37 +08:00
parent 6e19ada7fc
commit 832f4be4e8
16 changed files with 784 additions and 87 deletions

20
nofxi/config.yaml Normal file
View File

@@ -0,0 +1,20 @@
agent:
name: "NOFXi"
language: "zh"
log_level: "info"
web_port: 8900
telegram:
token: "8486603557:AAEqw9whg6uG63ROGCRJbz8D_J0lsXeQKps"
allowed_ids: []
llm:
provider: "dashscope"
base_url: "https://coding.dashscope.aliyuncs.com/v1"
api_key: "sk-sp-0511a0b965af4866831a0345e8109ea0"
model: "qwen3-coder-plus"
database:
path: "nofxi.db"
exchanges: []