A股量化,单策略真的不够用了:我开源了一个双策略自动切换框架

发布时间:2026/6/29 16:46:18
A股量化,单策略真的不够用了:我开源了一个双策略自动切换框架 一、为什么做单策略量化的人最后都沉默了做 A 股量化有个很真实的困境趋势策略在 2020 年白马行情里赚麻了到了 2023 年震荡市回撤 30% 起步。均值回归策略在震荡市里高抛低吸很爽遇到 2024 年 9 月底那种逼空行情直接空仓踏空。单策略的本质是押注市场永远配合你。但 A 股的市场风格切换比变脸还快。所以我一直在想能不能让程序自己判断现在是什么市然后自动切换策略二、Dual-Strategy Quant 的设计思路这个项目的核心就三层1. 行情雷达Market Radar不是看大盘涨跌而是给市场环境打分0-100维度权重说明趋势状态均线ADX40%判断多头/空头/震荡波动率分位数25%低波动加分高波动减分量价关系健康度20%价升量增 vs 放量滞涨市场情绪15%量比与趋势确认评分映射70-100分动量趋势策略抓主升浪40-69分均值回归策略高抛低吸0-39分空仓或轻仓保命2. 双策略独立运行策略一均值回归— 布林带量能确认震荡市高胜率55-65%策略二多因子动量— 价格动量趋势强度成交量确认趋势市高盈亏比2:1~3:1两条策略逻辑完全独立互不干扰。3. 因子引擎Factor Engine这是基础设施提供100 技术指标MA, RSI, MACD, KDJ, BOLL, ATR...类 SQL 的因子表达式close BOLL(close, 20, 2)[2]逐日回测 参数网格扫描三、一个 YAML 就能跑回测不需要写 Python配个 YAML 就能自定义策略name: 我的RSI策略capital: 100000start_date: 20260101select_buy:- RSI(close, 14) 30- volume TS_MEAN(volume, 5) * 1.5buy_at_least_count: 2select_sell:- RSI(close, 14) 70sell_at_least_count: 1order_by_signal: RETURNS(close, 5)order_by_topK: 5hold_days_max: 10loss_stop_pct: -5.0然后一行命令python scripts/run_strategy.py --config config/my_strategy.yaml四、技术栈与项目结构Python 3.8依赖极简akshare pandas numpy pyyaml数据源支持 akShare 东方财富带 SQLite 本地缓存和降级策略自动过滤科创板、创业板、北交所、ST 股dual-strategy-quant/├── config/ # YAML 策略配置├── src/│ ├── factors/ # 因子引擎核心│ ├── strategies/ # 双策略封装│ ├── radar/ # 行情雷达│ ├── backtest/ # 回测引擎 报告│ └── database.py # SQLite 缓存├── scripts/│ ├── run_strategy.py # 回测入口│ └── run_param_scan.py # 参数网格扫描五、免责声明重要⚠️本项目仅供学习研究不构成任何投资建议。股市有风险投资需谨慎。回测不等于实盘任何框架都无法预测黑天鹅。六、为什么开源做这个框架花了不少业余时间但一个人的思路总有盲区。我想把它开源出来看看社区里有没有同样在做 A 股量化的朋友一起完善行情雷达的评分权重是否合理双策略切换的阈值是否需要动态调整能不能加入更多数据源如 tushare、jqdata如果你也在做 A 股量化或者对因子引擎的设计感兴趣欢迎来仓库交流。 https://github.com/chenhe81/dual-strategy-quant