11、订单流与布林带:布林带收口/开口与订单流失衡的共振
布林带这个指标,做交易的人应该都不陌生。它由三条线组成:中轨是均线,上下轨是标准差通道。很多人用它来判断超买超卖,或者识别趋势的强弱。但说实话,单用布林带做交易,胜率并不高。
为什么?因为布林带只告诉你价格在什么位置,它不告诉你市场的真实意图。而订单流,恰恰能补上这块拼图。
我个人习惯把布林带和订单流结合起来看。当布林带收口时,市场在蓄力;当订单流失衡出现时,方向就明确了。这两者共振,胜率会明显提升。
核心逻辑:布林带描述价格波动的"形态",订单流描述市场参与的"力度"。形态+力度=高概率交易信号。
11.1 布林带收口:暴风雨前的宁静
布林带收口,意味着波动率在降低。价格在一个狭窄的区间内来回震荡,多空双方暂时达成平衡。这时候,市场就像一根被压缩的弹簧。
我记得有一次做螺纹钢的夜盘,布林带连续收口了将近两个小时。价格就在3800到3820之间晃悠,看着都快睡着了。但订单流数据告诉我,事情没那么简单。
在收口的过程中,我观察到Delta值在逐渐缩小,但成交量却在悄悄放大。这说明什么?说明有大资金在暗中吸筹。他们不想把价格推上去,只想在低位拿够筹码。
布林带收口时,我们要关注三个订单流信号:
- Delta收敛:买卖双方力量接近,但某一方开始出现间歇性的爆发
- 成交量萎缩后的放大:收口末期成交量突然放大,往往是突破的前兆
- 大单出现:在收口区间内,频繁出现超过平均单量2倍以上的大单
我的经验:布林带收口越窄,后续的爆发力越强。如果收口时间超过20根K线,一旦配合订单流失衡突破,往往是一波流畅的单边行情。
11.2 布林带开口:趋势的确认信号
布林带开口,就是上下轨开始向外扩张。这时候价格通常已经突破了震荡区间,开始走趋势。但问题来了——这个突破是真的还是假的?
很多人在布林带开口时追进去,结果被假突破打脸。我早期也吃过这个亏。后来我发现,只看布林带开口是不够的,必须结合订单流失衡来验证。
真正的开口突破,订单流上一定会有明显的失衡:
- 向上开口:主动性买单(Ask成交)持续大于主动性卖单(Bid成交),Delta值连续为正且不断放大
- 向下开口:主动性卖单持续大于主动性买单,Delta值连续为负且不断放大
如果布林带开口了,但订单流没有失衡,甚至出现背离——比如价格向上突破,但Delta却在下降。这时候就要小心了,很可能是诱多。
避坑指南:我曾经在焦炭上吃过一次大亏。布林带向上开口,价格突破上轨,我直接追了进去。结果订单流显示Delta是负的,价格很快被打回来,一根大阴线把我套在了山顶。从那以后,我给自己定了个规矩:布林带开口必须配合订单流失衡,否则不进场。
11.3 共振信号的识别与量化
怎么把这两个东西量化成可执行的策略?我分享一个我自己在用的方法。
首先,定义布林带的收口和开口:
# 布林带收口/开口判断
def bollinger_state(df, period=20, std=2):
df['mid'] = df['close'].rolling(period).mean()
df['std'] = df['close'].rolling(period).std()
df['upper'] = df['mid'] + std * df['std']
df['lower'] = df['mid'] - std * df['std']
# 带宽
df['bandwidth'] = (df['upper'] - df['lower']) / df['mid']
# 收口:带宽小于过去N期均值的80%
df['is_narrow'] = df['bandwidth'] < df['bandwidth'].rolling(50).mean() * 0.8
# 开口:带宽大于过去N期均值的120%
df['is_wide'] = df['bandwidth'] > df['bandwidth'].rolling(50).mean() * 1.2
return df
然后,定义订单流失衡:
# 订单流失衡判断
def orderflow_imbalance(df, threshold=1.5):
# 计算Delta(主动买 - 主动卖)
df['delta'] = df['ask_volume'] - df['bid_volume']
# 计算累积Delta
df['cum_delta'] = df['delta'].cumsum()
# 失衡判断:Delta的绝对值超过其标准差的threshold倍
df['delta_std'] = df['delta'].rolling(20).std()
df['is_imbalance'] = abs(df['delta']) > df['delta_std'] * threshold
return df
最后,共振信号就是两者的交集:
# 共振信号
def resonance_signal(df):
# 做多信号:布林带收口 + 订单流失衡向上
df['long_signal'] = (
df['is_narrow'] &
df['is_imbalance'] &
(df['delta'] > 0) &
(df['close'] > df['mid'])
)
# 做空信号:布林带收口 + 订单流失衡向下
df['short_signal'] = (
df['is_narrow'] &
df['is_imbalance'] &
(df['delta'] < 0) &
(df['close'] < df['mid'])
)
return df
参数调整建议:threshold值我一般设在1.5到2.0之间。太敏感容易出假信号,太迟钝又会错过行情。你可以根据自己的品种和周期来调。
11.4 实战中的注意事项
嗯,这里有几个坑,我帮你们提前踩过了:
- 不要只看一个周期。我习惯在15分钟图上找布林带收口,然后在1分钟或3分钟图上确认订单流失衡。多周期共振,胜率更高。
- 注意假收口。有时候布林带收口只是暂时的,很快又张开,并没有真正的突破。这时候订单流数据会告诉你——如果Delta一直在零轴附近徘徊,没有明显的失衡,那就继续等。
- 结合支撑阻力。布林带收口突破的位置,如果正好是前期的支撑或阻力位,那这个信号的可靠性会大大增加。
- 止损要设好。共振信号也不是100%准确的。我一般把止损设在布林带中轨的另一侧,或者收口区间的边界外。
下面这张图,是我自己总结的布林带与订单流共振的交易框架:
说白了,布林带和订单流的共振,就是用一个工具描述市场的"形",用另一个工具描述市场的"神"。形神兼备,交易才能做得从容。
我个人觉得,这套方法最大的价值不在于提高胜率,而在于让你在进场的时候心里有底。你知道为什么买,也知道为什么卖。这种确定性,比什么都重要。
总结一句话:布林带收口时盯订单流,订单流失衡时等布林带开口。两者共振,果断出手。
无相订单流研究社 微信Lucian808555