OptiNod 学院

Volume Delta:主动买入与主动卖出的差

以aggressor side为标准计算买卖差,观察价格停滞区间内市价单的压力累积在哪一边。

普通成交量是那根K线内所有成交的总和,买入和卖出合成一个数字,无法区分。Volume Delta把其中主动买入和主动卖出的差单独拆出来。


买方吃掉盘口卖单而成交的交易(taker buy)是主动买入,卖方砸向买单而成交的交易(taker sell)是主动卖出。限价单要等别人来接才会成交,所以不被视为推动价格的一方。


信息差正是出在这个区分上。仅知道某根K线成交了1,200 BTC是不够的。在这1,200 BTC里,是哪一方主动冲击盘口,决定了接下来的价格方向。Volume Delta能提供最多信息的位置,是价格与Delta出现背离的地方。也就是价格几乎不动,Delta却单边累积的区间。


Tick rule的局限:哪种Delta才是真正的Delta


把Volume Delta用作信号之前,首先要弄清这个Delta是怎么计算的。


真正的Delta基于交易所的aggressor side标记。Binance、Bybit、OKX的trades API给每笔成交附上 is_buyer_maker 标记,为true时卖方是主动方,为false时买方是主动方。按这个标记分类得到的Delta,就是交易所记录的原始买卖流。


问题在于,不少散户图表工具用tick rule来估算Delta。Tick rule的做法是:成交价高于上一笔就归为买入,低于上一笔就归为卖出。


这种估算有三个缺陷。第一,成交价比上一笔高一个tick,并不总是主动买入在主导。第二,分不清限价单和市价单。卖方砸向买入限价单的成交,tick rule也可能归为买入。第三,同一档位上发生多笔成交时,分类变得模糊,会退回默认值。


这个差异会左右实际结果。有研究结果显示,用tick rule估算的Delta,与基于交易所aggressor标记的Delta只有七成左右一致。在不知道图表工具属于哪一种的情况下按Delta交易,就相当于有三成左右的时候,是在相信方向相反的数据。


TradingView的Volume Delta因交易所数据而异。在Binance、Coinbase这类公开aggressor side的交易所,用的是真正的Delta;在不公开的市场,则采用tick rule估算。足迹图平台(Sierra Chart、ATAS、Bookmap)通常使用真正的aggressor标记。


吸收与衰竭:价格停住期间出现的两种形态


价格不动、Delta却单边累积的位置,是市场上最少见、信息量最大的时刻。在这种位置,最常出现两种形态。


  • 吸收(Absorption):价格在某一水平守住不再下跌,而与该方向相反的Delta逐根累积。卖方积极砸向盘口卖出(负Delta在累积),价格却几乎不动,说明有人在把这些下跌的筹码全部接下来。关键在于,累积的是与推动价格一方相反符号的Delta,价格却守住了。个人投资者很难动用这样规模的资金,所以归根结底,这是大资金的买入信号。
  • 衰竭(Exhaustion):性质与吸收不同。与趋势方向同符号的Delta到达峰值之后,逐根减小。以上升趋势为例,买入Delta一度强力累积、把价格拉高,之后阳线虽然仍在延续,买入Delta的数值却越来越小。吸收是反向Delta在累积而价格仍守住;衰竭则是推动趋势的同向Delta本身在峰值之后耗尽。价格虽然还在高位,但继续上行所需的主动买入力量正在减弱,这是提前给出的预警信号。

吸收是价格守住而反向Delta累积,衰竭是趋势方向的Delta在峰值后减小
吸收是价格守住而反向Delta累积,衰竭是趋势方向的Delta在峰值后减小

2024年7月中旬,ETH在3,000美元附近的前期支撑位横盘了几天,这期间小时级CVD明显向右下方累积。卖出占优,价格却没有跌破那条线。这是吸收的典型表现,此后价格在三周内反弹到3,600美元。


卖出Delta逐根累积,价格却守住支撑位的典型吸收
卖出Delta逐根累积,价格却守住支撑位的典型吸收

吸收形态


ETH 1小时线在前期支撑位(例如3,000美元)附近横盘4小时以上的区间。同样这4小时里,每小时的Delta连续累积为负值,但价格以收盘价计并未跌破该支撑位。Delta转为正值,并且某根1小时K线的收盘价向上超出平均波动幅度,在这根K线的收盘价买入。止损放在该支撑位下方。价格以收盘价向下跌破支撑位,或再次有一小时以上负Delta累积时,视为吸收失败并平仓。


关键在于价格不动而Delta持续累积的时间长度。一两个小时的短暂Delta累积可能只是噪音。而持续4小时以上的吸收,是以小时为单位测得的买入意愿,出于偶然的概率明显较低。它与单根K线上的一时偏向是有区别的。


足迹图:K线内部的Delta分布


Volume Delta是按K线汇总,而足迹图(Footprint)还能显示K线内部各价位的买卖分布。它不把一根K线画成简单的蜡烛,而是在这根K线内成交过的每个价位上,用小数字标出买入和卖出成交量。


借助这些数据,可以确认Delta来自K线内的哪个位置。同样是阳线,K线上部卖出Delta较大的,是卖压在高处被吸收的位置;K线下部买入Delta较大的,是买盘在低处被吸收的位置,两者含义完全不同。没有足迹图的话,这两种情况看起来都是形状相同的阳线。仅凭CVD只能知道方向,看不到深度,足迹图则直接展示这个深度。


Delta背离:比价格背离快一步


CVD(Cumulative Volume Delta)是把Delta按时间顺序累加得到的线。CVD背离是价格创出新高,而CVD停留在低于前一个高点的位置的形态。


形态上与OBV背离相似,但更精细一级。OBV只看K线收盘的方向,把这根K线的全部成交量归到一侧。收盘价只比开盘价高一点,整根K线就被归为买入。而CVD直接看K线内买卖的比例。同样是阳线,K线内部是买入占优,还是卖出被吸收后买入只是小幅获胜,都会如实反映在CVD上。


这种精度的差异,使信号出现的时点不同。CVD背离通常比价格背离早出现一步。在价格图表和OBV都创出新高的那根K线上,CVD已经停住或开始略微下降,这种情况很常见。K线内部发生的卖出吸收,几乎不会体现在K线收盘价上,却会如实反映在CVD的K线内部分类里。


因此CVD背离是时间上领先一步的信号。也就是说,CVD背离是警告,价格结构被破坏或出现OBV背离,才是入场信号。


永续合约市场里Delta容易读错的原因


永续合约的买入Delta中,同时包含新开多仓和空头平仓。两者都是买方一侧的主动行为,所以以相同的符号累积,含义却完全不同。新开多仓是资金进场、价格向上的走势,空头平仓则是仓位被清理时短暂出现的轧空。


仅凭买入Delta无法区分这两者。要一起看的是持仓量(OI)。买入Delta与持仓量上升同时出现,是新开多仓(趋势延续);买入Delta与持仓量下降同时出现,是空头平仓(平仓结束后可能反转)。卖出Delta同样按这种方式区分新开空仓和多头平仓。总之在永续合约市场,Delta要始终与持仓量一起看。


难以信任Delta的情况


成交量小的山寨币,一两笔大单就能左右整体,Delta的统计可信度较低。所以Delta只在BTC、ETH这类主流币和主要交易所才能稳定地使用。


不同时段还存在结构性的偏向。美股开盘时段、亚洲盘收盘时段,Delta向一侧倾斜的偏向会在数据中反复出现。只用绝对Delta值生成信号,就会把这种时段偏向误读为交易信号。应该与该时段平时的分布比较,看相对Delta。


第三是数据来源的一致性。Binance现货Delta和Binance永续Delta是不同的市场,把两者合并累积,得到的会是没有意义的线。必须一致地追踪同一个市场的Delta。


两件事同时吻合,Delta信号更可信


  • Volume Profile (POC):在成交量大量堆积的价位(Point of Control)上出现的Delta走势,意义最大。POC是市场重视该价位的痕迹,在这个位置出现的吸收,很可能是机构入场。反过来,POC之外的Delta噪音比例较高。
  • 持仓量变化:在永续合约市场,把持仓量和Delta一起看,以区分新开仓与平仓。买入Delta与持仓量上升同时出现,视为趋势延续;买入Delta与持仓量下降同时出现,视为短期轧空。

价格刷新新高,CVD却没有超过前一个高点的背离警告
价格刷新新高,CVD却没有超过前一个高点的背离警告

用你自己的策略结果来确认

上传 TradingView 策略的交易列表(CSV)或 MT5 报告,即可计算盈亏、回撤和交易分布。无需登录即可分析。

分析我的交易记录 查看分析示例