基于多智能体架构的金融交易分析与策略回测平台,提供策略开发、回测验证和风险分析功能。
- 多策略支持: SMA、RSI、MACD、布林带等经典策略
- 完整回测: 支持滑点、手续费、仓位管理的真实回测
- 风险分析: VaR、波动率、夏普比率等风险指标
- 多智能体: 市场分析、风险评估、执行管理协作决策
- RESTful API: 完整的API接口支持
┌─────────────────────────────────────────────────────────┐
│ API Gateway │
├─────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────┐ │
│ │ 数据管理 │ │ 策略引擎 │ │ 回测引擎 │ │
│ │ Manager │ │ Engine │ │ Backtest │ │
│ └─────────────┘ └─────────────┘ └─────────────────┘ │
├─────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────────┐ │
│ │ 风险分析 │ │ 多智能体 │ │ 技术指标 │ │
│ │ Risk │ │ Agents │ │ Indicators │ │
│ └─────────────┘ └─────────────┘ └─────────────────┘ │
└─────────────────────────────────────────────────────────┘
ai-trading-analytics/
├── src/
│ ├── api/ # FastAPI应用
│ │ ├── main.py # 应用入口
│ │ └── trading_routes.py # API路由
│ ├── data/ # 数据模块
│ │ └── market_data.py # 市场数据管理
│ ├── strategy/ # 策略模块
│ │ └── strategy_engine.py # 策略引擎
│ ├── backtest/ # 回测模块
│ │ └── backtest_engine.py # 回测引擎
│ ├── risk/ # 风险模块
│ │ └── risk_analyzer.py # 风险分析
│ └── agents/ # 智能体模块
│ └── multi_agent.py # 多智能体系统
├── tests/ # 单元测试
├── requirements.txt # 依赖
└── README.md
pip install -r requirements.txtuvicorn src.api.main:app --reload --port 8001import requests
response = requests.post("http://localhost:8001/api/v1/market-data", json={
"symbol": "AAPL",
"timeframe": "1d",
"periods": 100
})
data = response.json()
print(f"数据点数: {data['total']}")response = requests.post("http://localhost:8001/api/v1/signals", json={
"symbol": "AAPL",
"strategy": "sma",
"timeframe": "1d",
"periods": 100,
"params": {"fast_period": 10, "slow_period": 30}
})
signals = response.json()
print(f"信号数量: {signals['total_signals']}")
for s in signals['signals'][:5]:
print(f" {s['timestamp']}: {s['signal_type']} @ {s['price']}")response = requests.post("http://localhost:8001/api/v1/backtest", json={
"symbol": "AAPL",
"strategy": "sma",
"timeframe": "1d",
"periods": 200,
"initial_capital": 100000,
"commission_rate": 0.001,
"position_size": 0.1
})
result = response.json()
print(f"最终权益: ${result['final_equity']:,.2f}")
print(f"总收益率: {result['metrics']['total_return_pct']:.2f}%")
print(f"夏普比率: {result['metrics']['sharpe_ratio']:.2f}")
print(f"最大回撤: {result['metrics']['max_drawdown_pct']:.2f}%")| 端点 | 方法 | 描述 |
|---|---|---|
/api/v1/market-data |
POST | 获取市场数据 |
/api/v1/indicators |
POST | 计算技术指标 |
/api/v1/signals |
POST | 生成交易信号 |
/api/v1/backtest |
POST | 运行策略回测 |
/api/v1/strategies |
GET | 获取可用策略 |
/api/v1/assets |
GET | 获取可用资产 |
/api/v1/ticker/{symbol} |
GET | 获取实时行情 |
{"fast_period": 10, "slow_period": 30}{"period": 14, "oversold": 30, "overbought": 70}{"fast": 12, "slow": 26, "signal": 9}{"period": 20, "std_dev": 2.0}- 总收益率 / 年化收益率
- 波动率 / 最大回撤
- 夏普比率 / 索提诺比率
- 胜率 / 盈亏比
- 平均持仓时间
- VaR (95%, 99%)
- CVaR (Expected Shortfall)
- Beta系数
- 相关性分析
- 压力测试
- 市场分析Agent: 趋势分析、支撑阻力
- 风险评估Agent: 交易风险、组合风险
- 执行管理Agent: 订单执行、滑点控制
- 协调器Agent: 决策协调、共识机制
MIT License
欢迎提交Issue和Pull Request!