基于日线数据的 ETF 量化回测引擎,内置图形界面、数据维护(TickFlow 下载 / 清洗 / 指标计算)与 9 种内置策略。
安装依赖:
pip install pandas numpy matplotlib pillow tickflow启动图形界面:
python GUI/main.py命令行批量回测:
python MAIN/BACK_TEST.pyMY_ENGINE/
├── GUI/ # 图形界面(入口 main.py)、股票池 stock_pool.txt
├── MAIN/ # 脚本入口:BACK_TEST.py 批量回测、TODAY.py 查看近 20 日高低点
├── BASE/ # 回测核心引擎 backtest_ai.py(Figuration 类)、SUPPORT.py
├── SUPPORT/ # 数据下载 DOWNLOAD.py、指标计算 MACD.py
├── DATA/ # 按日整理的行情 CSV(每文件包含多只标的)
├── UNCLEANED/ # 原始下载数据 + 清洗脚本 DEAL.py
├── OUTPUT/ # 回测输出:对比图、各策略日志与图表
└── TEST/ # 测试脚本
- TickFlow 按股票池下载日线数据,原始文件写入
UNCLEANED/ UNCLEANED/DEAL.py清洗合并到DATA/的按天 CSVSUPPORT/MACD.py计算 EMA / KDJ 指标列并写回DATA/- 回测引擎读取
DATA/,结果输出到OUTPUT/
| 方法 | 策略 | 状态 |
|---|---|---|
| method_1 | 买入持有 | ✅ 可用 |
| method_2 | MACD + KDJ | |
| method_3 | MACD 零轴交叉 | |
| method_4 | MA5 × MA20 金叉死叉 | ✅ 可用 |
| method_5 | 海龟突破 | ✅ 可用 |
| method_6 | 逆势 Counter | ✅ 可用 |
| method_7 | Bollinger | ✅ 可用 |
| method_8 | ER-Turtle | ✅ 可用 |
| method_9 | GK-Skew | ✅ 可用 |
OUTPUT/<标的代码>/ 下包含:
comparison.png/comparison.txt— 各策略资产曲线对比与指标(夏普比率 / 年化收益率 / 最大回撤)log_<策略名>/— 各策略的独立回测日志与图表
- 每个策略独立运行,失败不会影响其它策略,原因会显示在结果表中
- method_2 / method_3 需先在「数据维护」页计算 MACD / KDJ 指标列
- 下载清洗会重建每日文件并清空指标列,之后需重新计算指标再回测
- 界面已自动配置 matplotlib 中文字体,图表中文图例可正常显示