本章重点 · 市场与数据
市场生态与数据口径
第11章 市场生态与数据口径正文
11.1
不同市场的成交量口径
前面所有以量为核心的判据,落到屏幕上都是同一个动作:拿这一根柱子跟旁边几根比。SC 要是近期最大量,Test 的量要明显小于 Spring 下刺那一根,SOS 的突破要带量,No Supply 要缩到不能再缩。这几句话在指数期货上可以照字面执行。在美股个股上执行之前,你得先知道这根柱子是从十几个地方汇总来的,汇总的过程中抹掉了什么。在经纪商报价的现货黄金上,这几句话根本没有执行对象,因为那根柱子记录的压根不是成交手数。
把三个市场的量柱并排放在一起,它们长得一模一样:一根竖线,高度代表这段时间的“量”。生成这根竖线的路径却完全不同,其中一条路径的终点甚至不通向成交量。三条路径要分别走一遍,因为后面每一条修正办法都是从路径的差别里推出来的。
集中交易的期货合约有统一的交易所成交记录。撮合后生成价格、手数和时间戳,行情商据此汇总指定合约和时段的成交量。只要数据源、合约月份和交易时段一致,不同用户看到的交易所成交量应当一致。分析前仍要核对是否包含场外大宗申报、组合成交、夜盘以及换月数据,不能把不同口径直接比较。
美国上市股票的成交分布在交易所、另类交易系统(ATS)和其他场外执行渠道。交易所成交进入公开行情;在 FINRA 申报设施开放期间,符合规则的场外成交应当尽快、最迟在成交后 10 秒内申报,再进入合并行情。延迟、修正和特殊交易有各自的申报标记。行情软件能否完整呈现这些记录,还取决于订阅的数据层级和供应商处理方式,11.2 会继续说明。
零售现货外汇和部分现货黄金数据没有统一的中央成交量。经纪商或数据商只能提供自己覆盖范围内的成交、报价或报价更新次数。许多平台把 tick volume 画成量柱,它统计的是价格或报价更新次数,不等于整个市场的成交手数。使用前要查看数据字段说明,不能只凭柱子的名称判断口径。
这不是一个需要凭理论相信的说法,可以自己验一次,十分钟就能验完。在两家不同的经纪商上打开同一时刻的同一张 15 分钟图,价格几乎完全重合,最多差一两毛。把眼睛移到下面的量柱上,两边的高度不一样,形状也不一样,有的柱子在这家是全屏最高,在那家只排到第三。原因是两家的报价引擎刷新频率不同,聚合的流动性提供方不同,一家每秒推四次报价,一家每秒推十次。真实的成交量是一个客观发生过的数量,在哪里看都应该是同一个数。tick count 不是。
tick count 和真实成交量确实正相关,因为活跃通常意味着成交多,所以大部分时间里两者的起伏方向一致。麻烦在于,这套方法关心的从来不是大部分时间,而是极端点。SC 那一刻的特征是巨量在很短的时间里砸出来,而巨量完全可能由少数几笔大单完成,报价跳动的次数不一定创新高。反过来,一段谁都不关心的横盘里,如果做市商在频繁地小幅调整报价,tick count 可以毫无缘由地拱起一根很高的柱子。相关性在中间地带成立,在两端失效,而两端正是你要下判断的地方。
具体哪些判据因此不能直接用,可以逐条点出来。SC 的“近期最大量”,Spring 下刺是放量还是缩量,Test 的“必须低量”,SOS 突破有没有量,以及第 7 章那一整套单根形态里的 Stopping Volume、No Supply、No Demand,它们的核心全部是成交规模。tick count 衡量的是报价的忙碌程度。用它去判 No Supply 会得到一种系统性的错误:清淡时段本来报价更新就少,于是那个时段的每一根 K 线看起来都像 No Supply,而清淡本身跟供给耗尽没有任何关系。
表格 01
手机端将按各列内容分项显示
动手之前先回答三个问题,答不上来就不要使用任何以量为核心的判据:这根柱子记录的是什么,它完不完整,它能不能跟昨天那一根放在一起比。第三个问题最要紧,因为这套方法的全部判据都是相对的,而相对比较有它自己的前提(11.7)。前两个问题答错,你会得到一个错误的结论;第三个问题答错,你会得到一串看起来自洽、实际上互相不可比的结论,而这种错误很难被自己发现。
11.2
美股场外成交量与缺失信息
先把一个流传极广的说法处理掉,因为它是错的,而且错得很有诱惑力。这个说法是:暗池的成交没有计入成交量,所以真实成交量比你看到的大,图上的量柱不能全信。它听起来解释了很多事,比如“为什么这里明明该放量却没放”。它不成立。
美国上市证券的场外成交需要按 FINRA 规则申报,并通过相应渠道进入公开成交数据。日线量柱是否包含全部合资格成交,要看行情订阅和数据商的汇总口径。场外成交占比会随时期、证券和统计口径变化,本课程不使用固定比例作判断;需要具体比例时,应查询对应时期的 FINRA 或市场数据。
如果成交量口径判断错了,后面的量价结论就无法验证。先确认数据包含哪些成交、遗漏哪些字段,再决定哪些判据可以使用。
真正的失真存在,但不在数量上。它有三个来源,每一个都会改变你能从盘面上读出什么,而且三个都无法通过“把量加回去”来修补。
第一个来源是成交之前你看不见。交易所内的限价单会显示在盘口上,你能看到 49.98 这一档有多少股在等着接。暗池里的挂单不显示。如果一个大买家准备在 49.98 接走五十万股,并把单子放在暗池里,公开盘口上一股都不会多出来。你看到的是下方买单很薄,你得到的印象是承接很弱,而实际情况可能正好相反。这一层直接推翻了用盘口深度反推承接意愿的做法。在美股上,盘口薄不等于没人接,只等于没人把单子挂在你能看到的地方。
这一条也解释了为什么第 1 章强调挂单可以撤,而成交记录不能撤回(1.1)。公开挂单不能完整代表真实买卖意愿:有些挂单会被撤销,有些大额委托则会使用隐藏数量、暗池或分拆执行,以免提前暴露规模并增加冲击成本(1.2)。因此,分析时要区分公开挂单、已成交记录和未公开的交易意愿。
第二个问题是主动方向通常需要推断。成交记录可以带场所或申报设施标记,但公开数据未必直接提供买方或卖方主动发起的标签。常见算法会比较成交价与当时买卖报价;成交落在价差中间、报价时间不同步或数据有延迟时,分类误差会增加。场外成交可能获得价格改善,但并非每笔都如此,也不能据此保证方向分类准确。
因此,美股 Delta 和主动买入占比会受到方向分类误差影响,误差大小取决于行情层级、报价同步和供应商算法。不能据此断言误差只偏向某一类订单,也不能把期货与股票的数据质量作无条件排序。FINRA 会发布场外和 ATS 透明度数据,但发布时间与覆盖范围以当期规则和数据说明为准,通常更适合事后研究。
第三个问题是零售订单内部化。部分券商会把可执行订单交给批发做市商,做市商可以用自有库存或内部交叉完成交易;具体路由比例和是否收取订单流付款,要看券商披露与适用规则。客户可能获得价格改善,但不是每笔订单都能保证。订单规模、方向和信息含量也不能只凭零售身份预先确定。
内部化成交按规则申报后可以进入合并成交数据,但它没有直接消耗公开订单簿上的挂单。公开逐笔记录通常不能还原内部撮合过程,也不能单凭小数位形状确定执行渠道。分析这类成交时,应结合场所标记、交易条件代码、当时报价和数据商说明。
内部化会改变公开订单簿与合并成交数据之间的关系。公开簿只显示在该渠道展示的流动性,合并成交还可能包含其他场所和内部执行。小额成交、撤单速度或盘口深度都不能单独证明参与者身份;判断价格冲击时,需要同时看当时的公开深度、成交渠道和市场状态。
第三层反过来给了你一件可用的东西。既然公开簿变薄了,那么价格能在公开簿上连续走出几个跳动这件事,含金量比过去更高。在一个内部化率很高的市场里,价格移动本身就是主动性的证据,因为无害的那部分流量根本不参与价格移动。这一点在读突破的时候尤其有用:突破如果伴随着价格连续、干净地穿过几档,而不是跳着走,说明公开簿上确实有人在推。
把三个来源合起来,美股上的结论可以写死:盘口深度不进入结构判断,只在你要下单的那一刻用来看看流动性够不够容纳你的单子(15.5);逐笔和订单流可以看,但结论要比在期货上留更多余地;成交量的绝对值可用;成交量的相对比较完全可用。最后一条才是这套方法在美股上照样成立的原因,它的道理放在 11.7 讲。
还有一个容易被忽略的细节:碎股成交也计入成交量,而碎股报价不进入公开的最优报价。对于股价很高的标的,相当一部分成交是碎股,于是你会看到成交量在动,盘口最优报价却纹丝不动。这个现象在低价股上几乎不出现,在高价股上很常见,不要把它当成吸收(7.2)。
11.3
按成交行为分类
参与者的身份不可观察。你没有办法从图上看出某一笔成交是一家对冲基金下的、一个养老金账户下的,还是一个刚开户的散户下的。行为可以观察,因为不同的行为在盘面上留下不同的痕迹,所以分类只能按行为来分,不能按身份来分。
为了分析成交行为,本节先分成四类:主动成交、被动限价成交、双边报价,以及套利或对冲。主动成交更看重立即执行,被动限价单更看重价格;双边报价同时管理买卖两侧,但仍可能承担库存和方向风险;套利或对冲通常同时处理相关头寸,也可能存在基差、时差和执行风险。逐笔成交只能显示结果,不能只凭一种痕迹确定是哪类参与者。
四类行为都可能影响短期价格,但交易目的不同。双边报价和套利策略的主要目标通常不是押注单边方向,不过它们仍会产生库存、基差和执行暴露。成交量只记录成交规模,不能单独说明参与者的目的或最终净敞口。
所以看到一笔特别大的成交就说“有大资金在动作”,这个反应经常是错的,而且错的方式很固定。它可能是套利的一条腿,另一条腿在你看不到的市场上方向相反。它可能是对冲:一家持有大量现货的机构在期货上做空,这笔空单表达的不是他看空,是他想把风险锁住。它可能来自期权做市商的对冲,标的上的买卖只是为了把手里的 delta 抹平,跟他对方向的看法毫无关系。它还可能是被动执行:一只指数基金要按新的权重调仓,这笔交易的规模和时间完全由指数规则决定。
判断顺序因此不能变:先看这笔成交出现在什么位置上,再决定要不要理它。出现在区间下沿、出现在 Spring 的低点、出现在颈线上方的第一次回踩,这样的大单值得看。出现在区间中部、出现在午间无人问津的时段、出现在收盘竞价里,大概率是上面那几类之一。位置提供了第一道过滤,没有这道过滤,单看成交规模什么也说明不了。
算法交易占了现在市场成交的相当大一部分,但算法和算法之间的差别比算法和人之间的差别还大,至少要分成两类来看。执行算法的任务是把一个大单拆开,在一段时间里完成,尽量不惊动价格。它按历史成交量的分布来投放,市场活跃时多投,清淡时少投。痕迹是成交碎片化,同一价位上出现持续的小额成交,投放的节奏和整体成交量的节奏同步。投机算法的任务是按信号自动开平仓,它有方向意图,痕迹是在某个特定的价格水平上突然出现集中的主动成交,而这个水平通常和一个人人都能看到的技术位重合。
这个区分对判断很要紧。执行算法的成交量恰恰是这套方法最想要的东西,因为它意味着某个人正在系统性地建仓或者出货,而系统性地建仓出货就是 1.2 那三条约束的直接后果。投机算法的成交量更接近噪声,它只是对一个信号的自动反应,信号本身可能来自一条均线或者一个突破,跟筹码在谁手里没有关系。
冰山单只展示总委托的一部分,已展示数量成交后可以继续补充。某个价位连续出现相近规模的成交、而价格移动有限,可能与冰山单或其他补单行为一致,但也可能来自多个独立订单。逐笔数据只能提供候选证据,不能直接确认委托主体和剩余规模。出现在结构关键位时,还要结合成交持续时间、撤单、后续价格反应和数据商标记判断。
止损单是另一类必须认识的东西,因为它是 Spring 和 UT 的物理基础。止损单平时不在盘口上显示,它是一张条件触发的市价单,只有价格碰到触发价才会变成市价单打出去。它堆积的位置完全由结构决定:区间下沿之下、前一个明显低点之下、整数关口附近、一条画得很显眼的趋势线之下。被触发时的痕迹是价格快速扫过一个价位带,成交突然放大,而且清一色是同一个方向,向下扫时全是主动卖出,向上扫时全是主动买入,单笔金额都不大,节奏密集而短促。操盘手把价格推到止损堆积的地方,把这些单子引爆,然后在下面接走(5.3、6.3)。
做市和执行算法的普及,还改变了几件跟盘面读法直接相关的事,每一件都要求你调整一个习惯。盘口的刷新频率高到一秒内可以大幅变化好几次,你看到的深度分布在你反应过来之前已经不存在了,所以盘口必须彻底移出结构判断,验证的活交给已经成交的记录。价差被做市竞争压得很窄,一笔小额主动单只能吃掉一档的一部分,价格纹丝不动,所以要推动价格需要真实的规模或者聚集的主动性,价格移动这件事本身的信息量因此上升了。
大单被拆得很碎,直接后果是“看到一笔大单”这件事的信息量下降了。真正的大资金不会用一张单子暴露自己,他用几百张小单。所以注意力要从单笔规模转到成交笔数和成交在价位上的分布:同一个价位上出现几十笔等额小单,比出现一笔大单更能说明有人在系统性地成交。至于突破那一瞬间,跟随类算法会同时加进来,把动量放大,突破当根的振幅更大、速度更快、留给你判断的时间更短。突破当根的剧烈程度里有相当一部分来自算法的自动跟随,所以突破算不算数要看之后能不能守住,看第二天第三天回踩有没有量(7.4),不看突破那一根本身。
收盘时段还有一个专门的成分需要扣掉。指数基金和 ETF 的调仓通过收盘竞价完成,这部分成交量的规模可以很大,但它跟任何方向判断都无关,它的时间和规模由指数规则决定。所以尾盘那根异常放大的量柱,在指数成分股上要先想到调仓,再想到别的。
11.4
期货成交量的换月与时段问题
期货是这套方法最舒服的应用场景,原因在 11.1 已经说清楚:单一撮合中心,量完整,是真手数,不是任何形式的代理指标。三件事因此在期货上可以直接做:量价关系照字面读,不需要任何修正;逐笔数据完整,Delta 和主动占比的分类有可靠依据(13.1);成交在价位上的分布是真实分布,Volume Profile 画出来的 POC 和 HVN 是真的换手密集区,不是估算(12.2)。
期货还多给了一个现货和股票都没有的计数器:持仓量(open interest)。成交量记录的是这段时间换了多少手,持仓量记录的是收盘时还有多少张合约没有平掉。这两个数字是独立的,而且它们的组合能回答一个成交量单独回答不了的问题:刚才那些成交,是新的钱进场,还是老的仓位在了结。
道理在于一笔成交对持仓量的影响有四种可能。新多头对上新空头,一张新合约被创造出来,持仓量加一。新多头对上一个老多头平仓,只是仓位换了个人拿,持仓量不变。一个老空头平仓对上一个老多头平仓,一张合约消失,持仓量减一。老空头平仓对上新空头开仓,持仓量同样不变。成交量在这四种情况下都记一手,持仓量却分别是加一、不变、减一、不变。
价格、成交量和持仓量可以组合观察,但不能唯一识别谁在开仓或平仓。价格上涨、量增、持仓量增,与新增头寸进入一致;持仓量下降,则与部分旧头寸退出一致。价格下跌时也可以用同样方式描述。多空双方同时参与每笔成交,具体是新多、新空、回补还是止损,还要结合持仓明细、期限结构和后续价格确认。
在 Phase A 和 Phase D,持仓量可以作为补充信息。SC 附近持仓量下降,与部分旧头寸退出一致,但不能据此只认定老多头被清出。SOS 放量而持仓量不增,也可能来自多种开平仓组合,不能直接推断为主要由空头回补推动。持仓量的发布时间和统计频率取决于交易所与数据源,使用前要先核对。
期货的第一个坑是换月。合约有到期日,主力会在到期之前迁到下一个月份,迁移的过程通常持续几天:旧合约的成交量迅速萎缩,新合约的成交量迅速放大,两条曲线交叉。如果你的图表用的是自动拼接的连续合约,那么在拼接点上会出现一个和市场行为完全无关的量能跳变。你在那几天读到的“放量”或者“缩量”,说的是主力搬家,不是供求变化。
处理换月有三种办法,各有代价。最省事的是记住换月日期,在那前后几天不做任何量能比较,代价是丢掉几天的观察,而这几天有时候恰好落在关键位上。第二种是继续用连续合约,但把拼接方式固定下来。常见的拼接方式有三种:不做调整,直接接上;按比例调整,把历史价格乘一个系数;按差值调整,把历史价格整体平移。三种方式画出来的历史价格不一样,历史上的高点低点、区间边界、颈线位置会跟着一起移动。用哪一种都可以,但必须固定,而且要在图注里注明,否则同一个历史结构在你的图上和别人的图上位置不同,讨论会变成鸡同鸭讲。
第三种办法是同时看两张图:单一合约和连续合约。单一合约的量干净,没有拼接痕迹,但历史太短,画不出几个月前的区间。连续合约历史长,能看到完整的结构,但拼接点上的量不能信。结构在连续合约上画,量在单一合约上读,两张配合着用。这个思路和 11.5 要讲的那套办法是同一个逻辑,只不过这里两张图是同一个品种的两个版本。
期货的第二个坑是同一底层的合约被拆成了好几张。很多品种同时有标准合约、迷你合约和微型合约,它们底层相同、价格同步,但成交量分散在三张表上。取量的时候必须固定用深度最好的那一张,或者按合约乘数折算之后合并,而且一旦定下来就不要再换。今天看标准合约的量、明天看微型合约的量,得到的量能序列根本不可比,你会在没有任何市场变化的情况下看到“量突然萎缩了一半”。
第三个坑是时段。期货几乎全天交易,但不同时段的流动性差着一个数量级。亚洲时段的成交量可能只有美国时段开盘半小时的百分之几,欧洲开盘和美国开盘是两个明显的量能台阶,美国收盘前后又是一个,中间还有每天固定的休市窗口。在亚洲时段看到一根“放量”K 线,它的绝对手数可能还不到美国时段一根平常 K 线的一半。跨时段比较量的大小是这套方法在日内层面上最常见的系统性误读,处理办法是按时段建立各自的基准(11.7),或者干脆把判断升到日线级别,让一天内部的时段差异被平均掉。
还有两个时点要单独避开。结算日附近的成交量里混着大量的交割和展期操作,跟方向无关。交易所假日和半日市的成交量会异常萎缩,那一天的缩量不说明供给耗尽,只说明人不在。这两种情况下的量柱都要划掉不读,而不是勉强解释。
11.5
结构看现货,量看期货
你交易的标的本身不产生可信的成交量,而市场上又存在一张同底层、有中央撮合、量真实的合约,可以把两件事拆开来做:价格结构在你实际交易的那张图上判断,量能证据到那张合约上去取。现货黄金是这个做法最典型的场景,你交易的是经纪商报价的 XAUUSD,你看量的是 COMEX 的黄金期货。两者底层是同一样东西,价格走势高度同步,但只有后者有真手数。
为什么结构必须留在现货上,理由不在数据质量上,在执行上。你的止损价、进场价、目标价全部要在现货上挂出去,全部要按现货的报价成交。如果你在期货图上画区间下沿,读出来的下沿是 2,392,而现货这个时刻报 2,380,你把止损挂在 2,392 之下,实际上挂错了十二块钱。结构必须锚在你能真正下单的那个价格序列上,这一条没有商量余地。量则相反,量在现货上根本不存在,只能到期货上去取。
第一步是选对量源。选择的标准有三条:底层要相同,要有中央撮合,深度要是同类合约里最好的那一张。黄金取 COMEX 的主力合约,不要取迷你合约,也不要取远月合约,远月的量薄到画不出有意义的形状。外汇取 CME 对应的货币期货主力合约。这里有一个非常容易出错的地方:货币期货的报价方向不一定和你的现货报价方向一致。欧元期货和 EURUSD 同向,读起来没问题;日元期货报的是每日元多少美元,和 USDJPY 正好相反,你在 USDJPY 上看到的一根长下影,在日元期货上是一根长上影。方向搞反,Spring 会被读成 UT。取量源之前先把两张图叠一次,确认方向一致,或者把镜像关系写在图注上。
第二步是把时间对齐,这是整套做法里最麻烦、也最容易被跳过的技术环节。现货黄金在多数经纪商上按服务器时间零点切日线,换算到纽约时间大约是下午五点或六点;COMEX 的日线如果按电子盘算是下午五点,按结算价算是下午一点半。两边的“一天”因此可能错开三个多小时。错开的后果非常具体:你在现货日线上看到一根带长下影的 K 线,跑到期货日线上去找对应的量,找到的那根柱子里有一部分成交其实属于现货的前一天,而现货那根下影发生的时段,有一部分被算进了期货的下一根。
对齐有两个办法。第一个是把现货图的日切时间改成和期货一致,多数平台支持调整日线的起始时间,改完之后两张图的每一根 K 线严格对应。这个办法最干净,缺点是要平台支持,而且改完之后你的现货日线和别人的不一样,讨论时要说明。第二个办法是降一个级别做比较,不用日线对日线,改用小时线对小时线。小时线的边界在两张图上是一致的,误差被压缩到一小时之内。代价是要看的 K 线数量成倍增加,而且日线级别的事件要靠几根小时线拼起来读。
第三步是把两张图的分工写死,并且严格不越界。上面那张是现货,它承担全部结构工作:画摆动、画区间边界、划相位、标事件的位置、定止损和目标(2.1、2.4)。下面那张是期货,它只承担一件事,就是量。约定很简单:结构线只画在上面那张图上,量的判断只在下面那张图上读,两边不交叉。这条纪律看起来多余,实际上是防止你在两张图之间无意识地来回挑选证据。
第四步是逐个事件对照着看,每一个事件在期货图上要看什么,事先定下来。SC 看那根柱子是不是过去二十根里最高,最好还能看到持仓量下降(11.4)。AR 不看量,它是价格现象。ST 看量是不是明显小于 SC,通常要求在 SC 的一半以下。Spring 的下刺看那一段是放量还是缩量,两种都成立但含义不同(5.3)。Test 看量是不是小于 Spring 下刺那一根,这是 Test 成立的硬条件。SOS 看突破那一段有没有量,以及回踩的 LPS 有没有缩量。每一条判断都在期货图上做完,然后把结论写到现货图对应的位置上。
把这套流程走一遍,用一个具体的例子。假设黄金在现货上横了将近两个月,下沿反复在 2,380 一线得到支撑,触及过三次。第十八根 K 线突然跌破,最低到 2,362,收在 2,379,重新回到区间里面。这是一个 Spring 的候选形态。现货图上这根 K 线的“量”比前一天高了两成,这个数字什么也说明不了,因为它是 tick count。切到 COMEX 主力,同一时段那根 K 线成交了过去二十根里最大的手数,是二十根均量的两倍多,而第二天回到区间内部那一根缩到均量的六成。这两个数放在一起,才构成 Spring 加 Test 的量能证据。
止损怎么放,在这个例子里要格外注意。止损放在 2,362 之下加一个缓冲,缓冲要按现货的 ATR 算,不能按期货的 ATR 算(15.6)。两个市场的报价单位、点差结构、极端行情下的跳动幅度都不一样,用期货的波动率参数去设现货的止损,会得到一个偏大或者偏小的缓冲,而这个偏差在统计上会一直存在,把你的 R 值算得不对。凡是要落到下单参数上的东西,全部取自现货。
第五步是处理两张图说法不一致的情况。不一致有两种,处理方式不同。第一种是结构不一致:现货跌破了下沿,期货没有跌破,或者反过来。这通常是基差在变,处理办法是以现货为准做结构判断,因为你交易的是现货,止损和目标都锚在它上面。但要把这次不一致记下来,它本身携带信息,说明两个市场的供求关系出现了差异,而这种差异往往是 11.6 那几种失效条件的前兆。
第二种是量能和结构矛盾:现货上的形态是一个标准的 Spring,期货上那一段却几乎没有成交,量柱平平无奇。这时候结构判断保留,但把握程度往下调,仓位减半,因为两条证据里有一条不支持。绝对不要用期货的量去推翻现货的结构判断。量是验证层,结构是主判断层,这个层级关系和 13.7 讲的是同一件事,颠倒过来的话,量会为任何一个判断提供看起来充分的证据。
第六步是留记录。每次做完对照,记下三个数:当天的基差,也就是期货主力减现货的差值;期货那根 K 线的量相对它自己二十根均量的倍数;两张图有没有出现结构不一致。这三个数攒上几十天就是一条序列,基差的正常波动范围、量能的正常倍数区间都能从里面读出来,而 11.6 的那几条停用规则需要这条序列才能设定阈值。没有记录的话,你只能凭感觉判断“今天基差有点怪”,而感觉在这件事上不可靠。
替代量源必须和目标标的有可验证的经济联系与稳定关系。现货外汇可以参考对应货币期货,部分商品现货可以参考相关期货,但要检查交易时段、基差和合约变化。行业 ETF 或同板块股票只能提供行业背景,不能替代单只股票自身的成交量。加密资产跨交易所汇总时,还要统一交易对、计价币和异常成交处理。
11.6
什么时候这个办法就不能用了
把结构和量拆到两个标的上,成立的唯一前提是这两个标的反映的是同一批供求。前提成立时,期货上的放量就是黄金这个东西上的放量,你可以放心地把它写到现货图的注上。前提不成立时,你会拿着一个跟你交易的东西无关的量柱去验证一个结构,而且验证出来的结论看起来同样自洽。失效不会给你任何提示,所以停用的条件必须事先设好,而不是等到出问题再回头找原因。
第一种失效是相关性断裂。现货和期货之间隔着一个基差,基差由持有成本决定:无风险利率、仓储费用、黄金的租借利率,外汇那边则是两种货币的利差换算出来的掉期点。正常时期这些成分变化缓慢,基差是一个慢慢漂移的常数项,两边的日收益率高度同步,相关系数通常在 0.98 以上。当资金成本突变,或者交割、运输、跨场所套利被卡住的时候,基差会跳,而基差一跳,两边就不再是同一批供求了。
替代量源需要设停用条件。本课程先用滚动 20 日相关系数和基差异常作为检查项,并把 0.95 相关系数、基差变动超过 20 日标准差三倍作为示例起点。这些阈值不是通用标准,必须按市场、样本长度和误报记录调整。
第二种失效是时段错位,这一条在黄金和外汇上踩得最多。现货几乎全天报价,期货有休市窗口,而且在亚洲时段的成交量薄到接近于零。你在亚洲时段的现货图上看到一次干净的下刺加收回,跑到期货上去找量,找到的是一根几乎贴着零轴的柱子。这根柱子既不能证明放量,也不能证明缩量,它什么都不能证明,因为那个时段本来就没有人在那张合约上交易。
停用规则也要量化。本课程先把当前 K 线成交量低于同一时段过去 20 日均量的 30% 作为示例起点,实际阈值要按合约和时段验证。停用表示量能证据缺失,不等于出现缩量信号;此时可以保留结构观察,但应降低判断把握程度。
第三种失效来自量源自身被污染,几种情况在 11.4 已经点过:换月那几天、结算日附近、交易所假日和半日市、同底层合约被拆到标准和微型两张表上。这几种情况的共同特点是量柱的变化由合约的技术性安排造成,跟供求无关。处理办法一样,把那几根划掉不读,而不是勉强给它一个解释。人在有结构判断在手的时候,会非常倾向于给任何一根量柱找到支持性的解释,这一点必须靠事先定好的规则来防。
第四种失效是层级被颠倒。这不是数据问题,是使用者的问题,但它造成的损失最大。表现是拿期货的量去否定现货上已经成立的结构:结构说这是 Spring,期货的量不配合,于是判定不是 Spring。正确的处理是结构保留、仓位减半,而不是把结构推翻。量能是验证层,它能做的是调整你的把握程度和仓位大小,它不能改变结构的性质(13.7)。一旦允许量去推翻结构,你的判断顺序就变成了先看量再找结构,而那正是这套方法明确禁止的方向。
第五种失效出现在替代品种和被替代品种脱钩的时候,用 ETF 的量代替个股的量时最明显。这个替代成立的前提是这只个股当下的走势主要由板块驱动。一旦它出了自己的事,业绩公告、并购传闻、被调出指数、监管调查,它会立刻脱离板块独立走,这时候 ETF 的量反映的是板块里其他几十只股票的供求,跟它没有关系。检验办法和第一条相同:算滚动相关系数,脱钩就停用。加密市场上的对应问题是各家交易所的量口径和真实性参差不齐,要么始终用深度最好的那一家,要么始终用一个可信的聚合口径,最忌讳今天看这家明天看那家。
第六种失效比前五种更根本,因为它连结构层都一起废掉:经纪商的报价本身出了问题。极端行情里点差会扩张到平时的十倍以上,报价流里会出现只在这一家平台上存在的假刺。你在图上看到一根扎得很深的下影,兴奋地把它当成 Spring,而在另一家经纪商的同一时刻,那根影线根本不存在。检验很简单,也应该变成习惯:任何一根用来做判断的关键影线,都到第二家平台上看一眼是否存在。不存在就不认这个刺。这一条在数据发布前后的几分钟里几乎必查(15.7)。
失效之后该怎么办,比识别失效更重要,否则识别出来也只是停在原地。办法是退回到只用价格能给出的那些证据:单根 K 线的收盘位置、影线的长度和方向、摆动的高低点序列有没有改变、边界被触及了几次、有没有出现推进幅度逐次缩短(2.2、2.6)。这些判据一个字都不依赖成交量,它们本来就是价格行为那一层的东西。代价是证据变少了,所以仓位要按只有一条证据来处理:减半,或者干脆放弃这一次。
条件不满足时应停用替代量源,并按预先写好的规则调整仓位。停用后的期望值是否更高,需要结合胜率、盈亏比、成本和样本验证;本节只确定证据边界,不保证结果。
11.7
同源成交量的相对比较
前面列了一长串成交量数据的毛病,包括口径不完整和主动方分不清。内部化改变了痕迹,时段差异巨大;大单被拆碎,换月造成断层,现货上干脆没有真量。看完之后一个合理的疑问是,既然数据有这么多问题,凭什么这套方法在这些市场上还能用。
同一数据源、相近时段和相同统计口径下,相对比较可以减少一部分口径差异,但不能保证误差被完全抵消。场外成交比例、内部化率、交易时段和市场事件都可能变化。比较前要检查数据源是否一致,并标记制度或流动性发生变化的时期。
本课程的多数量能判据采用相对比较:SC 看近期高量,ST 与 SC 比较,Test 与 Spring 下刺段比较,No Supply 与附近 K 线比较。相对比较能降低部分尺度差异,但仍要保持数据源、时段和合约口径一致,不能据此认为方法不受数据环境变化影响。
但是约掉失真有一个前提,而这个前提很容易在不知不觉中被违反:两次比较必须同源同口径。同一个数据源,同一份合约,同一种拼接方式,同一个时段,同一个统计单位。换掉其中任何一个,两次比较受的就不是同一种失真了,约不掉,比出来的倍数是假的。今天用标准合约的量、明天用微型合约的量,今天看这家交易所、明天看那家,把亚洲时段的柱子和美国时段的柱子放在一起比,都属于违反这个前提。
时段是最常被违反的一个,所以日内判断的第一步永远是建立同时段基准。做法是对每一个时段,取过去二十个交易日同一时段的平均成交量。要判断上午十点这根 K 线的量是不是异常,比较对象是过去二十天上午十点那根 K 线的平均量,不是今天其他时段的量。这个基准要按品种分别建,而且要定期更新,因为整体成交水平会随时期变化。日线及以上的级别不需要这道处理,日线本身已经把一天内部的时段差异平均掉了。
有了基准后,可以用倍数设置初始门槛。本课程先以超过基准 1.5 倍作为放量、低于 0.5 倍作为缩量的示例,中间区间不作判断。门槛需要按品种、时段和样本验证,不能把这两个数当成通用标准。
位置可以参与门槛设置。本课程把关键位的 1.3 倍作为示例起点,但不能只因处在关键位就降低证据要求。区间中部的量能来源更复杂,可以提高门槛或不作方向判断。门槛降低通常会增加信号数量,也可能增加误报;具体取值应由记录或回测确定。
在碎片化的市场里,除了总量还有两个数值得一起看。一个是成交笔数,它反映有多少次独立的成交发生。在大单被普遍拆碎的环境里,笔数增加而总量没怎么变,说明参与的人在增加,这个信号单看总量会漏掉。另一个是主动买入占总成交的比例,也就是 Delta 的简化形式(13.1)。两个合起来读最有用:笔数增加同时主动买入占比上升,是真实的买盘在参与;笔数增加而主动占比不变,更可能是执行算法在按节奏投放。这两个指标在期货上可靠,在美股上要打折(11.2),在经纪商现货上不可用。
日内的另一件事是节奏本身。一个交易日内部的结构非常固定:开盘那一段消化隔夜信息,波动和成交都集中,价格常常在半小时内走完全天的大半个区间;午间参与减少,价格漂移,波动收窄;收盘前持仓调整和指数调仓推动波动回升;数据发布的瞬间波动放大、点差扩张、滑点严重。跨市场还有联动,欧洲开盘和美国开盘是全球两个主要的波动窗口,亚洲时段通常清淡。
节奏固定带来一条可以直接用的规则:时段交界处出现的结构变化,可信度要打折。午间清淡的时候,一笔不算大的卖单就可以把价格砸穿区间下沿,这个跌破在图上和一次真正的 SOW 长得一模一样,但它的成因只是那个时刻没有人在下面挂买单。处理办法是等到下一个流动性正常的时段再确认,如果那时候价格还在新的位置上,才算数;如果流动性一回来价格就被推了回去,那就是一次流动性造成的假突破,不是结构变化。
波动率的高低切换是一条辅助证据,本身不构成独立信号。长期低波动横盘之后出现第一根宽振幅 K 线,是结构可能要变的早期候选;一段剧烈的趋势之后波动骤降,说明双方都不再投入力量,价格要进入平衡。这两条的用处是在结构判断落在模糊地带的时候,提供一个额外的倾向(2.6),不能拿它们单独下结论。
使用前先确认量柱记录的内容、数据源和统计时段。无法保持同一口径时,可以更换量源,或只使用价格行为并按规则调整仓位。完成这些检查后,判据可以在各自市场内部使用;跨市场比较仍要保留数据结构差异。