策略
XRP 日线回调至-20SMA做多——在已确认的上升趋势中逢低买入
结局: 已放弃
XrpDailyPullbackTo20SmaUptrendLong
结局总结
该策略将经典的 Raschke-Connors 回踩 -20SMA(简单移动均线)'在已确认上升趋势中逢低买入'模式应用于 XRP 日线期货,选择该品种主要出于多元化配置的目的,因为流水线中其他策略均不交易 XRP。从机制层面看它是有效的——在干净的数据路径上 39 次多头入场清晰地触发,没有出现管道故障——但结果却是一致性的灾难:总回报率为 -87%,Sharpe 比率为 -2.68,盈利因子为 0.34,胜率为 10.3%,几乎与该模式文献记录应产生的 55-65% 完全相反。分析师判断这是一个结构性前提失败,而非可通过参数调整修复的问题:XRP 在冲顶后出现 2021-2025 的下跌趋势,意味着上升趋势过滤门仅在短暂的死猫式反弹中开启,因此策略反复在逐步熄火的反弹行情中追高买入。该策略在 3 次迭代后于优化前阶段的回测审查环节被放弃,从未进入优化、风险审查或模拟交易阶段。
假设
一种基于LONG-ONLY回撤的策略,应用于XRPUSDT.BINANCE永续期货(Binance USD-M),使用DAILYK线。与当前流程中的所有其他多头策略不同(后者通过突破、金叉或趋势延续触发器,在动量CONFIRMATION时入场),该策略在已确认的上升趋势中出现PULLBACK时入场。其机制是:当XRP处于已确认的上升趋势中(200-SMA上升、50-SMA > 200-SMA、价格 > 50-SMA)时,等待价格回撤并触及20-SMA,然后在价格收盘重新站上20-SMA的第一天做多。这是经典的“两根K线回撤”/Raschke“圣杯”形态(Raschke-Connors 1996《Street Smarts》、Brooks 2009《Trading Price Action Trends》),据文献记载,该形态在趋势市场中的胜率为55-65%,因为它:(a)通过更高时间周期的移动平均线确认上升趋势仍然完好;(b)在暂时性折价处入场,相比突破入场能够提供更紧的自然止损位置。选择XRP的原因是:(1)ZERO个现有流程策略交易XRP——纯粹的多元化收益;(2)XRP拥有干净的5+年Binance数据(已于2018上线,从未弃用,也没有交易品种名称重塑);(3)XRP在任何已知失败模式中都NOT(避免MATIC弃用、AAVE/ATOM精度映射缺口、BINANCE_SPOT 4H数据摄取问题、Hyperliquid历史数据限制以及补充数据覆盖缺口);(4)XRP具有独特的微观结构(散户参与度高、SEC裁决导致的制度变化2023、贝莱德现货XRP ETF申报2025),因此其回撤形态比高度套利的BTC/ETH交易对更加有序;(5)XRP的小数精度为4(而BTC为2),但已纳入已知精度映射。该策略在结构上与流程中的所有11策略以及所有24+次会话失败均正交:不是突破策略,不是均值回归,不是跨资产,不是横截面,不是日历,不是日内低周期,不是累积,不依赖补充数据,不是期权,不是跨交易场所,也不是配对策略。交易频率约为每年15-25次入场(足够低,不会让手续费占主导),持仓周期为5-20天(足够长,可以捕捉有意义的波动;又足够短,可以为滚动前向评估产生大量已平仓交易)。
针对 Layer-2 合成失败的 Iteration-3 修复:`_sma() takes 2 positional arguments but 3 were given`。辅助函数的签名/调用约定不一致;我将其重命名为清晰且无歧义的实例方法 `_sma_of(self, vals, n)`,并更新了全部三个调用点(`sma_fast`、`sma_mid`、`sma_slow`),使其恰好传入两个位置参数(vals, n)。这是可能的最小改动——入场/出场/仓位逻辑、导入项、类结构以及连续信号脚手架(已通过 Layer 1)均未改动,因此不会导致任何早期层级检查回归。
优化前审查:该策略灾难性且持续无利可图——每个市场状态年份均为负收益(2021 -51%、2023 -40%、2024 -40%、2025 -45%),total_return -87%,夏普比率 -2.68,profit_factor 0.34,probabilistic_sharpe 0.01,连续亏损 16 笔。更具决定性的是,实际胜率为 10.3%——几乎反向于 Raschke/Connors 回调形态据记录应产生的 55-65%——意味着约有 90% 的时间入场方向错误。这是 XRP 上的结构性前提失败(其见顶后的 2021-2025 下跌趋势意味着 200 上升/50>200/价格>50 的上升趋势门槛只会在短暂的死猫反弹中打开,因此“首次收盘重新站上 20-SMA”会系统性地买入正在熄灭的反弹),而不是可修复的参数或出场调优问题。参数优化可以调节参数,却无法将一个胜率为 10%、每年均为负收益的逢低买入策略转化为可推广的优势;花费 2 小时进行优化没有合理性。(收盘价<50-SMA 的趋势破坏出场对于 XRP 的日波动率也过于严格,会在 15% 止盈前将交易反复止损出场,但重做出场规则也无法挽救一个在全部六年中都没有优势的入场策略。)
实现
仅做多的日线回调策略,交易 XRPUSDT.BINANCE 永续期货。通过 200-SMA 上升、50-SMA > 200-SMA,以及收盘价 > 50-SMA 确认上升趋势;随后在回撤触及 20-SMA 时准备入场,并在首次收盘价重新上穿 20-SMA 时做多(Raschke-Connors“圣杯”回调形态)。在 6% 止损、15% 止盈、收盘价跌破 50-SMA(趋势破坏)或经过 20 天时间止损时退出。
验证结果
验证失败(Layer 2——合成场景): 使用的参数:['sma_mid', 'sma_fast', 'sma_slow', 'min_notional', 'position_pct', 'max_hold_bars', 'stop_loss_pct', 'slope_lookback', 'take_profit_pct'] 检查 __init__ 是否从 self.parameters.get() 设置了所有属性。 - steady_uptrend:TypeError:XrpDailyPullbackTo20SmaUptrendLong._sma() 接受 2 个位置参数,但给出了 3 个(K线时间戳:1735702860000) - steady_downtrend:TypeError:XrpDailyPullbackTo20SmaUptrendLong._sma() 接受 2 个位置参数,但给出了 3 个(K线时间戳:1735702860000) - flat_ranging:TypeError:XrpDailyPullbackTo20SmaUptrendLong._sma() 接受 2 个位置参数,但给出了 3 个(K线时间戳:1735702860000) - volatility_spike:TypeError:XrpDailyPullbackTo20SmaUptrendLong._sma() 接受 2 个位置参数,但给出了 3 个(K线时间戳:1735702860000) - zero_volume:TypeError:XrpDailyPullbackTo20SmaUptrendLong._sma() 接受 2 个位置参数,但给出了 3 个(K线时间戳:1735702860000) - price_gap:TypeError:XrpDailyPullbackTo20SmaUptrendLong._sma() 接受 2 个位置参数,但给出了 3 个(K线时间戳:1735702860000)
回测评审
- 夏普
- -2.68
- 总收益率
- -87.16%
- 最大回撤
- 89.11%
- 总交易数
- 39
- 胜率
- 10.3%
- 盈利因子
- 0.34
干净的单一资产、仅K线实现;入场按预期触发(39 次入场,丢弃 0 次),因此不是零交易或管线故障
连续的非冻结信号,以及在干净的 XRP 数据路径上的正确仅做多构造
灾难性且 CONSISTENT:每年均为负收益(2021 -51%、2023 -40%、2024 -40%、2025 -45%),total_return -87%,夏普比率 -2.68,PF 0.34,probabilistic_sharpe 0.01,连续亏损 16 笔
胜率 10.3% 几乎反向于该回调形态据记录应产生的 55-65%——该前提在 XRP 上失败,而非参数问题
收盘价<50-SMA 的趋势破坏出场条件对于 XRP 的日波动率而言过于严格,会在 15% 止盈触发前以小额亏损将入场交易反复止损出场,进一步加剧糟糕的入场质量
XRP 在 -2021 后结构性地处于下跌趋势;上升趋势门槛只会在短暂的死猫反弹期间打开,因此逢低买入入场会系统性地买入正在熄灭的反弹
分析
不要 NOT 进入优化——回测因仓位规模缺陷和疑似逻辑缺陷而失真,因此并非对该回踩前提的公平测试。请在重新运行前修复以下问题: 1. SIZING(关键):将 position_pct=0.95(接近满仓)替换为基于风险的仓位规模。仓位规模应使得触及 6% 止损时亏损约权益的 1%,即 数量 = (权益 × risk_frac) / (价格 × stop_loss_pct),其中 risk_frac ~0.01。目前 avg_position_pct 为 195%,而单笔交易在名义 6% 止损下亏损约权益的 21%——账户以约 2x 的速度复利下行。在波动率为 134% 的 altcoin 上,无论信号如何,95% 的名义仓位都是鲁莽的。 2. STOP GAP-THROUGH(关键):在日线级别 XRP 上,仅在 bar 收盘时检查的 6% PnL 止损会让跳空缺口远远突破该止损(largest_loss 21% 对比 6% 止损)。要么将止损相对于该品种的日内波幅放宽或按比例设定,要么接受日线 bar 无法严格执行 6% 紧止损这一现实,并相应地调整仓位规模。 3. WIN-RATE / EXIT LOGIC(关键):所声明的回踩胜率为 55-65%,但实际实现为 10.3%,且该策略在 2021 期间LOSES(XRP 最大的牛市年份)。在上升趋势中逢低买入者理应在牛年获利。请调查:(a) '首次收盘重新站上 20-SMA' 入场信号是否恰好在局部顶部、紧接反转前触发?(b) '收盘 < 50-SMA' 趋势破坏退出是否过早切断了赢家,而止损却放任输家跳空扩大?请添加诊断:记录入场价格与随后 20 根 bar 的最高/最低价,以确认入场确实发生在上涨行情之前。请验证 200-SMA 上升 + 50>200 + 收盘价>50 的过滤门是否真正将入场限制在已确认的上升趋势内,而非在冲顶阶段被激活。 只有在仓位规模正确的运行之后才能重新提交;如果在正确仓位规模下 win_rate 和 profit_factor 仍 <0.3/1.0,则该前提在 XRP 上无优势,应予以放弃。
结局总结
某个形态记录的胜率仅在其假设的市场状态下成立——对于处于多年下跌趋势的资产,“已确认上升趋势”门槛主要会在死猫反弹时打开,因此逢低买入会系统性地买入正在熄灭的反弹;在信任这一优势之前,应先验证所需的市场状态确实存在于该资产的历史中。
分析师在优化前回测审查中的结论是,在经过 3 次迭代后“放弃”——该策略灾难性且持续无利可图,因此从未进入优化及所有后续阶段(不存在优化或分析师报告)。
一种仅做多的日线“圣杯”/两根K线回调策略,交易 XRPUSDT.BINANCE 期货;在 50/200-SMA 确认的上升趋势中,回调触及 20-SMA 后,在首次收盘重新站上该线时买入——以折价入场,而不是等待突破确认。
在 247 个数据日内,进行了 39 笔做多交易(发出 39 个入场信号,丢弃 0 个),并遭受重大亏损:总收益率 -87.16%,夏普比率 -2.68,盈利因子 0.34,最大回撤 89.1%,胜率为 10.3%,连续亏损最多达 16 笔。在每个市场状态年份均为负收益(2021 -51%、2023 -40%、2024 -40%、2025 -45%)。
Stratmill 是研究与模拟交易工具,不提供财务建议,也不是经纪商。回测与模拟结果均为假设性结果。交易存在亏损风险。