均值回归策略震荡市参数设计:布林带与KDJ组合过滤实战方案
均值回归策略震荡市参数设计:布林带与KDJ组合过滤实战方案
去年我做了一轮很枯燥的统计:把同一套布林带均值回归策略,分别在趋势行情和震荡行情里各跑一千次模拟。结果差距大到让我怀疑参数写错了——震荡行情里胜率能到六成出头,换到趋势行情直接掉到三成以下。更扎心的是,亏损单的平均持仓时间是盈利单的三倍。也就是说,策略在错的环境里不仅输钱,还输时间。

这个现象背后没什么玄学。均值回归的底层假设是价格会回到中枢,而趋势行情的本质恰恰是价格拒绝回归。问题在于,很多人不是不知道这个道理,而是不知道自己当下处在哪种环境里。布林带加KDJ的组合,解决的正是这个「先判断环境、再决定出手」的问题。
为什么单靠布林带容易在震荡里反复挨打
布林带的经典用法是价格触及下轨买入、触及上轨卖出。听起来简单,实操里有个隐蔽的坑:带宽。
当布林带带宽收窄到一定程度,价格会在上下轨之间高频穿梭,每次触碰都像信号,但每次都不给你足够的利润空间。我在复盘一段欧元兑美元的亚洲时段行情时发现,带宽处于近二十个周期最低区间的状态下,单纯触碰下轨入场,平均盈利只有十几个点,而一次假突破带来的止损往往要三十点以上。盈亏比倒挂,胜率再高也扛不住。
所以第一个过滤条件不是看价格碰没碰轨,而是看带宽有没有给出足够的活动空间。我的做法是计算带宽相对过去一百个周期的分位数,低于百分之三十的直接放弃。这一步会砍掉大量信号,但剩下的信号质量明显不同。
KDJ在这里不是用来找超买超卖的
很多人把KDJ当成独立的超买超卖指标,金叉买死叉卖。放到均值回归策略里,这个用法会打架——布林带说超卖了该买,KDJ可能还在低位钝化,死叉一个接一个。
我换了个思路:KDJ只用来确认动能是否在衰减。具体说,价格触及布林带下轨时,我不要求KDJ金叉,只要求J值从极端低位开始拐头向上,同时K值和D值的差距在收窄。这代表下跌动能正在减弱,而不是要求它已经反转。这个区别很关键。要求金叉会让你错过最好的入场点,要求动能衰减则刚好卡在回归启动之前。
参数上我把KDJ的周期从默认的9,3,3改成14,3,3。拉长周期是为了减少震荡市里的噪音信号,代价是信号会晚一两个周期出现。这个取舍在回测里很划算:交易次数下降了约四成,但盈利因子从1.1提升到了1.6。
一套可以照着复现的规则
把上面这些拼起来,完整的策略框架是这样的。
- 环境判定:布林带带宽处于过去一百个周期分位数的百分之三十以上,且价格在最近二十个周期内没有创出新高或新低。两条同时满足才算震荡环境。
- 入场条件:价格触及或刺穿布林带外轨,同时KDJ的J值从极端区域拐头,K与D的差值连续两个周期收窄。两个条件在同一根或相邻一根K线内满足才有效。
- 止损设定:放在外轨之外一个ATR的距离。用ATR而不是固定点数,是因为不同品种、不同时段的波动差异太大。固定三十点止损在低波动时段等于白送。
- 止盈设定:第一目标位是中轨,到达后减半仓。剩余仓位看价格能否触及对侧轨道,触及则全部离场。如果价格在中轨附近横盘超过五个周期,剩余仓位也平掉。
- 仓位管理:单笔风险控制在账户的百分之一以内,按ATR换算手数。连续三笔亏损后,下一笔仓位减半,直到恢复盈利再回到正常水平。
这套规则我在几个主要货币对上做过滚动回测。以其中一段两年的数据为例:交易次数约两百四十次,胜率百分之五十八,平均盈利与平均亏损的比值约一点四,盈利因子一点七,最大回撤百分之九点三。数字不算惊艳,但胜在稳定,而且回撤曲线很平滑,没有那种让人睡不着觉的深坑。
参数不是调出来的,是选出来的
这里有个我踩过的坑。刚开始优化参数时,我把布林带周期、标准差倍数、KDJ周期、带宽分位阈值全部放进网格搜索,跑出来一组「完美参数」,胜率七成以上。结果换到另一段数据上直接崩掉。典型的过拟合。
后来我改成只调两个参数:布林带周期和带宽分位阈值。其余参数固定。这样虽然单段回测的数字没那么好看,但跨品种、跨时段的稳定性好了很多。参数越少,越不容易把噪音当成规律。历史统计反复证明,参数敏感性低的策略,实盘存活率明显更高。
还有一个细节:标准差倍数我从默认的2改成1.8。原因是2倍标准差在震荡市里触及频率偏低,信号太少;1.8能多出大约三成信号,而假信号增加得并不明显。这个改动带来的盈利因子变化,比调KDJ周期要显著得多。
新手最容易漏掉的那一步
整套策略里,环境判定那一步最容易被跳过。因为它不产生入场信号,看起来像是可有可无的前置条件。但我自己的数据很清楚:不做环境过滤,同样的入场规则在趋势行情里的亏损会吃掉震荡行情里大半的利润。
很多人亏钱不是因为指标用错了,而是因为在一个不适合的策略环境里,用了正确的指标。先问现在是什么天气,再决定穿什么衣服。这个顺序反了,后面每一步都会别扭。
你可以在自己的回测里加一个简单的对照:同一套规则,开环境过滤和关环境过滤各跑一遍。两个盈利因子的差距,会比任何参数优化都更能说明问题。
免责声明:本文仅代表作者观点,不构成任何投资建议。市场有风险,交易需谨慎。
