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.
오픈 소스 스크립트
트레이딩뷰의 진정한 정신에 따라, 이 스크립트의 작성자는 이를 오픈소스로 공개하여 트레이더들이 기능을 검토하고 검증할 수 있도록 했습니다. 작성자에게 찬사를 보냅니다! 이 코드는 무료로 사용할 수 있지만, 코드를 재게시하는 경우 하우스 룰이 적용된다는 점을 기억하세요.
면책사항
해당 정보와 게시물은 금융, 투자, 트레이딩 또는 기타 유형의 조언이나 권장 사항으로 간주되지 않으며, 트레이딩뷰에서 제공하거나 보증하는 것이 아닙니다. 자세한 내용은 이용 약관을 참조하세요.
오픈 소스 스크립트
트레이딩뷰의 진정한 정신에 따라, 이 스크립트의 작성자는 이를 오픈소스로 공개하여 트레이더들이 기능을 검토하고 검증할 수 있도록 했습니다. 작성자에게 찬사를 보냅니다! 이 코드는 무료로 사용할 수 있지만, 코드를 재게시하는 경우 하우스 룰이 적용된다는 점을 기억하세요.
면책사항
해당 정보와 게시물은 금융, 투자, 트레이딩 또는 기타 유형의 조언이나 권장 사항으로 간주되지 않으며, 트레이딩뷰에서 제공하거나 보증하는 것이 아닙니다. 자세한 내용은 이용 약관을 참조하세요.