OPEN-SOURCE SCRIPT
Futures Volume Profile - CFD Charts

CFD charts only show broker tick volume, which does not represent real market
participation. This indicator pulls REAL exchange volume from the matching
futures contract and builds a volume profile directly on your CFD chart.
What makes it original: standard volume-profile tools weight by the chart's
own (tick) volume. This one maps futures contract volume into CFD price
coordinates (price = CFD, weight = futures), accumulates the profile
incrementally so month anchors work without lookback limits, and can anchor
the session to the futures trading day instead of CFD broker midnight.
How it works:
- The futures contract is auto-detected from the chart symbol (DAX/GER40 ->
FDAX, NAS100 -> NQ, US30 -> YM, UK100 -> Z, US500 -> ES), or set manually.
- Each chart bar's price range is split into zones; the futures volume of that
bar is distributed across the zones it covers (price = CFD coordinates,
weight = futures volume — so the basis offset between CFD and futures is
handled naturally).
- The profile accumulates incrementally per anchor period (session/week/month)
and resets at the period change. POC (red), VAH/VAL (blue, dashed) and the
histogram update live.
- Optional "Daily anchor = futures trading day": the session reset fires at
the futures day change instead of the CFD broker midnight, so the profile is
anchored identically whether you chart the CFD or the future itself.
- Bars without futures data (e.g. overnight hours of a 24h CFD) contribute
nothing — mixing tick volume with contract volume would distort the profile.
The source label warns you when no futures data is available.
How to use it: treat POC/VAH/VAL as the real participation levels behind your
CFD chart — acceptance above the value area supports continuation, a rejection
back inside favors rotation toward the POC. Thick zones (HVN) act as magnets
and consolidation areas, thin zones (LVN) tend to be traversed quickly, which
makes them useful stop and target references. Zone width is ATR-derived by
default or fixed in points.
participation. This indicator pulls REAL exchange volume from the matching
futures contract and builds a volume profile directly on your CFD chart.
What makes it original: standard volume-profile tools weight by the chart's
own (tick) volume. This one maps futures contract volume into CFD price
coordinates (price = CFD, weight = futures), accumulates the profile
incrementally so month anchors work without lookback limits, and can anchor
the session to the futures trading day instead of CFD broker midnight.
How it works:
- The futures contract is auto-detected from the chart symbol (DAX/GER40 ->
FDAX, NAS100 -> NQ, US30 -> YM, UK100 -> Z, US500 -> ES), or set manually.
- Each chart bar's price range is split into zones; the futures volume of that
bar is distributed across the zones it covers (price = CFD coordinates,
weight = futures volume — so the basis offset between CFD and futures is
handled naturally).
- The profile accumulates incrementally per anchor period (session/week/month)
and resets at the period change. POC (red), VAH/VAL (blue, dashed) and the
histogram update live.
- Optional "Daily anchor = futures trading day": the session reset fires at
the futures day change instead of the CFD broker midnight, so the profile is
anchored identically whether you chart the CFD or the future itself.
- Bars without futures data (e.g. overnight hours of a 24h CFD) contribute
nothing — mixing tick volume with contract volume would distort the profile.
The source label warns you when no futures data is available.
How to use it: treat POC/VAH/VAL as the real participation levels behind your
CFD chart — acceptance above the value area supports continuation, a rejection
back inside favors rotation toward the POC. Thick zones (HVN) act as magnets
and consolidation areas, thin zones (LVN) tend to be traversed quickly, which
makes them useful stop and target references. Zone width is ATR-derived by
default or fixed in points.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.