Stock Backtesting — 量化回测系统 Demo
为后续量化项目提前做的原型验证:双均线策略回测 + AI 策略优化建议。
📊 双均线策略回测 :MA5 / MA20 金叉买入、死叉卖出,含手续费与滑点处理
📈 回测可视化 :净值曲线、回撤曲线(matplotlib + seaborn)
🤖 AI 策略优化建议 :将回测结果交给 LLM(DeepSeek / 阿里云 DashScope 兼容接口)分析,给出参数优化建议
🌐 Web 测试工具 :Tailwind 前端页面(src/main.html),浏览器直接调用 API
模块
技术
后端
FastAPI + Pydantic
数据
Tushare Pro
策略
双均线(MA5/MA20),Pandas 向量化回测
AI
OpenAI SDK(DashScope 兼容模式)
可视化
matplotlib / seaborn
前端
原生 HTML + Tailwind CDN
# 1. 安装依赖
pip install fastapi uvicorn tushare pandas matplotlib seaborn openai
# 2. 配置环境变量(复制 .env.example 为 .env,填入 Tushare Token)
cp .env.example .env
# 3. 启动后端
cd src
uvicorn app:app --reload
# 4. 浏览器打开 src/main.html 测试
方法
路径
说明
GET
/api/backtest?symbol=000001.SZ
运行双均线策略回测,返回收益/回撤/交易信号
POST
/api/optimize
将回测结果发送给 AI,返回参数优化建议
Stock-backtesting/
├── src/
│ ├── app.py # FastAPI 后端
│ ├── date_fetcher.py # Tushare 行情数据获取与预处理
│ ├── ma_strategy.py # 双均线策略
│ ├── ai_optimizer.py # AI 优化建议
│ ├── visualizer.py # 回测可视化
│ └── main.html # Web 测试工具
└── README.md
本项目为学习用途的原型 Demo,非生产级系统
策略参数(5/20)与数据源均为演示配置