市场宽度概念:从定义到实战应用
做量化交易这些年,我越来越觉得市场宽度是个被低估的指标。很多人一上来就盯着价格、成交量,却忽略了市场内部的结构变化。今天我们就来聊聊这个核心概念。
一、宽度定义:到底什么是市场宽度?
市场宽度,说白了就是衡量市场参与度的指标。它回答一个问题:当前行情是少数股票在涨,还是大多数股票都在涨?
举个例子。假设大盘涨了2%,你可能会觉得市场很强。但如果仔细一看,发现只有3只权重股在涨,其余2000只股票都在跌——这种行情你敢追吗?
我个人习惯把市场宽度理解为「市场的健康度」。就像一个人,光看体重不够,还得看体脂率、肌肉量。宽度就是市场的「体脂率」。
二、宽度与深度的区别:别再搞混了
很多新手容易把宽度和深度混为一谈。我刚开始做量化时也犯过这个错,后来在实盘里吃了亏才彻底搞明白。
| 维度 | 市场宽度 | 市场深度 |
|---|---|---|
| 关注点 | 参与交易的股票数量 | 订单簿的挂单量 |
| 衡量对象 | 市场内部结构 | 流动性水平 |
| 典型指标 | 涨跌家数比、AD线 | 买卖价差、订单簿斜率 |
| 应用场景 | 趋势判断、市场情绪 | 交易执行、滑点控制 |
你想想看,深度看的是「能不能买进去」,宽度看的是「该不该买进去」。两者缺一不可。
三、宽度指标分类:常用的几种
宽度指标其实挺多的,但常用的就那么几类。我按自己的使用频率排个序:
1. 涨跌家数比
最简单的宽度指标。计算方式:
# 涨跌家数比
advance_decline_ratio = 上涨家数 / 下跌家数
# 如果大于1,说明上涨股票多于下跌股票
# 如果小于1,说明市场偏弱
嗯,这里要注意:涨跌家数比容易受市场总股票数影响。我一般会结合历史分位数来看。
2. 累积涨跌线(AD Line)
这是我最喜欢的宽度指标之一。它把每天的涨跌家数差累积起来:
# AD Line 计算
ad_line = []
cumulative = 0
for adv, dec in zip(advances, declines):
cumulative += (adv - dec)
ad_line.append(cumulative)
AD线如果和指数走势背离,往往意味着趋势要反转。我在2020年3月就靠这个躲过了一波回调。
3. 麦克莱伦指标
这个稍微复杂点,但信号更灵敏:
# 麦克莱伦指标
def mcclellan_oscillator(advances, declines, short_period=19, long_period=39):
net_advances = advances - declines
ema_short = net_advances.ewm(span=short_period).mean()
ema_long = net_advances.ewm(span=long_period).mean()
return ema_short - ema_long
4. 新高新低比
这个指标看的是市场动能:
# 52周新高新低比
high_low_ratio = 创新高家数 / (创新高家数 + 创新低家数)
# 大于0.5说明多头占优
# 小于0.5说明空头占优
四、宽度在趋势判断中的作用
宽度指标最大的价值,就是帮我们识别趋势的「真假」。
场景一:指数上涨,宽度也在上升
这是最健康的上涨。说明市场普涨,资金在广泛参与。这时候做多胜率很高。
场景二:指数上涨,宽度却在下降
这就是所谓的「指数失真」。我记得2021年春节后,A股指数还在涨,但涨跌家数比已经连续5天低于1了。结果呢?后面来了一波急跌。
场景三:指数下跌,宽度却在上升
这是底部信号。说明虽然指数在跌,但已经有越来越多的股票拒绝下跌了。我一般会在这个阶段开始建仓。
你想想看,为什么很多量化策略在震荡市里表现很好,一到趋势行情就崩?很大原因就是没考虑宽度。宽度能帮你过滤掉那些「假突破」和「假趋势」。
五、实战中的宽度应用框架
下面这张图是我自己总结的宽度分析框架,分享给大家:
这个框架我用了好几年,最大的感受是:宽度分析不是孤立的,一定要和价格、成交量、波动率结合起来看。单独看宽度,就像只看地图不看路况,容易走错方向。
好了,关于市场宽度的核心概念就聊到这里。记住一句话:宽度是市场的「心电图」,价格只是「血压计」。两者结合,才能看清市场的真实状态。