162 lines
3.9 KiB
Markdown
162 lines
3.9 KiB
Markdown
# 项目结构说明
|
||
|
||
## 目录结构
|
||
|
||
```
|
||
auto_trade_sys/
|
||
├── trading_system/ # 交易系统核心(Python)
|
||
│ ├── __init__.py
|
||
│ ├── main.py # 主程序入口
|
||
│ ├── config.py # 配置文件
|
||
│ ├── binance_client.py # 币安客户端
|
||
│ ├── market_scanner.py # 市场扫描器
|
||
│ ├── risk_manager.py # 风险管理
|
||
│ ├── position_manager.py # 仓位管理
|
||
│ ├── strategy.py # 交易策略
|
||
│ ├── indicators.py # 技术指标
|
||
│ ├── unicorn_websocket.py # Unicorn WebSocket
|
||
│ ├── config.example.py # 配置示例
|
||
│ ├── requirements.txt # 依赖
|
||
│ └── README.md # 文档
|
||
│
|
||
├── backend/ # 后端服务(FastAPI + MySQL)
|
||
│ ├── api/ # FastAPI应用
|
||
│ │ ├── main.py # API入口
|
||
│ │ ├── routes/ # 路由
|
||
│ │ └── models/ # API模型
|
||
│ ├── database/ # 数据库
|
||
│ │ ├── connection.py
|
||
│ │ ├── models.py
|
||
│ │ └── init.sql
|
||
│ ├── config_manager.py # 配置管理器
|
||
│ ├── init_config.py # 配置初始化
|
||
│ ├── requirements.txt # 依赖
|
||
│ ├── start.sh # 启动脚本
|
||
│ └── README.md # 文档
|
||
│
|
||
├── frontend/ # 前端应用(React)
|
||
│ ├── src/
|
||
│ │ ├── components/ # React组件
|
||
│ │ ├── services/ # API服务
|
||
│ │ └── App.jsx
|
||
│ ├── package.json
|
||
│ ├── vite.config.js
|
||
│ └── README.md
|
||
│
|
||
├── main.py # 交易系统启动入口(根目录)
|
||
├── requirements.txt # 项目依赖说明
|
||
├── README.md # 项目主文档
|
||
└── [其他文档文件]
|
||
```
|
||
|
||
## 模块说明
|
||
|
||
### trading_system/ - 交易系统核心
|
||
|
||
**功能**:
|
||
- 自动市场扫描
|
||
- 技术指标分析
|
||
- 交易策略执行
|
||
- 风险控制
|
||
- 仓位管理
|
||
|
||
**运行方式**:
|
||
```bash
|
||
# 方式1:从根目录
|
||
python main.py
|
||
|
||
# 方式2:直接运行
|
||
cd trading_system
|
||
python main.py
|
||
```
|
||
|
||
### backend/ - 后端服务
|
||
|
||
**功能**:
|
||
- RESTful API
|
||
- 配置管理
|
||
- 数据统计
|
||
- 数据库操作
|
||
|
||
**运行方式**:
|
||
```bash
|
||
cd backend
|
||
uvicorn api.main:app --host 0.0.0.0 --port 8000
|
||
```
|
||
|
||
### frontend/ - 前端应用
|
||
|
||
**功能**:
|
||
- 配置管理界面
|
||
- 交易记录查看
|
||
- 统计仪表板
|
||
|
||
**运行方式**:
|
||
```bash
|
||
cd frontend
|
||
npm install
|
||
npm run dev
|
||
```
|
||
|
||
## 依赖管理
|
||
|
||
每个模块有独立的 `requirements.txt`:
|
||
|
||
- `trading_system/requirements.txt` - 交易系统依赖
|
||
- `backend/requirements.txt` - 后端API依赖
|
||
- `frontend/package.json` - 前端依赖
|
||
|
||
## 导入路径
|
||
|
||
### 交易系统内部导入
|
||
|
||
交易系统模块使用相对导入,支持:
|
||
- 直接运行:`from binance_client import ...`
|
||
- 作为模块:`from .binance_client import ...`
|
||
|
||
### 跨模块导入
|
||
|
||
交易系统访问后端:
|
||
```python
|
||
project_root = Path(__file__).parent.parent
|
||
backend_path = project_root / 'backend'
|
||
sys.path.insert(0, str(backend_path))
|
||
from database.models import ...
|
||
```
|
||
|
||
## 配置文件
|
||
|
||
### 交易系统配置
|
||
|
||
- `trading_system/config.py` - 主配置文件
|
||
- 优先从数据库读取
|
||
- 回退到环境变量和默认值
|
||
|
||
### 后端配置
|
||
|
||
- 环境变量:`DB_HOST`, `DB_USER`, `DB_PASSWORD` 等
|
||
- 数据库配置表:`trading_config`
|
||
|
||
## 日志文件
|
||
|
||
- 交易系统日志:`trading_bot.log`(项目根目录)
|
||
- 后端日志:可配置(默认控制台输出)
|
||
|
||
## 部署建议
|
||
|
||
### 开发环境
|
||
|
||
所有模块在同一台机器运行:
|
||
- 后端:localhost:8000
|
||
- 前端:localhost:3000
|
||
- 交易系统:后台运行
|
||
|
||
### 生产环境
|
||
|
||
可独立部署:
|
||
- 后端:单独服务器或Docker
|
||
- 前端:Nginx静态文件
|
||
- 交易系统:supervisor管理
|
||
|
||
详见 `DEPLOYMENT.md`
|