在 `backend/database/models.py` 中新增 `MarketCache` 类,支持从数据库缓存交易对信息和资金费率,减少对币安API的调用频率。更新 `binance_client` 和 `market_scanner` 以优先从缓存读取数据,添加超时处理和重试机制,提升系统稳定性。同时,增强了资金费率和主动买卖量的过滤逻辑,确保在开仓前进行有效的风险控制。 |
||
|---|---|---|
| .. | ||
| archive | ||
| API_KEY_SETUP.md | ||
| apply_altcoin_strategy.sh | ||
| ATR_STRATEGY_IMPLEMENTATION.md | ||
| ATR.md | ||
| check_accounts_no_trades.sh | ||
| CONFIG_GUIDE.md | ||
| CURRENT_STRATEGY.md | ||
| DEPLOYMENT.md | ||
| ENTRY_CONTEXT_入场思路记录.md | ||
| fix_cursor_path.sh | ||
| INDEX.md | ||
| INSTALL.md | ||
| MULTI_USER_ARCHITECTURE.md | ||
| PROJECT_SUMMARY.md | ||
| QUICK_START.md | ||
| README_ARCHITECTURE.md | ||
| README.md | ||
| risk_profile_2026-02-15.md | ||
| STOP_LOSS_TAKE_PROFIT_EXPLANATION.md | ||
| STRUCTURE.md | ||
| SUPERVISOR_TROUBLESHOOTING.md | ||
| WebSocket共用与限频评估.md | ||
| 交易分析_2026-02-14_策略执行与优化建议.md | ||
| 交易对比分析_2026-02-14_盈利期vs亏损期.md | ||
| 交易表现分析_20260214.md | ||
| 全局配置与数据库同步.md | ||
| 后续方向实施说明.md | ||
| 山寨币策略快速应用完整指南.md | ||
| 当前策略方案总结_2026-02-15.md | ||
| 快速使用_盈利期对齐配置.md | ||
| 持仓分析_2026-02-15_与参数建议.md | ||
| 止损止盈双通道说明.md | ||
| 止损止盈计算说明.md | ||
| 止盈止损与盈利优化_2026-02-15.md | ||
| 盈利提升方案.md | ||
| 策略与信号评估及改进建议.md | ||
| 行情接口可用性说明.md | ||
| 订单与统计一致性说明.md | ||
币安自动交易系统 (Binance Automated Trading System)
基于币安API的Python自动交易系统,实现自动发现涨跌幅最大的货币对并执行交易策略。
文档导航:详细文档列表与优先阅读顺序见 INDEX.md。历史/一次性分析已移至 archive/。
项目结构
auto_trade_sys/
├── trading_system/ # 交易系统核心(Python)
│ ├── main.py # 主程序入口
│ ├── config.py # 配置文件
│ ├── binance_client.py
│ ├── market_scanner.py
│ ├── risk_manager.py
│ ├── position_manager.py
│ ├── strategy.py
│ └── ...
│
├── backend/ # 后端服务(FastAPI + MySQL)
│ ├── api/ # FastAPI应用
│ ├── database/ # 数据库
│ └── ...
│
├── frontend/ # 前端应用(React)
│ ├── src/
│ └── ...
│
└── [文档文件]
注意:根目录不再有 main.py,请直接运行 trading_system/main.py。
## 快速开始
### 1. 初始化数据库
```bash
mysql -u root -p < backend/database/init.sql
cd backend
python init_config.py
2. 创建虚拟环境(推荐)
# 在项目根目录创建虚拟环境(供backend和trading_system共享)
python3 -m venv .venv
source .venv/bin/activate # Linux/Mac
# 或 .venv\Scripts\activate # Windows
3. 启动后端服务
cd backend
pip install -r requirements.txt
export DB_HOST=localhost DB_USER=root DB_PASSWORD=xxx DB_NAME=auto_trade_sys
uvicorn api.main:app --host 0.0.0.0 --port 8000
4. 启动前端
cd frontend
npm install
npm run dev
5. 安装并启动交易系统
# 方式1:使用安装脚本(推荐)
cd trading_system
./setup.sh
# 然后运行(确保虚拟环境已激活)
source ../.venv/bin/activate # 或 source .venv/bin/activate
python main.py
# 方式2:手动安装
cd trading_system
source ../.venv/bin/activate # 激活虚拟环境
pip install -r requirements.txt
python main.py
注意:现代 Linux 系统(如 Ubuntu 22.04+)不允许直接在系统 Python 中安装包,必须使用虚拟环境。详见 INSTALL.md。
功能特性
- 自动市场扫描:每1小时扫描所有USDT永续合约,发现涨跌幅最大的前10个货币对
- 智能交易:基于技术指标的高胜率策略(预期胜率60-70%)
- 严格仓位控制:
- 单笔最大仓位:账户余额的5%
- 总仓位上限:账户余额的30%
- 风险控制:
- 自动止损:3%(动态调整)
- 自动止盈:5%
- 移动止损:保护利润
- 可视化配置:通过Web界面管理所有配置
- 数据统计:查看交易记录、胜率、盈亏分析
技术栈
交易系统
- Python 3.10+
- python-binance
- asyncio
- 技术指标计算
后端
- FastAPI
- PyMySQL
- MySQL
前端
- React 18
- Vite
- Recharts
配置说明
1小时主周期配置
- 主周期: 1小时
- 确认周期: 4小时
- 入场周期: 15分钟
- 扫描间隔: 1小时
配置管理
- 通过前端界面:http://localhost:3000/config
- 配置自动保存到数据库
- 交易系统自动读取新配置
文档
QUICK_START.md- 快速开始指南INSTALL.md- 安装指南(虚拟环境设置)DEPLOYMENT.md- 部署指南README_ARCHITECTURE.md- 架构说明PROJECT_SUMMARY.md- 项目总结trading_system/README.md- 交易系统文档backend/README.md- 后端文档frontend/README.md- 前端文档
部署
独立部署
- 后端: 可单独部署到服务器
- 前端: 可单独部署(Nginx静态文件)
- 交易系统: 可单独运行(supervisor管理)
详见 DEPLOYMENT.md
注意事项
- 数据库: 确保MySQL服务运行
- API密钥: 在配置界面或环境变量中设置
- 测试网: 建议先在测试网运行
- 风险提示: 加密货币交易存在高风险
许可证
本项目仅供学习和研究使用,使用者需自行承担交易风险。