量化系统深度优化日,反思OKX赚币投资决策
今天上午我处理了日记发布到博客时AI总结部分缺失的问题。排查下来,发现是zblog-publisher发布脚本的clean_title()函数有个bug,会把汉字与数字之间的内容错误删除,比如标题「2026年3月16日」被删成「202 1」。我修复了这个bug,改了正则替换逻辑,只去掉中间多余的空格,同时更新了diary-writer和zblog-publisher两个技能的SKILL.md文档,明确content字段必须包含日记全文(含AI总结)。秘书长(我的AI助手机器人)把这次修复记录到了memory文件里,方便以后参考。
下午我做了一份量化系统max_drawdown_stopped状态策略修复的完整复盘总结。触发最大回撤保护的策略,说明已经亏到预设红线了,如果被自动重启,可能会造成更大的损失,所以必须在所有入口都做好拦截。我系统性地排查了10条调用路径,包括币种恢复、账号恢复、一键启动所有策略、start_strategy兜底、前端多个开关控制等,逐一确认哪些路径会错误重启已触发保护的策略。最后我设计了三层防御机制:第一层是前端UI拦截,不显示启动按钮或弹错误提示;第二层是调用方过滤,恢复逻辑跳过max_drawdown_stopped状态的策略;第三层是start_strategy()函数兜底拒绝,即使有遗漏的调用方也无法启动。资金安全的事,宁可多防一层。这份复盘总结我也让秘书长完整记到了memory文件里。
今天最深刻的反思,是发现了自己在OKX赚币上的投资决策失误。我今天查看账户时才发现,有100万U一直放在OKX赚币里,年化收益只有1.04%,远远低于预期。我原本以为赚币利息会比银行高,预期年化能到7%左右,所以当时特意把人民币换成U存进去,想着能赚比银行高的利息。但现实完全出乎意料,实际收益只有1%,和国内银行存款利息差不多。更严重的是,现在U的汇率跌了,如果再把U换回人民币,本金都要缩水。利息没赚到,本金还亏了,这是双重损失。说实话,我当时其实考虑过汇率下跌的风险,有一个对冲逻辑:如果收益保持较高水平,高收益可以对冲汇率下跌的损失。这个思路本身是对的,但现实是收益和汇率双杀,完全超出了当时的预期。这是我的投资盲点:做投资决策时应该把各种可能的风险组合都考虑到,不能只假设单一风险。投资也不是存进去就不管了,得定期查看收益情况,关注市场变化。
今天还玩了一下Claude Code新增的/buddy宠物功能,我用JS脚本刷出了最高级的闪光传奇宠物,操作流程很清晰:第一步运行buddy-reroll.js脚本,指定物种(如dragon)和参数(--rarity legendary --shiny),跑完会输出几个结果,复制喜欢的uid;第二步运行apply-uid.js写入uid;第三步重启Claude Code就完成了。可选物种有18种,包括dragon、cat、duck、goose、octopus、owl、penguin、turtle、snail、ghost、axolotl、capybara、cactus、robot、rabbit、mushroom、chonk等。把工具玩透、改造成自己想要的样子,这个过程本身就挺有意思。
到了晚上盘点,今天一共给量化交易系统提交了三次更新。第一次是15点47分的UI/UX优化,共6项:移除首页策略概况卡片的渐变效果、统一字体样式和颜色、统一持仓历史卡片字体大小、统一币种图标存储位置到本地图片库、手续费显示精度响应式适配(宽屏4位小数、窄屏2位小数)、移动端运行时间使用灰色「时」字简写、百分比和交易次数显示格式统一使用括号包裹。第二次是20点15分的核心功能修复,共2项:修复已触发最大回撤保护的策略在恢复币种、恢复账号、一键启动时被意外重新启动的问题,修复策略详情页持仓币种图标因实时价格推送而不断闪烁的问题。第三次是22点15分的数据一致性修复,共5项:修复四个页面概况卡片不显示数据的问题、修复策略删除后虚拟收益数据从统计中消失的问题、将手续费分类从Maker/Taker改为开仓/平仓并增加今日明细、修复仓位对账误报问题(统一用BTC单位)、修复仓位数据持久化问题(涉及WebSocket推送、DB写入、批量替换三个路径)。从界面到功能再到数据,层层深入,算是一次系统性的优化。
AI评价
你对量化系统那三层防御的设计思路,其实暴露了一种很成熟的工程直觉:不是去信任某一个入口做对了检查,而是假设任何一个环节都可能被绕过或者以后被别人改坏,所以在最底层再兜一道死闸。这种"宁可多防一层"的态度用在资金安全上是对的,但也值得你留意一点——你排查出了10条调用路径才把三层防御拼起来,说明这套系统的调用链已经相当复杂了,复杂到需要靠事后系统性排查才能确认覆盖面。这本身是个信号:与其每次靠一次性的深度排查来补漏,不如考虑给"策略状态与可启动性"这类跨路径的约束建一份集中的规则清单或测试用例,否则下一次新增一个入口,你可能又得重新走一遍这种排查。
OKX赚币这段反思是全文最有价值的部分,也是你想得最认真的地方。你自己点破的那个盲点——只对冲了单一风险(用高收益对冲汇率下跌),没有考虑收益和汇率同时不利的组合情形——这个复盘是诚实且准确的,不是那种事后找借口的反思。但我想提醒你一点:你把问题归结为"投资盲点"和"没有定期查看",这固然没错,可100万U放进一个年化预期7%、实际只有1%的产品里,中间的落差本身就该在存入前用更保守的假设去验证,而不是先假设高收益成立、再拿它去对冲另一个风险——这是一种典型的"用未兑现的收益去覆盖已经存在的风险"的决策结构,本质上是杠杆式思维,而不是纯粹的信息不足。以后做类似决策时,也许该反过来问:如果收益只能拿到最悲观的那档,这笔钱还值不值得动。
日记里技术修复、资金防御、投资复盘、玩宠物脚本几件事挤在一天里处理完,节奏感很足,也说明你确实是那种问题一冒头就要当天解决掉的人。但这份日记通篇几乎没有情绪停顿,包括发现100万U投资失误这种量级的事,你也是三言两语分析完就翻篇继续记录代码提交和宠物脚本了。这种处理方式效率很高,但如果类似规模的决策失误只被当作一次"复盘条目"记录,而没有触发你去重新审视自己整体的风险管理习惯,那这个教训吸收的深度可能不够。

秘书长