COT Commercial Hedger ExtremeIn commodities, the crowd and the smart money sit on opposite sides of the same report every week. The Commitment of Traders breaks open interest into commercials -- the producers, merchants and processors who hedge physical -- and large speculators, who are mostly trend-following money. The commercials are the ones who actually touch the barrel, the bushel, the bar. When they move to an extreme, it pays to listen.
The pattern that marks real commodity bottoms is simple to say and hard to wait for: commercial hedgers covering shorts en masse, from a multi-year net-short extreme, and curling back toward flat or net long. That is the producers deciding price has fallen far enough that they no longer need to hedge aggressively. It happened at the 2008 low, it happened into the 2018-19 lows, and I used this exact tell to call the September 2022 gold bottom near $1,640 in real time on TradingView. Gold peaked above $5,500 in January 2026, a move of more than 200% from that low.
This indicator puts that read on your chart.
The colored net line is the commercial position: red when they're at an extreme and still pressing shorts (no bottom), yellow when they start covering up off that extreme, green when they curl to flat or net long (the bottom tell). A triangle marks the first week they begin covering, a diamond marks the cross to net long. The blue line is large speculators for context -- they are usually heaviest long right as commercials are heaviest short, which is the whole point. Optional small-trader line too.
The dashboard shows commercial net, where it sits in its multi-year percentile, the spec and small-trader nets, and whether covering is underway. Alerts fire when hedgers start covering and when they flip toward net long.
Works on any futures with a CFTC code -- gold, silver, copper, oil, grains, even the index futures. Set the code in the settings to match the contract you're charting. Default is gold.
One read in isolation is a tell, not a trigger. I pair it with trend and price structure -- it tells you the tank is full of fuel, not that the match is lit. But when commercials cover their shorts, I want to know. Indicator

COT Heatmap [invincible3]COT Heatmap
COT Heatmap is a professional Commitment of Traders dashboard designed to visualize historical positioning pressure between two selected markets, currencies, commodities, indices, or crypto futures. The indicator converts weekly COT positioning data into an easy-to-read heatmap table, allowing traders to compare Non-Commercial and Commercial positioning strength, extremes, long/short participation, and A-B spread pressure directly on the chart.
The tool is built for macro, forex, commodities, futures, and intermarket analysis. It can automatically detect the current chart symbol or allow the user to manually select Pair A and Pair B from a predefined COT market list.
-----------------------------------------------------------------------------------------------
Main Features
Historical COT heatmap table
Auto symbol detection from the chart
Manual Pair A / Pair B selection
Futures Only or Futures + Options data mode
Non-Commercial, Commercial, or Both participant modes
Separate metric control for Pair A and Pair B
Historical weekly values displayed by date
Adjustable table size, position, start date, and number of periods
Heatmap coloring for fast visual interpretation
Optional A-B positioning spread columns
-----------------------------------------------------------------------------------------------
Data Source
The indicator uses weekly COT data through TradingView’s COT Library.
Available data modes:
Futures Only
Uses futures positioning data only.
Futures and Options
Uses combined futures and options positioning data.
The indicator uses Legacy COT report categories:
Non-Commercial Positions
Commercial Positions
Open Interest
All COT calculations are performed on the weekly timeframe.
-----------------------------------------------------------------------------------------------
Participant Modes
The indicator supports three participant display modes:
Non-Commercial Only
Shows speculative positioning metrics.
Commercial Only
Shows hedger/commercial positioning metrics.
Both
Shows both Non-Commercial and Commercial metrics side by side.
-----------------------------------------------------------------------------------------------
Core Positioning Formulas
For each selected market:
Open Interest
OI = Total Open Interest
Non-Commercial Net Position
NC Net = NC Long − NC Short
Commercial Net Position
Commercial Net = Commercial Long − Commercial Short
Long Change
Long Change = Current Long − Previous Week Long
Short Change
Short Change = Current Short − Previous Week Short
Net Change
Net Change = Long Change − Short Change
-----------------------------------------------------------------------------------------------
Long% and Short% Formulas
The indicator normalizes long and short positions against open interest.
Long Percentage
Long% = Long Positions / Open Interest × 100
Short Percentage
Short% = Short Positions / Open Interest × 100
These values show how much of total open interest is held on the long or short side by a specific participant group.
-----------------------------------------------------------------------------------------------
Flip% Formula
Flip% measures the net long/short bias as a percentage of open interest.
Flip%
Flip% = Long% − Short%
Interpretation:
Positive Flip% = participant group is net long
Negative Flip% = participant group is net short
Higher positive values show stronger bullish positioning
Lower negative values show stronger bearish positioning
Example:
If Non-Commercial Long% = 42%
and Non-Commercial Short% = 25%
Then:
NC Flip% = 42 − 25 = +17%
This means Non-Commercial traders are net long by 17% of open interest.
-----------------------------------------------------------------------------------------------
Difference Metrics
The indicator compares Non-Commercial and Commercial net positioning.
Non-Commercial Difference
NC Difference = NC Net − Commercial Net
This measures how strongly speculative positioning differs from commercial positioning.
Commercial Difference
Commercial Difference = Commercial Net − NC Net
This is the inverse view, useful when analyzing commercial hedger pressure.
-----------------------------------------------------------------------------------------------
Diff13 / Diff26 / Diff52 Formulas
The Diff columns are stochastic-style normalized scores of the positioning difference over different historical windows.
Stochastic Positioning Score
Stoch(X, Length) =
(X − Lowest(X, Length)) / (Highest(X, Length) − Lowest(X, Length)) × 100
If the range is zero, the value returns 50.
Where:
X = selected positioning series
Length = 13, 26, or 52 weeks
NC Diff13 *
NC Diff13 = Stoch(NC Difference, 13)
NC Diff26
NC Diff26 = Stoch(NC Difference, 26)
NC Diff52
NC Diff52 = Stoch(NC Difference, 52)
Commercial Diff13
Commercial Diff13 = Stoch(Commercial Difference, 13)
Commercial Diff26
Commercial Diff26 = Stoch(Commercial Difference, 26)
Commercial Diff52
Commercial Diff52 = Stoch(Commercial Difference, 52)
Interpretation:
Values near 100 show positioning is near the upper extreme of the selected lookback period
Values near 50 show neutral/mid-range positioning
Values near 0 show positioning is near the lower extreme of the selected lookback period
-----------------------------------------------------------------------------------------------
COT Index Formulas
The COT Index measures where current net positioning stands relative to its own historical range.
COT Index
COT Index =
(Current Net Position − Lowest Net Position over N weeks) /
(Highest Net Position over N weeks − Lowest Net Position over N weeks) × 100
If the range is zero, the value returns 50.
-----------------------------------------------------------------------------------------------
Non-Commercial COT Index
NC Index 52
NCIdx52 = Stoch(NC Net, 52)
This shows where current Non-Commercial net positioning stands within its 1-year range.
NC Index 156
NCIdx156 = Stoch(NC Net, 156)
This shows where current Non-Commercial net positioning stands within its 3-year range.
-----------------------------------------------------------------------------------------------
Commercial COT Index
Commercial Index 52
ComIdx52 = Stoch(Commercial Net, 52)
This shows where current Commercial net positioning stands within its 1-year range.
Commercial Index 156
ComIdx156 = Stoch(Commercial Net, 156)
This shows where current Commercial net positioning stands within its 3-year range.
-----------------------------------------------------------------------------------------------
A-B Spread Formulas
The indicator can also compare Pair A and Pair B positioning directly.
A-B Non-Commercial Flip%
A-B NC Flip% = Pair A NC Flip% − Pair B NC Flip%
A-B Commercial Flip%
A-B Commercial Flip% = Pair A Commercial Flip% − Pair B Commercial Flip%
Interpretation:
Positive A-B Flip% means Pair A has stronger positioning than Pair B
Negative A-B Flip% means Pair B has stronger positioning than Pair A
Useful for forex pair analysis, relative commodity analysis, and intermarket comparison
Example:
If EUR NC Flip% = +20%
and USD NC Flip% = +5%
Then:
EUR − USD NC Flip% = +15%
This suggests stronger speculative positioning in EUR relative to USD.
-----------------------------------------------------------------------------------------------
Heatmap Color Logic
The table uses color gradients to make positioning extremes easy to identify.
For score-based columns such as Diff13, Diff26, Diff52, NCIdx52, NCIdx156, ComIdx52, and ComIdx156:
High values move toward the positive color
Mid-range values move toward the neutral color
Low values move toward the negative color
Default colors:
Positive: Blue
Neutral: Pink
Negative: Red
For Long% columns:
Higher Long% is treated as stronger
Lower Long% is treated as weaker
For Short% columns:
Higher Short% is treated as weaker
Lower Short% is treated as stronger
For Flip% columns:
The heatmap uses a signed scale.
Signed Heatmap Normalization
Normalized Flip Value =
(Flip% + Flip Scale) / (2 × Flip Scale)
The value is clamped between 0 and 1.
Default Flip Scale = 35%
This means:
+35% or above = strong positive color
0% = neutral color
−35% or below = strong negative color
-----------------------------------------------------------------------------------------------
How to Read the Table
Each row represents one weekly COT snapshot.
The Date column shows the COT week.
Pair A and Pair B are displayed in separate grouped sections. Each section can include Non-Commercial metrics, Commercial metrics, or both, depending on user settings.
Important interpretation guidelines:
Diff13 / Diff26 / Diff52
Shows short-term, medium-term, and 1-year positioning extremes between Non-Commercial and Commercial groups.
NCIdx52 / NCIdx156
Shows whether speculative positioning is historically stretched or depressed.
ComIdx52 / ComIdx156
Shows whether commercial hedger positioning is historically stretched or depressed.
Long%
Shows the long-side participation as a percentage of open interest.
Short%
Shows the short-side participation as a percentage of open interest.
Flip%
Shows the net directional bias after subtracting short exposure from long exposure.
A-B Flip%
Shows relative positioning pressure between the two selected markets.
-----------------------------------------------------------------------------------------------
Example Use Cases
Forex Analysis
Use Pair A and Pair B to compare currency futures positioning.
Example:
Pair A = EUR
Pair B = USD
This allows EUR/USD positioning analysis using COT data.
Commodity Analysis
Compare metals, energy, or agricultural markets.
Example:
Pair A = Gold
Pair B = Silver
This helps identify relative speculative or commercial positioning strength.
Index Analysis
Compare equity index futures.
Example:
Pair A = NASDAQ
Pair B = S&P 500
This can help identify relative risk appetite and index positioning rotation.
Macro Sentiment Analysis
Use Non-Commercial positioning to track speculative crowding and Commercial positioning to observe hedging pressure.
-----------------------------------------------------------------------------------------------
Notes
COT data is weekly and is not designed for intraday signals. This indicator is best used as a macro positioning tool, sentiment confirmation tool, or higher-timeframe market context dashboard.
The heatmap does not generate direct buy or sell signals. Instead, it provides a structured view of positioning extremes, participant behavior, and relative strength between selected COT markets.
Extreme readings can remain extreme for long periods, so COT data should be combined with price action, trend structure, volatility, liquidity, and broader market context.
-----------------------------------------------------------------------------------------------
Summary
COT Historical Heatmap transforms weekly Commitment of Traders data into a clean, customizable, and visually intuitive positioning dashboard. By combining Net Positioning, Long%, Short%, Flip%, COT Index, Difference Scores, and A-B relative spread analysis, it helps traders understand how Non-Commercial and Commercial participants are positioned across major futures markets.
Indicator

Indicator

Indicator

Indicator

Indicator

Noldo CFTC COT Forex IndicatorHello.
I decided to publish the COT Forex Indicator, which I created for convenience, as an open source.
The period DXY is determined by the differences between the two signals on the Pivot Reversal Strategy on the weekly chart.(1W)
Thus, relative period point search is automated.
When the new signal comes, after the closing, the number of bars between the previous bar before the new signal comes both directions.
This elapsed time is our period in which we will look back on relative changes.
If there is no signal, the period remains constant, thereby allowing us to notice excessive changes.
And in this period, COT data exchange and price changes are reflected in the terminal.
The automatic time-keeping of the period and the automatic generation of the relative differences of the terminals according to the period prevents a great loss of time.
Thus, we create one of the strong columns that enable us to make decisions.
The other column is the signals we obtained as a result of technical analysis.
The last column is the economic agenda and data tracking.
That's why I made my decision to share this:
Real life should not be distracted,
should not be drowned in the sea of technical analysis.
COT data is one of the most important and valuable tools that bring us signs of real life,
It should not be forgotten !
A lot of time is lost while doing these analyzes, and I wanted this to be much more practical and tidy!
And we can see if there are factors that will back up our incoming signals.
Usage
This script works only on DXY .
You must open DXY.
It only works on 1W graphics.
Because COT data is announced on Tuesday, it will cause repaint every Tuesday.
However, since it is a terminal, this factor is not strong enough to affect your decisions.
For use, you should open the bottom panel, go a little to the right in the history section and enlarge the panel you have opened.
The terminal will take its form in the presentation and provide analysis on the big screen.
COT data are pulled via Quandl.
General kind request:
Authors who know the technical broad expression of the security function or have an idea about its creation, please reach me.
Best regards.
Indicator

CoT Absolute Percent-Buschi
English
I'm often asked to provide an alternate view on the CoT data. For example, the indicator "Commercial index" is an oscillator from 0 to 100, but oftentimes it can be helpful to look at the absolute position. So, here the absolute position of certain parts of the CoT report are given, alongside with the percentage of a given time frame to put them in place.
The inputs are:
CoT Part Number ('1' for Commercials Short, '2' for Commercials Long, '3' for Commercials Netto, '4' for Large Speculators Short, '5' for Large Speculators Long, '6' for Large Speculators Netto, '7' for Small Speculators Short, '8' for Small Speculators Long, '9' for Small Speculators Netto, '10' for Open Interest)
Review Period (in years, just used for the percentage)
Percent Line 1, 2, 3, 4 (just to provide some lines which can be altered as required)
DISCLAIMER: I'm aware of Pine Script's ability to provide options as inputs (which would be much nicer for the CoT Parts). Alas, it is only available since version 3, and I noticed that for some reason the CoT data is not correctly adjusted to last Tuesday when using higher versions than 1. If someone knows a solution, please contact me.
Deutsch
Ich werde oft gefragt, eine alternative Sicht auf die CoT-Daten zu geben. Der Indikator "Commercial Index" zum Beispiel schwankt als Oszillator zwischen 0 und 100, aber oft kann der Blick auf die absolute Positionierung hilfreich sein. Also werden hier die Absolutpositionen verschiedene CoT-Bestandteile wiedergegeben, zusammen mit einer prozentualen Einteilung über eine vorgegebene Zeitspanne, um sie einordnen zu können.
The Eingaben lauten:
CoT Part Number ('1' Commercials Short, '2' Commercials Long, '3' Commercials Netto, '4' Large Speculators Short, '5' Large Speculators Long, '6' Large Speculators Netto, '7' Snall Speculators Short, '8' Small Speculators Long, '9' Small Speculators Netto, '10' Open Interest)
Review Period (Zeitintervall in Jahren, um die Prozentlinien zeichnen zu können)
Percent Line 1, 2, 3, 4 (um die Prozentlinien zur Verfügung zu stellen, die dann beliebig geändert werden können)
DISCLAIMER: Ich weiß über die Möglichkeit Bescheid, ab Pine Script Version 3 Optionen als Eingaben benutzen zu können (was deutlich angenehmer für die CoT-Bestandteile wäre). Leider habe ich gemerkt, dass die CoT-Daten bei Versionen über 1 leider nicht korrekt auf letzten Dienstag adjustiert werden, keine Ahnung warum. Falls jemand eine Lösung kennt, bitte kontaktieren. Indicator

Indicator

Indicator

Indicator
