Anchored VWAP (swing high) 指标:公式、参数与读法
Anchored VWAP(波段高点)从回溯窗口内创出最高高点的那根K线开始,累计成交量加权平均价。它给出的是自该高点以来所有成交者的平均成交价。
Senzoukria · 指标 · Updated September 2026
Anchored VWAP (swing high) — VWAP 与通道, 叠加在价格图上.
Anchored VWAP (swing high) 测量的是什么
锚点是最近 N 根K线中最高高点所在的K线;若多根K线高点相同,取最近的一根,因此线从该价位最近一次回测处开始。从锚点起,指标累加典型价格乘以K线成交量,再除以累计成交量,典型价格的口径与其他 VWAP 相同。锚点之前不绘制任何内容,因为锚点是计算的起点,而不是事后回溯套用的点;累计成交量仍为零时同样不绘制。该线不会在交易时段边界重置:跨越时段正是锚定 VWAP 与时段 VWAP 的区别所在。
公式:代码中的实现
这不是别处常见的定义,而是所发布代码实际计算的内容,记录在实现旁边:
VWAP ancré à un extrême de swing — moteur commun aux deux défs. ancre = barre du plus haut (`high`) / plus bas (`low`) des N dernières barres ; égalité → DERNIÈRE occurrence (le retest le plus récent, même règle que `lastSwingLeg`) ; VWAP[i] = Σ_{j=ancre..i} tp_j·vol_j / Σ vol_j, tp = (H+L+C)/3 (`typicalPrice` — la convention VWAP du repo). Avant l'ancre → null (l'ancre est le début du calcul, pas un point de départ rétroactif). Σvolume encore nul → null (0/0 n'est pas un prix). Moins de N barres chargées → RIEN : « l'extrême des 200 dernières barres » n'est pas « l'extrême des 40 barres chargées » (règle du catalogue). PAS de reset de session : un VWAP ancré traverse les sessions par définition — c'est ce qui le distingue de `session-vwap-bands`. */ function anchoredSwingVwap( bars: readonly FootprintBar[], lookback: number, pick: "high" | "low", ): Array<number | null> { const n = Math.max(1, Math.floor(lookback)); const out: Array<number | null> = new Array(bars.length).fill(null); if (bars.length < n) return out; const start = bars.length - n; let anchor = start; let best = pick === "high" ? bars[start].high : bars[start].low; for (let i = start; i < bars.length; i++) { const v = pick === "high" ? bars[i].high : bars[i].low; if (pick === "high" ? v >= best : v <= best) { best = v; anchor = i; } } let pv = 0; let vol = 0; for (let i = anchor; i < bars.length; i++) { const w = bars[i].totalVolume; if (w > 0) { pv += typicalPrice(bars[i]) * w; vol += w; } out[i] = vol > 0 ? pv / vol : null; } return out; } /** VWAP ancré au PLUS HAUT des N dernières barres (cf. `anchoredSwingVwap` pour la formule, l'égalité d'extrêmes et les dégradations). Lecture : au-dessus de cette ligne, les acheteurs entrés depuis le sommet sont en gain moyen. Défaut N=200.
如何解读
- 价格在线上方时,高点之后入场的买方平均持仓价优于当前报价;在线下方则相反。这是关于平均成本的描述,并不说明任何人接下来会怎么做。
- 随着成交在高点下方累积,线会离开锚点向下移动;成交量越积越多,斜率逐渐变平——后来的成交量对它的影响小于早期成交量。
- 经过一段较长的下跌后,价格从下方接近该线,就是在接近自峰值以来所有买入者的平均入场价。那里是否会发生什么,要看足迹图,而不是这条线。
- 由于该线贯穿隔夜时段,它携带了任何按时段锚定的均价都没有的信息:它不受时段重置影响。
- 如果线消失了,先检查K线数量:已加载的K线少于 N 根时,指标不绘制任何内容,而不是锚定到错误的极值。
参数与默认值
回溯默认 200 根K线,可设 2 至 5000。它只决定在哪里寻找锚点:回溯短则频繁重新锚定、跟随局部高点;回溯长则更久地锁定一个重要高点。颜色仅影响外观。
| 参数 | 类型 | 默认值 | 取值范围 |
|---|---|---|---|
| Lookback | number | 200 | 2 – 5000 |
它无法显示的内容
锚点并不固定——窗口内一旦出现新高,锚点立即跳转,整条线重新计算,所以一条看似稳定的线可能在一根K线内被替换。已加载K线少于 N 根时,指标完全不输出,因为你手头 40 根K线的最高点并不是你要求的 200 根K线的最高点。计算使用K线总成交量,从不区分主动买入与主动卖出,因此它描述的是平均成本,而不是压力。它还依赖你的行情数据源提供的成交量,该数据由供应商单独收费,与本应用无关。
相关指标
- Rolling VWAP — VWAP 与通道
- Session VWAP + σ bands — VWAP 与通道
- Anchored VWAP (session open) — VWAP 与通道
- Anchored VWAP — VWAP 与通道
- Fibonacci Pivots — VWAP 与通道
- Woodie Pivots — VWAP 与通道
其他语言版本
Frequently asked questions
- 从波段高点锚定的 VWAP 显示的是什么?
- 它显示自回溯窗口内最高K线以来全部成交的成交量加权平均价。简单来说,就是峰值之后参与成交者的平均入场价。价格在它上方交易,意味着这批参与者平均而言处于比当前报价更有利的位置。
- 出现新高时这条线会怎样?
- 锚点移到新的最高K线,整条序列从那里重新计算,原来的线被替换而不是延续。高点相同时,以最近的K线为锚点。加长回溯可以减少这种情况的发生频率,但无法完全避免。
- 从高点锚定的 VWAP 会在开盘时重置吗?
- 不会。锚定 VWAP 按定义就是跨越时段边界的——这正是它与每次开盘都重新开始的时段 VWAP 的区别。唯一会让这条线重新开始的,是回溯窗口内出现新极值导致的锚点变更。