← 返回首页

配对交易:最无聊的策略赚最稳的钱,但90%的人撑不过第一个月

💤 小Q · 2026-07-27 · 量化策略

我是怎么发现配对交易的

说起来丢人,我第一次听说配对交易(Pairs Trading),是在一个付费知识星球里。当时花了199块进去,发现里面99%的内容都是老师在吹自己今天又抓了什么牛股。唯一有用的信息,就是有人随口提了一句:"你去看看配对交易吧,稳得一批。" 那时候我刚被一波趋势跟踪策略爆了仓,心态崩得像被前女友拉黑了一样。"稳"这个字,对我来说比任何涨停板都好听。 于是我花了两个周末研究这个策略,又用Python回测了A股3年的数据。结果让我沉默了——不是因为它不好,而是因为它好到让我觉得"这不科学"。

配对交易到底在干什么

简单说,配对交易的逻辑是这样的:
  • 找两只"命运绑定"的股票(比如招商银行和兴业银行)
  • 它们平时的价差在一个范围内波动
  • 当价差突然变大(一只涨太多或跌太多),你就做空贵的、做多便宜的
  • 等价差回归正常,两边平仓,赚差价
  • 就这么简单。没有K线图,没有均线金叉死叉,不用猜明天大盘涨还是跌。你只需要知道一件事:这两兄弟迟早会回到一起。 这背后的数学原理叫"协整性(Cointegration)"。别被这个词吓到,你只需要理解一个比喻:你和你的发小,身高可能不一样,但身高的"差距"基本是稳定的。如果某天你突然比你发小高了20厘米,要么你偷偷垫了内增高,要么他弯了腰——不管哪种,这个差距都会回来。

    用Python挑配对:不是随便两只股票都能配

    我第一次做配对交易的时候犯了个经典错误:把茅台和五粮液配在一起。它们不都是白酒吗?不都是高端吗?结果回测数据一跑——夏普比率-0.3,亏得我怀疑人生。 后来才搞明白,配对交易的核心不是"看起来像",而是"数据上确实绑定"。这里有个硬指标——协整检验的p值要小于0.05。 我写了个简单的筛选脚本,在A股3000多只股票里找配对: ```python import statsmodels.api as sm from itertools import combinations def find_cointegrated_pairs(df, p_threshold=0.05): pairs = [] cols = df.columns for i, j in combinations(range(len(cols)), 2): s1, s2 = df[cols[i]], df[cols[j]] score, pvalue, _ = sm.tsa.stattools.coint(s1, s2) if pvalue < p_threshold: pairs.append((cols[i], cols[j], pvalue)) return sorted(pairs, key=lambda x: x[2]) ``` 跑完之后我发现,真正通过协整检验的配对大概只有3-5%。大部分你"觉得"应该配对的股票,在统计上根本不成立。 这大概就是散户和量化的区别吧——散户靠感觉配对,量化靠p值配对。

    回测数据:无聊到让人怀疑是不是有bug

    我用2023-2025年的A股数据,选了10组通过协整检验的配对,做了回测:
    指标数值
    年化收益率14.7%
    最大回撤4.2%
    夏普比率1.8
    胜率62%
    平均持仓天数18天
    年交易次数约20次
    这个数据什么概念?同期沪深300的年化收益大概8%左右,最大回撤超过20%。也就是说,这个策略的收益几乎是指数的两倍,风险只有指数的五分之一。 但你注意那个"年交易次数"——20次,平均每18天才交易一次。 这就是配对交易最残忍的地方。

    为什么90%的人撑不过第一个月

    我实盘跑配对交易的第一周,感觉非常不好。 不是因为亏钱——第一周微赚0.3%。而是因为太无聊了。没有盯盘的紧张感,没有追涨杀跌的刺激感,每天打开账户,净值曲线比退休金还平稳。我甚至开始怀疑:我是不是该加点杠杆? 第二周,我刷雪球看到有人晒单,一天赚了15%。我心里那个痒啊,就像减肥的时候看到隔壁桌在吃火锅。 第三周,我终于忍不住了——偷偷开了个仓位去追一个"确定性的机会"。结果?你猜对了,亏了2.3%。配对交易半个月赚的,一次冲动就还回去了。 这让我想起一个统计:配对交易策略的失效,90%不是因为策略本身不行,而是因为操作者受不了无聊去"加戏"。

    几个血泪教训

    实盘跑了快一年,我总结了几条经验: 1. 窗口期会漂移 你以为找到了完美的配对,但市场是活的。两只股票的基本面可能发生变化,导致它们的"绑定关系"断裂。我的做法是每季度重新做一次协整检验,p值超过0.1的配对直接淘汰。 2. 价差不一定回归 协整性告诉你的不是"一定会回归",而是"大概率会回归"。所以我设置了硬止损——价差扩大到2.5倍标准差还不回归,就认亏出场。死扛是配对交易最大的死法。 3. 手续费比你想的重要 配对交易要同时开两个仓位(一多一空),手续费直接翻倍。如果选的配对波动太小,利润可能还不够交手续费的。我一般要求配对的价差标准差至少在3%以上才考虑。 4. 做空限制是个大坑 A股的做空机制大家都懂的——融券难、券源少、成本高。实际操作中,我更多是用配对交易的逻辑来做轮动:价差大的时候,从贵的换到便宜的,而不是真正做空。收益会打一些折扣,但实操性强很多。

    写在最后

    配对交易教会了我一件事:在投资里,最难的从来不是找到好策略,而是管住自己不去搞砸好策略。 一个年化15%、回撤5%的策略,放在任何基金公司都是明星产品。但如果你让一个散户来操作,他大概率会在第三周因为无聊而去追涨停板,然后怪策略不好。 这大概就是投资最讽刺的地方:人总是高估自己对无聊的忍耐力。
    我是说,你宁愿在刺激中亏钱,也不愿意在无聊中赚钱。这不是策略的问题,这是你的问题。——小Q,一个终于学会了无聊的量化交易员 💤
    量化策略配对交易统计套利协整性Python实战小Q风格