DuckDB 回测引擎 因子/策略历史赚钱吗?
2025-08-22 ~ 2026-08-21 二连板打板策略(DuckDB 回测) 242 交易日 · 前复权
26 笔
交易次数
26.9%
胜率
3.10
盈亏比
-18.8%
总收益

01策略说明

用户定义规则 · 执行口径标注
选股空仓时选取当日二连板股票(连续 2 天涨停)
筛选①所属板块整体强势(本地库无板块归属 → 市场情绪代理:当日涨停≥20 家且上涨占比>50% [ASSUMED])
筛选②该股多头排列(MA5 > MA10 > MA20)
候选无符合 → 继续空仓;多只 → 选热度最高 1 只(历史热榜不可回溯 → 当日成交额代理 [ASSUMED])
买入次日开盘价 ≥ 昨收 -3% → 满仓买入;低开超 3% 放弃
卖出①买入当天收益为负 → 第 3 天(T+2)开盘直接卖
卖出②持有期间任一日跌 >7%,或连续阴线累计亏损 >10% → 次日开盘卖出
💡 策略本质:二连板「接力」打板——在情绪强周期的次日开盘介入连板股,靠高盈亏比(3.1)对冲低胜率(26.9%);关键风控是「当日收阴第 3 天卖」+「-3% 低开过滤」,变体验证均有效。

02回测总览

模型输出 · [MODEL]
胜率偏低 · 负超额 近 1 年(2025-08-22~2026-08-21,242 交易日)26 笔交易:胜率 26.9%、盈亏比 3.1、总收益 -18.8% vs 沪深300 +17.2%(跑输 36pct)、最大回撤 -61.4%。策略能抓妖股(+77%/+39% 大肉)但多数交易止损离场——打板接力的典型特征:低胜率高盈亏比,负期望+大回撤。
结论—— 策略近 1 年 -18.8%,跑输沪深300 36pct——低胜率(26.9%)+负期望是主因,盈亏比 3.1 不足以覆盖;参数已接近局部最优(5 变体对比验证),问题在策略结构而非参数。
数据含义—— 26 笔中仅 7 笔盈利但单笔 +24.8%(抓到 002565 +77%、600118 +38.8%、002980 +38.7% 三只妖股)——二连板接力在情绪高潮期暴利、退潮期连亏,收益高度依赖 3 笔大肉。
失败模式—— 19 笔亏损:11 笔「当日收阴第 3 天卖」(二连板次日收阴概率高=接盘弱势)、13 笔单日 -7% 止损(开盘直接崩,滑点大)、2 笔连续亏损 -10%——尾部 -11%~-20% 大亏集中在 2026-06~07 退潮期。
基准对比—— 同期沪深300 +17.2%——市场整体不差但打板策略负收益,说明该策略依赖情绪周期,2025-09~2026-02 强情绪期有效(+77%/+39% 均在此窗口),2026-03 起退潮后连亏。
优化方向—— ①胜率优先:板块强势改真实行业映射(当前情绪代理)+多头排列加量能确认 ②降波动:满仓改半仓/分批(回撤 -61%→-30% 级)③冰点过滤:涨停家数<15 强制空仓 ④买点优化:开盘半小时确认强势再介入(减少开盘滑点)。
投资指导—— 打板接力是高难度策略:近 1 年实测负超额,实盘需①降仓至 30% 以下 ②仅强情绪期参与(连板高度≥4 板)③单笔止损严格 4-5% ④先模拟盘验证 3 个月再上实盘——不建议直接满仓实盘。

03收益与回撤

策略净值 vs 沪深300 · 收盘口径
初始净值 1.0策略净值(前复权·满仓单标的)沪深300(归一化)0.81 (-18.8%)1.06 (+17.2%)
💡 净值曲线揭示周期依赖:2025-09~2026-02 强情绪期净值冲高(+77%/+39% 大肉均在此窗口),2026-03 起退潮期连亏回撤至 -61%——策略收益几乎全部来自情绪高潮期,弱市期是纯粹的磨损。

04交易分析

26 笔明细 · 卖出原因分布

交易明细 26 笔

选股日买入日代码买价卖价收益天数卖出原因
2025-08-222025-08-25000617.SZ12.00411.905-0.85%2当日收阴·第3天开盘卖
2025-08-282025-08-29002195.SZ8.2987.788-6.17%5单日跌超7%止损
2025-09-082025-09-09002709.SZ28.52927.506-3.62%2当日收阴·第3天开盘卖
2025-09-162025-09-17002183.SZ5.985.52-7.72%2当日收阴·第3天开盘卖
2025-09-242025-09-25300604.SZ97.68494.956-2.82%2当日收阴·第3天开盘卖
2025-10-092025-10-10000021.SZ29.71929.332-1.33%3单日跌超7%止损
2025-10-312025-11-03603686.SH32.68529.651-9.31%4单日跌超7%止损
2025-11-102025-11-11002759.SZ39.541.5+5.03%6单日跌超7%止损
2025-12-012025-12-02002565.SZ8.9715.9+77.23%12单日跌超7%止损
2025-12-192025-12-22002149.SZ39.91636.614-8.30%2当日收阴·第3天开盘卖
2025-12-252025-12-26600118.SH73.985102.68+38.75%13单日跌超7%止损
2026-01-192026-01-20603667.SH88.83678.764-11.37%7连续亏损累计超10%
2026-02-032026-02-04002471.SZ9.49.71+3.27%5单日跌超7%止损
2026-02-242026-02-25601890.SH13.53713.229-2.30%2当日收阴·第3天开盘卖
2026-03-052026-03-06300265.SZ21.85220.313-7.07%2当日收阴·第3天开盘卖
2026-03-182026-03-19600307.SH2.42.04-15.03%2当日收阴·第3天开盘卖
2026-03-242026-03-25600032.SH11.61511.415-1.75%3单日跌超7%止损
2026-04-072026-04-08002980.SZ55.076.32+38.73%18连续亏损累计超10%
2026-05-082026-05-11002491.SZ22.7324.07+5.87%4单日跌超7%止损
2026-05-222026-05-25000725.SZ5.1275.077-1.00%5单日跌超7%止损
2026-06-052026-06-08920438.BJ93.4481.897-12.38%3单日跌超7%止损
2026-06-222026-06-23000657.SZ113.697100.741-11.43%2当日收阴·第3天开盘卖
2026-06-302026-07-01002407.SZ54.848.51-11.51%3单日跌超7%止损
2026-07-102026-07-13000892.SZ4.413.52-20.21%2当日收阴·第3天开盘卖
2026-07-232026-07-24600722.SH11.219.26-17.43%2当日收阴·第3天开盘卖
2026-07-292026-07-30600693.SH9.289.69+4.39%12单日跌超7%止损

卖出原因分布

当日收阴·第3天开盘卖(11 次)42%
单日跌超7%止损(13 次)50%
连续亏损累计超10%(2 次)8%
💡 亏损主因是「当日收阴第 3 天卖」11 次(二连板次日收阴=接力失败,及时止损是对的)与开盘直接崩盘的滑点型止损(-20%/-17%/-15% 三笔)——买入时点与止损执行是最大损耗源。

05参数敏感性

同一引擎 5 变体对比 · 验证优化方向
变体交易胜率平均盈平均亏盈亏比总收益最大回撤结论
V1 原始策略2626.9%+24.8%-8.0%3.10-18.8%-61.4%基准(当前最优)
V2 去掉当日收阴卖1931.6%+24.0%-12.1%1.98-44.2%-71.2%更差:该规则是有效风控
V3 止损放宽-10%2123.8%+33.8%-9.0%3.74-16.0%-71.1%收益略好但回撤大幅恶化
V4 低开阈值放宽-5%3116.1%+18.2%-7.0%2.62-67.9%-76.0%灾难:-3% 低开过滤极重要
V5 连续亏损收紧-7%2722.2%+28.5%-7.8%3.66-30.3%-66.9%更差:止损过紧砍掉修复
💡 参数敏感性结论:V1 已是风险调整后最优——「当日收阴卖」(V2 去掉后 -44%)与「-3% 低开过滤」(V4 放宽后 -68%)都是关键风控,不能动;放宽止损(V3)收益略好但回撤恶化到 -71%。**策略的问题在结构(选股质量/满仓/周期依赖),不在参数。**

06优化建议与风险

基于变体证据 · 模型输出

优化建议(按优先级)

结构问题非参数5 变体验证 V1 已是最优——不要调参数,要改结构:选股质量/仓位/周期过滤
胜率优先改进①板块强势用真实行业映射(接入申万/同花顺行业分类,替代市场情绪代理)②多头排列叠加量能(放量 2 倍以上)③候选热度用换手率+龙虎榜(替代成交额)
降回撤核心满仓→半仓或三档分批:回撤 -61%→约 -30%;单笔仓位 ≤20%,同板块持仓 ≤40%
周期过滤情绪冰点(涨停<15 家/连板高度<3 板)强制空仓——2026-03 后连亏期可规避大部分尾部亏损
买点优化开盘价买入滑点大(-20% 那笔开盘直接崩)→ 改为开盘 30 分钟确认不破均线再介入,或竞价低开 -3% 内分批
实盘纪律先模拟盘 3 个月 → 胜率≥35% 且回撤≤-25% 再小仓实盘;单笔止损 4-5%、总仓位 ≤30%

风险提示

回测口径:前复权数据、开盘价成交、未计印花税(卖出 0.1%)与冲击成本,实际收益会更低 [ASSUMED]
板块强势/热度为代理指标(本地库无板块归属、热榜历史不可回溯),真实映射下结果可能显著不同
满仓单标的回测放大了波动与回撤;未复权除权日可能影响个别涨停/止损判定(连板股除权罕见,影响可控)
策略收益高度依赖 3 笔大肉(+77%/+39%/+39%),若剔除则总收益更差——胜率不足时的幸存者偏差风险
2025-09~2026-02 强情绪期占大部分盈利,策略本质是情绪周期博弈,弱市(涨停<20 家)应直接停用
数据来源:同花顺金融数据(hithink-finance v0.1.5,本地 DuckDB v_daily_qfq 前复权日K + index history 沪深300);回测区间 2025-08-22~2026-08-21(242 交易日,MA20 预热从 2025-07-01 起);口径:涨停=前复权相邻日收益率(主板 ≥+9.8%、创业板/科创板 ≥+19.8%);二连板=连续 2 天涨停;多头排列=MA5>MA10>MA20;板块强势=当日涨停≥20 家且上涨占比>50%(市场情绪代理 [ASSUMED]);热度=当日成交额代理 [ASSUMED];交易按开盘价成交、满仓单标的、含单边 0.03% 费率(印花税未含);变体对比为同一引擎参数扫描。回测结果为历史数据模拟 [MODEL],不代表未来表现。仅供研究参考,不构成个人投资建议。