OPEN-SOURCE SCRIPT
已更新 Flow-Efficiency Oscillator

Flow-Efficiency Oscillator
Overview
How much order flow did it cost to move price one tick? It measures signed volume (delta) consumed per tick of travel, then percentile-ranks that cost into a 0–100 read. High = expensive / heavy (lots of delta, little movement — the signature of absorption). Low = cheap / efficient (little delta, large movement — thin, frictionless travel). A study of effort-versus-result in the tape — not a directional signal.
Why these parts are ONE tool (mashup rationale)
A CVD line shows net flow; a volume study shows size; neither expresses the exchange rate between flow and price — and that ratio is where absorption hides. This chains: lower-timeframe delta reconstructs intrabar effort → a cost ratio divides effort by tick travel → percentile ranking makes it universal (0–100) → an absorption flag fires only when cost is high and flow leaned hard one way yet price stalled → the harness tests whether price then moves against the absorbed aggressor. Effort alone is just volume; the ratio without ranking isn't comparable; the flag without calibration is folklore.
How it works
Inside each bar, lower-timeframe bars are signed by the tick rule and summed into a bar delta; their absolute volume is total aggression. Cost = |delta| / max(tick travel, floor), smoothed, then percentile-ranked over a lookback (50 = median cost). Absorption arms when cost is in the high band while net delta is strongly one-sided. The harness logs each event and checks a ≥ k×ATR move against the aggressor a fixed horizon later.
How to use
High band (above the upper guide) = absorption / heavy tape, where a strong push is being eaten and reversals have context; low band = efficient tape, where moves travel freely and continuation is favoured. The absorption dots mark high-cost, one-sided stalls. Then read the Edge row. Context, never a standalone trigger.
Originality
CVD and the tick rule are public; the original work is the cost-per-tick exchange rate, its percentile normalisation, the absorption logic, and the forward calibration of absorption→reversal. No third-party code is reused.
Concept credit
Tick-rule trade sign — Lee & Ready (1991). Flow-toxicity / cost-of-trading framing draws on Easley, López de Prado & O'Hara. The ratio, percentile read and harness are this script's own.
Honesty / limitations
The buy/sell split is a tick-rule estimate from lower-timeframe bars, not true bid/ask data — delta is approximate. This is an intraday tool: it needs a timeframe below the chart's, warms up slowly, and is heavier than a single-series oscillator; on daily+ or volume-less feeds the read degrades. Edge figures are in-sample, no costs — context, not a backtest.
Disclaimer
Research / educational only. NOT financial advice; no guarantee of profitability. Trading carries risk of loss. Test out-of-sample. The author accepts no liability.
Overview
How much order flow did it cost to move price one tick? It measures signed volume (delta) consumed per tick of travel, then percentile-ranks that cost into a 0–100 read. High = expensive / heavy (lots of delta, little movement — the signature of absorption). Low = cheap / efficient (little delta, large movement — thin, frictionless travel). A study of effort-versus-result in the tape — not a directional signal.
Why these parts are ONE tool (mashup rationale)
A CVD line shows net flow; a volume study shows size; neither expresses the exchange rate between flow and price — and that ratio is where absorption hides. This chains: lower-timeframe delta reconstructs intrabar effort → a cost ratio divides effort by tick travel → percentile ranking makes it universal (0–100) → an absorption flag fires only when cost is high and flow leaned hard one way yet price stalled → the harness tests whether price then moves against the absorbed aggressor. Effort alone is just volume; the ratio without ranking isn't comparable; the flag without calibration is folklore.
How it works
Inside each bar, lower-timeframe bars are signed by the tick rule and summed into a bar delta; their absolute volume is total aggression. Cost = |delta| / max(tick travel, floor), smoothed, then percentile-ranked over a lookback (50 = median cost). Absorption arms when cost is in the high band while net delta is strongly one-sided. The harness logs each event and checks a ≥ k×ATR move against the aggressor a fixed horizon later.
How to use
High band (above the upper guide) = absorption / heavy tape, where a strong push is being eaten and reversals have context; low band = efficient tape, where moves travel freely and continuation is favoured. The absorption dots mark high-cost, one-sided stalls. Then read the Edge row. Context, never a standalone trigger.
Originality
CVD and the tick rule are public; the original work is the cost-per-tick exchange rate, its percentile normalisation, the absorption logic, and the forward calibration of absorption→reversal. No third-party code is reused.
Concept credit
Tick-rule trade sign — Lee & Ready (1991). Flow-toxicity / cost-of-trading framing draws on Easley, López de Prado & O'Hara. The ratio, percentile read and harness are this script's own.
Honesty / limitations
The buy/sell split is a tick-rule estimate from lower-timeframe bars, not true bid/ask data — delta is approximate. This is an intraday tool: it needs a timeframe below the chart's, warms up slowly, and is heavier than a single-series oscillator; on daily+ or volume-less feeds the read degrades. Edge figures are in-sample, no costs — context, not a backtest.
Disclaimer
Research / educational only. NOT financial advice; no guarantee of profitability. Trading carries risk of loss. Test out-of-sample. The author accepts no liability.
版本注释
Flow-Efficiency OscillatorWhat it is. A measure of how much price moves per unit of signed order flow — an efficiency/impact read that highlights absorption (lots of flow, little movement) and easy trend (little flow, large movement).
What's new in this update
Price-impact slope. A rolling estimate of price change per unit of signed flow (with a fit-quality read) is added — a standard liquidity-impact measure that complements the existing cost-per-tick view.
Order-flow imbalance is exposed as a second, independent microstructure lens beside the efficiency read.
Calibration honesty layer: event-sampling, streak-dependence check and confidence floor on the edge.
How the parts work together. Cost-per-tick, the impact slope and order-flow imbalance are three angles on the same question — is flow being absorbed or is it moving price? Reading them together is more robust than any one in isolation, especially around absorption, where a single measure can mislead.
Reusable outputs. Impact slope, order-flow imbalance, the efficiency oscillator and the calibration edge/floor are published to the Data Window with generic names.
Defaults & sources. Lower-timeframe delta approximates signed flow where a true tape isn't available; windows are NIFTY-tuned.
Educational only — signed flow is an estimate from available data. Not financial advice.
开源脚本
秉承TradingView的精神,该脚本的作者将其开源,以便交易者可以查看和验证其功能。向作者致敬!您可以免费使用该脚本,但请记住,重新发布代码须遵守我们的网站规则。
免责声明
这些信息和出版物并非旨在提供,也不构成TradingView提供或认可的任何形式的财务、投资、交易或其他类型的建议或推荐。请阅读使用条款了解更多信息。
开源脚本
秉承TradingView的精神,该脚本的作者将其开源,以便交易者可以查看和验证其功能。向作者致敬!您可以免费使用该脚本,但请记住,重新发布代码须遵守我们的网站规则。
免责声明
这些信息和出版物并非旨在提供,也不构成TradingView提供或认可的任何形式的财务、投资、交易或其他类型的建议或推荐。请阅读使用条款了解更多信息。