策略
忠实复现FMZ的BTC永续合约等差网格
结局: 已放弃
FmzBtcPerpetualArithmeticGrid
结局总结
该策略旨在用固定的BTC数量复现FMZ BTC永续合约等差网格。31天冒烟测试发生亏损,但其指标被标记为不可靠。经过三轮迭代,QA发现仓位上限和组合亏损停机规则与复现假设相冲突,因此运行在验证阶段终止。
假设
恐龙宝宝的可交易策略:https://www.fmz.com/strategy/330440. 在 1 分钟数据上使用 BTCUSDT.BINANCE 永续合约。源代码默认值为:M=20 倍杠杆,H=50 个初始仓位单位,每笔网格订单 n1=1 BTC,网格=200 USDT,xia=35000 USDT,shang=60000 USDT。作者另行进行的 2021 回测将 H 设为 30,n1=0.001 BTC,网格=300 USDT,xia=50000 USDT,余额为 2500 USDT。启动时,仅当 buyp 和 sellp 保存值都为真时才恢复它们;否则将其设为最新价格减去和加上网格值,并保存。之后的网格移动不会保存。测试时保留源策略的固定 BTC 数量;其声称的表现尚未验证。
采用所引用的 FMZ 回测覆盖值。重启处理会持久化网格编号,并取消保留的网格订单,以便后续 K 线重新创建订单;若成交与取消同时发生,仍可匹配其 ID。敞口和组合亏损上限处理 QA 安全问题。若固定初始仓位不可行,则明确报错,而非静默跳过入场。由于指标被标记为不可靠,31 天盈利结果仍无法确定。
verification_loop:验证失败(第4层——QA审查)[类别=hypothesis_mismatch]: - [edge_concern] 31天冒烟测试发生亏损,但其指标被标记为不可靠;需要完整历史回测才能评估表现。 - [严重] 0.06 BTC仓位上限会阻止固定数量的网格加仓。所引述的FMZ策略没有仓位上限,因此这改变了被测试的策略。(第126行)——修复:忠实复现时移除上限,或在单独假设下测试设有上限的版本。 - [严重] 新增的20%组合亏损规则会平仓并永久禁止重新入场。所引述的策略没有此类止损或停机规则。(第75行)——修复:忠实复现时移除止损,或将其作为单独的风险管理变体进行测试。
实现
BTC永续合约等差网格,采用所引述的2021固定数量,总敞口上限为0.06 BTC,并设有20%组合亏损止损。
验证结果
验证失败(第4层——QA审查)[类别=hypothesis_mismatch]: - [edge_concern] 31天冒烟测试发生亏损,但其指标被标记为不可靠;需要可靠的完整历史回测才能评估表现。 - [严重] 0.06 BTC仓位上限会阻止固定数量的网格加仓。所引述的FMZ策略没有仓位上限,因此这改变了被测试的策略。(第126行)——修复:忠实复现时移除上限,或在单独假设下测试设有上限的版本。 - [严重] 新增的20%组合亏损规则会平仓并永久禁止重新入场。所引述的策略没有此类止损或停机规则。(第75行)——修复:忠实复现时移除止损,或将其作为单独的风险管理变体进行测试。
迭代历史
验证失败(第4层——QA审查)[类别=hypothesis_mismatch]: - [edge_concern] 20天冒烟测试在一笔空头交易后被强制平仓。应在修正执行和仓位规模缺陷后再评估策略优势。 - [严重] 假设要求初始订单采用固定的H × n1 BTC数量。按可用权益限制该数量会改变被测试的策略。(第61行)——修复:使用固定数量并确保测试资金充足,或将资金上限版本定义为单独假设。 - [严重] 网格订单在下限至上限范围之外停止。源策略FMZ在价格高于上限时仍为空头继续运行网格,在价格低于下限时仍为多头继续运行网格。(第45行)——修复:按照源策略,根据仓位方向应用边界条件。 - [严重] 未平仓的GTC网格订单会导致继承的K线处理器跳过should_exit()。因此,只要这些订单仍未平仓,价格越过边界就无法触发所需的全仓退出。(第53行)——修复:在未平仓订单检查之前检查边界退出,取消网格订单并平仓。 - [严重] 代码从未保存初始网格锚点,但框架的模拟盘快照会保存后续移动值。源策略保存初始锚点,后续移动值则不保存。(第35行)——修复:仅持久化初始锚点对,且只有在两个值都为真时才恢复。 - [严重] 备用仓位规模逻辑可能动用20x杠杆容量中的95%,却没有硬性亏损上限。冒烟测试中的仓位被强制平仓;这是仓位规模缺陷,并非盈利能力的证据。(第66行)——修复:提交初始订单前明确限制仓位风险。
验证未通过(第 4 层 — QA 审查)[类别=code_defect]: - [edge_concern] 31 天沙盒亏损了 75.4%,但其指标被标记为不可靠。盈利能力需要通过完整回测验证。 - [严重] 模拟交易重启时会保留未平仓的 GTC 网格订单,但策略未将这些订单的 ID 保存到持久化状态中。继承的订单成交后,无法与任何网格 ID 匹配,因此锚点不会移动,也不会取消反向订单。(第 32 行)— 修复:重启时核对继承订单及其 ID,或取消并重新创建订单。测试重启后发生网格成交的情况。 - [严重] 保证金检查只覆盖初始仓位。不利方向的网格成交会持续增加 0.001 BTC,却没有累计敞口上限或组合止损;空头所需保证金和亏损可能无限增长。(第 117 行)— 修复:限制每次加仓后的累计网格敞口和亏损,并执行组合级止损。 - [严重] 新增的 3% 初始保证金门槛,在所引用的 2,500 USDT 余额下,会在 BTC 超过 50,000 USDT 时抑制源策略的固定规模入场。因此,它会阻止在 60,000 USDT 以上执行指定的空头入场。(第 90 行)— 修复:为忠实测试保留固定规模入场,或明确拒绝不可行的资金配置,而不是悄然跳过入场。
结局总结
在不添加限制的情况下测试源网格,并在单独假设下评估风险管理版本。
经过三轮迭代,第 4 层 QA 发现,0.06 BTC 仓位上限和 20% 组合亏损停机改变了受测策略。验证阶段中止了运行;未进入后续审查阶段。
尝试使用固定的BTC数量复现FMZ BTC永续合约等差网格。
31天冒烟测试发生亏损,但其指标被标记为不可靠。没有提供可靠的完整历史结果,也没有交易数据或夏普指标。
放弃原因
verification_loop:验证失败(第4层——QA审查)[类别=hypothesis_mismatch]: - [edge_concern] 31天冒烟测试发生亏损,但其指标被标记为不可靠;需要可靠的完整历史回测才能评估表现。 - [严重] 0.06 BTC仓位上限会阻止固定数量的网格加仓。所引述的FMZ策略没有仓位上限,因此这改变了被测试的策略。(第126行)——修复:忠实复现时移除上限,或在单独假设下测试设有上限的版本。 - [严重] 新增的20%组合亏损规则会平仓并永久禁止重新入场。所引述的策略没有此类止损或停机规则。(第75行)——修复:忠实复现时移除止损,或将其作为单独的风险管理变体进行测试。
分析
简易等差合约网格
Stratmill 是研究与模拟交易工具,不提供财务建议,也不是经纪商。回测与模拟结果均为假设性结果。交易存在亏损风险。