FinHub 信号产品 · 按客户端执行口径的回测(只读采集器真实历史) ================================================================================ 生成命令:python3 /opt/pmbot/tools/client_bt.py --out /www/pmdata/reports/client_bt_latest.txt 脚本位置:collector/tools/client_bt.py(只读 /www/pmdata/orders*/*.jsonl 与 rounds.jsonl) 计次口径:**按回执**(1 次 = 一个成功下单回执,与份数无关)—— 与平台当前设置一致 市场 : btc-updown-5m(产品只卖 BTC) 样本窗口 : 09-26 07:43 ~ 09-28 01:57(1.76 天) 信号条数 : 122 条(122 条对上结算方向,0 条缺 outcome) 信号频率 : 69.3 条/天 执行口径 : 吃 ask(+滑点),硬上限 0.85;固定 10 份 × 倍数;持有到结算 次数单价 : 0.0330 U/次(9.9U/300 次) 盈亏口径 : 赢(方向对)= (1-成交价) × 份数;输 = -成交价 × 份数; 次数费 = 成交单数 × 每次数 × 单价;净额 = 盈亏 - 次数费。 场景 信号 成交 胜率 胜率 95% 置信区间 均ask 盈亏U 次数费U 净额U ---------------------------------------------------------------------------------------------------------------- ×1 滑点+0.00 122 122 77.0% 68.8% ~ 83.6% 0.698 88.70 4.03 84.67 ×1 滑点+0.01 122 122 77.0% 68.8% ~ 83.6% 0.698 76.50 4.03 72.47 ×1 滑点+0.02 122 122 77.0% 68.8% ~ 83.6% 0.698 64.30 4.03 60.27 ×1 滑点+0.05 122 122 77.0% 68.8% ~ 83.6% 0.698 27.70 4.03 23.67 ×3 滑点+0.05 122 122 77.0% 68.8% ~ 83.6% 0.698 83.10 4.03 79.07 ×5 滑点+0.05 122 122 77.0% 68.8% ~ 83.6% 0.698 138.50 4.03 134.47 ---------------------------------------------------------------------------------------------------------------- 判定(×1 / 滑点 +0.05 / 上限 0.85 —— 客户端默认口径): · 成交 122 单,胜率 77.0%(95% 置信区间 68.8% ~ 83.6%) · 平均信号价 0.698 → 平均**成交价** 0.748 · 盈亏平衡胜率 = 平均成交价 = **74.8%**(赢赚 1-价、输亏价,所以平衡点就是成交价; 注意是**含滑点之后**的价,不是信号价) · 结论:置信区间**跨过**平衡点 → 这段历史**分不出正负**(上界 83.6% 距平衡点 74.8% 还有 8.8 个百分点;样本 122 单 / 1.76 天) · 每单净额 +0.227 U;滑点从 0 加到 0.05,每单少赚 0.500 U · 触到 0.85 上限被丢弃的信号:0 条(0.0%) · 次数费 / |盈亏| = 14.5%(×1、+0.05) ---------------------------------------------------------------------------------------------------------------- 盘口深度约束下的对照(**这一节最该看**): 上面的表假设"全部成交",但实盘是 FAK 限价 —— 那一刻最优档只有 ask_sz 份时, 多出的部分吃不到。按 ask_sz 限流后: 场景 成交单 部分成交 实际份数 盈亏U 每单U ×1 无深度约束 122 0 1220 27.70 0.227 ×1 按 ask_sz 限流 122 8 1187 27.93 0.229 ×3 无深度约束 122 0 3660 83.10 0.681 ×3 按 ask_sz 限流 122 28 3226 72.08 0.591 ×5 无深度约束 122 0 6100 138.50 1.135 ×5 按 ask_sz 限流 122 47 4906 55.33 0.454 ★ 结论:**倍数并不会线性放大收益**。×5 时有 47/122(近 40%)的信号那一档挂单量 不够,实际只成交一部分 —— 每单收益(0.454U)反而低于 ×3(0.591U)。 ★ 建议:**先用 ×1 实测**;想看不过薄的盘口就加 --skip-thin(客户端会跳过并提示)。 ---------------------------------------------------------------------------------------------------------------- 次数消耗速度与套餐寿命(当前口径:**按回执**): · 实测信号频率 69.3 条/天;每条信号客户端下一次单,成交一次扣 1 次 · 所以 **套餐寿命与倍数无关**:9.9U/300 次 ≈ **4.3 天**,19.9U/800 次 ≈ **11.5 天** · 平台日收约 2.29 U(不论客户用 ×1 还是 ×5) · 对照:另一种口径(按份数:1 次 = 10 份成交)下 ×5 一天烧 347 次、 300 次不到 1 天就用完,平台日收可到 11.44 U —— 但客户要多付 5 倍,**当前未启用** -------------------------------------------------------------------------------- 怎么读这份报告(给客户): ① 胜率高不代表赚钱:平衡点是**成交价**(这里 74.8%),而置信区间跨过了它 → 这段历史**不足以判定正负**。 ② 滑点是最大的隐性成本:+0.05 把每单净额从 0.63U 压到 0.23U。所以客户端用 「FAK 限价 + 硬上限 0.85」:挂不上就不成交,绝不追高。 ③ 盘口深度会吃掉倍数(见上一节)—— 这是 ×5 不如 ×1 划算的直接原因。 ④ 次数费本身是成本(约占盈亏 14.5%)。 ⑤ 样本只有 1.76 天 / 122 单;5 分钟盘的价格里含做市商边际,越多人按同一信号 下单,成交价越差。**平台不承诺任何收益。** 免责声明:以上是基于历史数据的回测,不代表未来收益。数字资产交易可能损失全部本金。