这是 LynxCrypto 加密量化交易系列的开篇。上篇讲清楚三件事:我昨天到底经历了什么、做这套系统需要懂的全部知识、以及一份可以直接落地的开发路线和开发提示词。下篇将是实现篇。
一、开盘:我的真实账本
先说事实,不美化。
昨天我开了一个 ZECUSDT 永续合约的网格,200 格、价格区间 800–2000 美元,马丁格尔加仓变体。一天下来:
- 做空单亏了 100 美。
- 但马丁网格整体赚了 100+ 美。
- 另外买的 ZEC 现货赚了 20 美。
- 资产到了 1080 美。
- 我刚出了 200 美,剩 880 美。
我的计划很激进:每天 800 本金做到 1000,赚 200,出金 200,周而复始。也就是说,日盈利目标 25%。
我的策略思路是:找一个能覆盖大多数 15 分钟线波动的 range,用这个 range 算风险和盈利的平衡点来决定进场位置,可以做多也可以做空——多头结束立马反手做空,但要有某些指标做风控,防住单边行情把利润一次清零。
这篇文章就是把这个思路掰开揉碎,看看它经不经得起数学和工程的双重审视。
先剧透结论:我昨天赚的那 100 美不是 alpha,是高胜率幻觉。25% 日收益在数学上不可能持续。但我的"区间 + 反手 + 风控"思路本身是对的——只是需要砍掉马丁格尔、加上凯利头寸和 regime 过滤,才能真正落地。
二、诚实复盘:那一笔 +100 不是 edge
我让一组 AI agent 用 Grok + 三引擎交叉验证 + 对抗验证做了一遍深度研究。三条保命结论全部被 CONFIRMED。
马丁格尔的数学本质:破产是必然的,不是偶然的
经典马丁格尔(亏损后翻倍加仓)的期望值:
$$EV = B(1 - (2q)^n)$$其中 q 是单次亏损概率,q > 1/2 时,(2q)^n > 1,EV 恒为负。更深一层:每一注的期望都是负的,而期望具有线性性——无论你怎么重排下注规模,负数之和还是负数。这是期望线性性,不是玄学。
破产概率呢?赌徒破产定理 + Borel-Cantelli 引理(我用 Python 实测过)给出:在有限本金、无限次交易下,破产概率趋近于 1。调和级数 Σ 1/(B+k) 发散 → P(破产)=1。这不是"小概率黑天鹅",是"大数定律级别的必然"。
真实案例一长串,全是"亏损加码"式崩盘:巴林银行(1995,8.27 亿美元,233 年银行倒闭)、LTCM(1998,130:1 杠杆,Fed 救援)、Archegos(2021,Bill Hwang 20 亿美元爆仓,判 18 年)、XIV Volmageddon(2018/2/5,单日 −96%)、Hyperliquid 上的 James Wynn(4M → 浮盈 100M → 亏 17.5M)。
我昨天那 100 美,就是 James Wynn 浮盈 100M 的迷你版。马丁网格在震荡市给你 70–90% 胜率的甜美曲线,然后在一次单边行情中断崖式爆仓。爆仓不是渐进的,是断崖的——你无法在爆仓前"看到它来"。
加密合约里,杠杆把马丁的指数风险再乘上倍数。100 倍逐仓杠杆下,价格反向约 0.5–1% 就触发强平(强平价 ≈ 开仓价 ×(1 − 1/杠杆 + 维持保证金率))——根本熬不到第一次加仓。我用的 ZEC 8 倍杠杆温和些(单笔强平约 12% 反向),但马丁每次下跌加仓会把强平距离越压越近,几段单边行情后照样清零。
替代方案:凯利公式
马丁格尔告诉你"亏了就加",凯利告诉你"该投多少":
$$f^* = \frac{bp - q}{b}$$它从最大化对数财富期望 E[log(W)] 推导而来,天生厌恶破产(因为 log(x) 在 x→0 时趋向负无穷,任何导致归零的策略被赋予无限负效用)。实盘用 1/4 凯利(分数凯利),以约 75% 的增长率换取方差和最大回撤大幅降低,同时补偿"胜率 p 和赔率 b 估不准"的模型风险。
一句话:期望值告诉你"该不该投",凯利告诉你"该投多少",两者构成完整决策。马丁格尔两者都不沾。
三、现实校准:25% 日收益在数学上意味着什么
这一节可能会让你(和我自己)不舒服,但必须算。
25% 日复利,252 个交易日:
$$1.25^{252} \approx 2.6 \times 10^{24}$$800 美元一年后变成 2.1 × 10²⁷ 美元——超过全球 GDP(约 110 万亿美元 = 1.1 × 10¹⁴ 美元)的 10¹³ 倍。大约第 115 个交易日,800 美元就超过全球 GDP。
人类历史上扣费后年化收益最高的基金是文艺复兴的 Medallion:1988–2018 共 31 年,扣费后年化约 39%(扣费前 66%),100 美变成约 210 万美元(Visual Capitalist 口径,净)。31 年只有一年负收益。但这个基金 1993 年后对外关闭,只有员工能买,规模封顶约 100 亿美元——正是因为容量受限才能维持高收益。而且它近年也降到了 19–30%(2022–2025)。
Medallion 的 39%/年折算日化大约 0.13%/天。我的 25%/天,是它的 1.9 × 10²⁴ 倍。这不是"比别人强一点",是数学量级上的不可能。
散户的真实数字更冷:史上最大零售交易研究(800 万交易者、2.95 亿笔交易、27 年)显示 74–89% 亏损,约 80% 两年内退出,仅约 1% 长期盈利。27 年来这个失败率没因为工具和教育改善而下降。
现实可追求的区间:纪律性系统交易者长期 10–15%/年 = 优秀,15–20% = 世界级,20–30% = 顶尖精英(极少数可持续),30%+ 持续 = 几乎不可能。
这不意味着我不能做。意味着:别用 25%/日 当目标,那会逼我重仓马丁、必然爆仓。 把目标校准到年化 15–25%,用 880 美做种子,先证明系统在样本外能正期望,再谈加仓。出金 200 的习惯可以保留——它反而是最好的风控:把赢的钱锁出赌桌。
四、知识地图:做这套系统我需要懂什么
这是整篇的研究骨架。每一条都来自前面那组 agent 的交叉验证。
4.1 网格的本质与陷阱
- 等差网格(固定价差)适合小区间短线震荡;等比网格(固定百分比)适合大区间高波动长线。马丁格尔本质是等比网格的变形。
- 价格区间通常设当前价的 1.5–3 倍(ZEC 建议 2 倍),网格数 20–30 格最优——我的 200 格偏多,每格利润有被手续费侵蚀的风险,应回测对比。
- 每格利润(扣杠杆后)须 ≥ 0.3–0.5% 才不亏。
- 传统网格在随机游走下数学期望为零,加手续费后为负。 纯网格没有 alpha。要让网格正收益,要么动态重置(突破边界时重置而非终止,学术回测 60–70% 年化、回撤远低于持有),要么靠 regime 过滤只在震荡市开。
- 资金费率按名义价值收(不是保证金):0.01%/8h 基准 = 年化侵蚀 10.95%;极端 0.1%/8h = 年化 109%。10 倍杠杆下,价格不动,中性正费率一年吞掉保证金 1.1 倍。
4.2 马丁格尔的赌徒谬误与凯利替代
见第二节。核心:永远不在负期望交易里用马丁格尔或其变体。网格马丁把"翻倍加仓"改成"均等加仓"降低了风险,但单边行情仍爆仓——无硬止损则爆仓必然。凯利分数是数学上更优的头寸规模法。
4.3 区间均值回归:我的思路被验证了,但反手要修正
好消息:我的"15 分钟 range + 进出场"思路方向是对的。研究给出了一套具体的五件套区间检测法(ATR 闸门 / BB 极值 / VWAP 公允价值 / Donchian 高低 / ADX+带宽 过滤)。
坏消息有两块:
第一,反手(long 结束即反手 short)的证据很弱。 我原本以为网上那些"71.5% 胜率反手系统"是真反手。研究扒了原文:它其实是 long-only-fade-then-flat(平仓即 flat,不开反向)。真正的双向 flip-chain 回测在学术上发表的极少。反手在均值处有严重的 whipsaw(来回打脸)风险。修正:反手默认做 flat(平仓即停),不做无条件翻转。真反手要独立回测验证有正边际后再开,否则永久 flat。
第二,也是最关键的:无 regime 过滤的区间策略是负期望。 同一套配置(BB + RSI)在 BTC 15 分钟上回测:胜率 59.3%,但 ROI −16.82%、PF 0.70、最大回撤 18.69%。胜率好看,盈亏比拖死它。加了 ATR 过滤的同类策略:胜率 ~60%、PF ~1.7。
为什么?区间策略的数学本质是 Ornstein-Uhlenbeck 过程。κ > 0(均值回归速度)时,fade(低买高卖)有正期望;κ → 0(趋势/随机游走)时,期望塌成 −成本。过滤(regime 识别)是把负期望转正的唯一杠杆。 这正好印证了我"要有指标防单边行情"的直觉——它不是可选优化,是生存前提。
4.4 趋势/震荡识别与熔断(防单边行情的核心)
不要指望单一指标。建一个多指标状态机:
| 指标 | 趋势态 | 震荡态 |
|---|---|---|
| ADX/DI | > 25 趋势确立 | < 20 震荡 |
| Hurst 指数 | > 0.55 持续 | < 0.45 均值回归 |
| Choppiness (CHOP) | < 38.2 趋势 | > 61.8 震荡 |
| BB 带宽 / ATR 百分位 | > 80th 扩张(减仓) | < 20th 压缩(待突破) |
| Supertrend + EMA 栈 | 20>50>200 多头排列 | — |
判定用多指标共谋:至少 3 个同时翻面才切换模式。单指标会频繁假 flip,把你在趋势和震荡之间来回打脸,既错失行情又吃滑点。
熔断分三档(必须 latching——跳闸后保持,需人工复位,防自动恢复再被套):日内回撤 −2% 减仓半、−3% 停新开、−5% kill switch 撤单平仓全停。再叠连续 3–5 亏损计数器:触发就暂停 + 重评估 regime 是否已翻转。波动率自适应:ATR 低百分位放仓、高百分位缩仓 + 放宽止损。
4.5 完整成本模型:每格利润要盖过什么
下单前必须算的盈亏门槛:
$$\Delta P_{be} = 2 \times \text{费率} + 2 \times (\text{半价差} + \text{市场冲击}) + \text{持仓期资金费率}$$ZECUSDT 2026-09-05 实测(三所官方核实):标准费率 Binance/OKX maker 0.02%·taker 0.05%、Bybit maker 0.02%·taker 0.055%。资金费率 8h 一结,当前 ZEC 整体略偏空头付费(多头收),但中性地板 +0.01%/8h ≈ 10.95%/年。
- taker 两侧往返:≈ 0.13–0.19% 价格(约 1.5 USDT 价差门槛)。
- maker 挂单两侧:≈ 0.04–0.06%(挂单省半价差 + 降费率,优先用 maker)。
- 每多持一个 8h 周期加 ~0.01%。
逐仓强平价(已验证 Binance 官方公式):
$$LP_{long} = \frac{EP(1 - 1/L) - cum/Pos}{1 - MMR} \approx EP(1 - 1/L + MMR)$$杠杆越高,强平价越贴近开仓价:10x 距强平约 9% 下跌,50x 约 1.4%,75x 约 0.8%。启动前必须校验爆仓价在网格范围外。
关键洞察:费率/滑点/资金费都按名义价值收,所以"价格%门槛"与杠杆无关;但折算到"保证金%“随杠杆线性放大。0.15% 价格门槛 × 50x = 7.5% 保证金/笔。
4.6 回测防坑:回测好看实盘亏的七宗罪
研究把"回测好看实盘亏"的根因挖得很透。回测隐含了实盘不存在的假设:无摩擦、静态 universe、用了未来数据、忽略数据挖掘的运气。
防坑纪律:
- WFO(walk-forward)而非单次切分,5–10 fold 跨牛熊震荡;fold 间 purging + embargo 防跨 fold 泄漏。
- 时间对齐消除 lookahead(off-by-one 是头号隐形杀手,年化虚增 2–30%):信号在 prior bar,执行在 next bar open。
- point-in-time universe 消除幸存者偏差(年化高估 100–400 bps)。
- MCPT(Monte Carlo 排列检验):打乱收益 1000+ 次,p < 0.01 才认有真边际。
- DSR / PBO / MinBTL 折扣数据挖掘:DSR 门槛 0.95;PBO > 0.5 即弃。实测冷酷:加密语料库最优策略 DSR 仅 0.029、PBO 中位 0.70(IS 最优者通常落 OOS 下半段)。
- 样本量:15m 日内 300–500 trades/2–3 年,跨 4 regime 各 50+;每多一个优化参数补 ~100 trades 自由度。
- 红旗清单(三同现即判过拟合):Sharpe > 3、最大回撤 < 5%、参数 > 30、trades < 100、胜率 > 80%、零平坦月、OOS 衰减 > 50%。
- 衰减链预算:回测 +35% → 扣费 +28% → 扣滑点 +18% → 扣部分成交 +14% → 扣心理 +8%。回测须留 60–80% 衰减缓冲。
我上一笔 100U 做空亏损,大概率就是没过这关——回测/直觉里"看着能赚”,实盘扣完成本 + regime 错了就亏。
4.7 订单执行工程:防重复防漏单
这一块决定了"策略对但执行错"会不会把钱搞没。生产级要点:
- 订单状态机六态,部分成交用累计量 z 对原始量 q 判断,不用单次成交量。
- 每单带 clientOrderId 幂等:Redis 存映射,超时先 REST 查再决定是否重发,绝不无确认重发。
- 三重防御:WS 重连 + 序列号缺口检测 + REST 对账。断网恢复后暂停交易直至全量订单对账完成。永远不单信 WS。
- 限速:令牌桶主动节流(不等 429);429 读 Retry-After 退避;418 绝不立即重试。
- Dead Man’s Switch:断连兜底撤全部单。
五、工程选型:用哪个平台、哪个语言、哪个框架
| 项 | 选型 | 理由 |
|---|---|---|
| 语言 | Python 3.12 | 15 分钟低频,延迟不是瓶颈;生态最全,1–2 天出原型 |
| 交易所抽象 | CCXT(MIT,44k star,每日维护) | 统一 100+ 所,事实标准 |
| 回测 | vectorbt 扫参 + 自写事件驱动(实盘同构) | 前者快,后者保真 |
| 生产引擎(升级路径) | NautilusTrader(28k star,Rust 核 + Python 绑定) | 回测即实盘零改动,无需写 Rust |
| 交易所 | Bybit 主 / Binance 备 | Bybit REST 35ms·WS 15ms·限速最宽;Binance 流动性最深、ZECUSDT 2020 年上线最早 |
| VPS | AWS 东京 ap-northeast-1 | 到 Binance ~8ms / OKX ~4ms(首尔不推荐,延迟惩罚 35–100ms) |
| 框架(网格) | Hummingbot(20k star,唯一内置永续网格 Grid Strike) | Apache-2.0 商业友好,上手最易 |
对抗验证(2026-09-05 gh 直查)全部 CONFIRMED:Freqtrade 54k(活跃,无内置网格)、Hummingbot 20k(内置永续网格)、NautilusTrader 28k(Rust+Python,v2.0 RC)、CCXT 44k(事实标准)。backtrader 已停摆(2023-04 最后 commit),新项目别选;C++ 在 15 分钟场景纯属过度工程,直接排除。
实操:先用 Python + CCXT 自建骨架(数据/回测/策略/风控/执行分层),跑通回测和 paper;后续若要生产级引擎,再迁到 NautilusTrader 的 Python 绑定。不要一上来就钻 Rust。
六、LynxCrypto 开发路线图
分阶段,每阶段过 gate 才进下一阶段:
- 数据 + 回测骨架:CCXT 拉 ZECUSDT 6–12 月 15m/1m K线 + 资金费率;自写事件驱动回测引擎(含真实成本模型)。
- 策略 + regime:区间均值回归 + 五件套状态机;反手默认 flat。
- 回测验证:WFO + MCPT + DSR/PBO;过红旗 + 衰减链。不过关回上阶段,绝不上线。
- 执行层:状态机 + clientOrderId 幂等 + WS 对账 + 限速;Binance testnet / Bybit demo 跑 2 周。
- paper → live:1/4 凯利 × 0.1 仓位小实盘;每日监控费率/延迟/对账;跑满 1 个 regime 周期看实盘 vs 回测衰减。
- (可选)反手增强:独立回测有正边际后再开。
- (可选)升级 NautilusTrader:延迟/吞吐成瓶颈时。
七、开发提示词
我把上面所有规格整理成了一份可直接喂给编码 agent 的系统 spec(九层架构 + 铁律三条 + 7 阶段 MVP),将随下篇开源进 LynxCrypto 仓库。
它包含:铁律三条(禁马丁/必有止损/回测不过不上线)、九层架构、策略规格(区间五件套 + flat 反手 + regime 状态机)、风控规格(1/4 凯利 + 三档 latching 熔断 + kill switch + 成本门槛)、回测纪律(WFO/MCPT/DSR/PBO/红旗)、执行层规格(状态机/幂等/三重对账/限速)、工程选型表、7 阶段 MVP 路线、验收标准。
下篇就是按这份提示词从 Phase 1 开始实现。
八、收盘:我的下一步
写完这篇,我对昨天那 100 美的态度变了。它不是"我策略有效"的证据,是"马丁网格在震荡市给高胜率幻觉"的标准样本——研究里每个案例都长这样,然后单边行情一来清零。
所以我重新校准:
- 目标:从"日赚 25%“降到"年化 15–25%,最大回撤 < 15%,Sharpe > 1.5”。880 美是种子,不是赌注。
- 第一步:不急着加仓。先按开发提示词建 Phase 1–3(数据 + 回测 + 策略 + regime),用 6–12 个月 ZECUSDT 历史数据回测,过 WFO + MCPT + DSR 三关。回测不过关,绝不上 live。
- 砍掉马丁格尔:头寸规模走 1/4 凯利。这是这篇最大的认知升级。
- 反手先 flat:我的"多空反手"直觉保留为可选增强,但默认平仓即停,等独立回测证明有正边际再说。
- 保留出金 200 的习惯:它是最好的风控——把赢的钱锁出赌桌,降低路径依赖爆仓的概率。
寻找 alpha 的路径,不是遍历全网找一个"神秘策略",而是:先用 regime 过滤把负期望转正,用凯利控制仓位,用真实成本模型卡住每笔的盈亏门槛,用回测防坑纪律排除运气成分,用执行层保证策略不变形。 alpha 不是找到的,是活下来之后一点点验证出来的。
下一篇,开始写代码。
本研究由 13 路 AI agent 并行完成(7 路研究 + 3 路对抗验证 + 3 路补研),Grok 为主搜索引擎 + 三引擎交叉验证。所有关键结论(马丁必破产、25% 日收益不可持续、OSS 选型时效)均经对抗验证 CONFIRMED。
