如果你问我搞量化最大的感悟是什么,我会说:
回测赚的钱,和实盘亏的钱,不是同一笔钱。
这两者的差距,大得能塞进一个银河系。
今天聊聊我搞量化系统一年多来踩过的坑。每个坑都花了真金白银,希望能帮你少交点学费。
坑1:回测年化80%,实盘年化-20%
这是我刚开始搞量化的时候犯的错,也可能是所有新手都会犯的错。
我写了一个策略,在历史数据上回测:年化收益率78%,最大回撤12%,夏普比率2.1。
我看到这个数字的时候,差点从椅子上弹起来。
心想:这也太好了吧?年化78%?巴菲特都没这么高。
然后我拿实盘跑了三个月。
结果:亏损22%。
从天堂到地狱,只差一个"实盘"。
后来我才知道,这叫
过拟合(Overfitting)。
我为了追求回测的好看数据,加了太多参数:短期均线、长期均线、成交量、换手率、MACD、RSI、布林带……
8个参数,每个调一调,总有组合能在历史数据上表现完美。
但这就像给你过去一年的照片PS到完美,然后你期待明年的素颜也长这样。
历史数据是过去,未来不是过去的复制粘贴。
怎么避免过拟合?
参数越少越好。我现在用的策略,核心参数不超过3个
留出样本外数据验证。至少用最近3个月的数据做验证集
如果一个策略在多个时间段(牛市、熊市、震荡市)都有效,才值得信任
夏普比率>2的基本都是过拟合,真实的策略夏普比率一般在0.5-1.5之间
坑2:滑点和手续费——回测里看不到的隐形杀手
我的回测系统一开始没有考虑滑点和手续费。
什么叫滑点?就是你想以10.00元买入,但实际成交价是10.02元。这0.02就是滑点。
你以为0.02很小?我给你算一笔账。
假设你的策略每天交易1次,每次滑点0.02元,一年250个交易日:
250 × 0.02 = 5元/股/年
如果一只股票价格20元,你一年滑点就吃掉了25%的收益。
加上手续费(印花税+佣金),每次交易成本大约0.15%。
一年250次交易,交易成本就是37.5%。
也就是说,如果你的策略年化收益低于37.5%,你就是在亏钱。
这还是每天只交易1次的情况。有的高频策略一天交易几十次,那成本就更恐怖了。
怎么解决这个问题?
回测时一定要加入滑点和手续费
减少交易频率:能一周交易1次的,就不要每天交易
选择流动性好的股票,滑点更小
大额交易分批执行,降低冲击成本
坑3:停牌、涨跌停、ST——那些回测里不会告诉你的坑
回测系统里,每只股票每天都有价格数据,你可以随意买卖。
但实盘中,你可能遇到:
停牌:公司出公告了,停牌3天,你的钱被锁住了
涨跌停:想买的涨停了买不到,想卖的跌停了卖不出
ST/退市:突然被ST了,你的策略还在买它
这些情况在回测里很容易被忽略,但在实盘中直接影响你的收益和流动性。
我的做法:在数据预处理阶段就过滤掉ST股和长期停牌股,然后在实盘执行时加入涨跌停检测。
坑4:我把代码写崩了,自动交易出了bug
这个坑最危险,因为它不只是亏钱,还可能让你血本无归。
2025年8月某天,我的量化系统突然疯狂买入某只股票。
正常情况下,单只股票的仓位上限是20%。但由于代码里一个条件判断写错了,导致仓位限制失效。
5分钟内,系统把60%的资金全砸进了一只股票。
幸好我当时在看盘,手动暂停了系统,不然可能全仓进去。
后来复盘发现,是一个if/else的逻辑写反了。
教训:
永远不要在实盘中部署未经充分测试的代码
加入硬性仓位上限(代码逻辑之外再加一层保护)
关键交易前加入人工确认机制
做好异常监控(仓位突变、交易频率异常等)
我现在在实盘代码里加了一个"安全网":无论策略信号说什么,单只股票仓位永远不超过25%,总仓位永远不超过80%。
这是写死在代码里的,不是策略参数,任何策略都无法覆盖。
坑5:"这次不一样"——每次我都以为这次不一样
2025年10月,A股有一波不错的行情。我的量化系统给出了不少信号,我严格执行,一个月赚了12%。
11月,行情继续,我又赚了8%。
12月开始,我的心态变了。我开始觉得"这个策略太强了,加点仓位吧"。
我把单笔仓位从20%提高到了30%。
然后1月份一波回调,策略连续给出错误信号,我在高位买入了3只股票,加上加大的仓位,单月亏了15%。
回吐了之前两个月利润的70%。
这就是最常见的陷阱:
赚钱之后膨胀,修改纪律。
巴菲特说:"别人贪婪时我恐惧,别人恐惧时我贪婪。"
但我发现更难的是:
自己贪婪时自己恐惧。
量化交易的优势应该是排除情绪,但我发现,人在赚钱之后会不由自主地"优化"策略——加仓位、放宽止损、放松条件。
这些"优化"本质上是情绪驱动的,不是数据驱动的。
坑6:数据质量——垃圾进,垃圾出
我有段时间用免费股票数据,结果发现回测结果和实际差很远。
后来仔细对比才发现:
有些数据源的前复权价格有误差
有些停牌日的数据被标记为"无交易",但代码按正常数据处理
有些股票的除权除息数据缺失
数据差1%,回测结果可能差10%。
我现在用的数据源是付费的,每年花几百块。这几百块可能是最值得的投资。
最后
搞量化交易一年多,我最大的感悟是:
量化不是让"不聪明"的人变成"聪明"的人,而是让"聪明"的人不犯"蠢"的错误。
我以前凭感觉交易,一年轻松亏30%。
现在用量化系统,一年可能只亏5%(行情差的时候)或赚15%-25%(行情好的时候)。
差距不在于"赚了多少",而在于"少亏了多少"。
如果你也想搞量化,记住这几点:
1.
简单策略 > 复杂策略
2.
少交易 > 多交易(省手续费就是赚钱)
3.
风险控制 > 收益最大化
4.
数据质量 > 模型复杂度
5.
执行力 > 完美策略
6.
活下去 > 赚大钱
我是小Q,一个花了一年时间和无数手续费才学会这些道理的量化交易员 💤