Overview
The Metal Sentiment Index provides a quantitative measure of market sentiment for precious metals. Each metal index is calculated from exactly 7 components, with each component producing a score between 0 and 100. The final index is the simple average of these component scores.
Index Interpretation
- 0-24: Extreme Fear
- 25-49: Fear
- 50: Neutral
- 51-75: Greed
- 76-100: Extreme Greed
The 7 Components
Measures how the current price compares to its 125-day moving average.
Scoring: Percentile rank over trailing 3 years × 100. Higher percentile indicates stronger upward momentum (more greed).
Shows where the current price sits within its 52-week (252-day) high-low range.
Scoring: Metric clamped to [0, 1], then multiplied by 100. A score near 100 means the price is near its 52-week high.
Measures recent price volatility using annualized standard deviation of daily returns.
Scoring: 100 - (percentile × 100). This is inverted because higher volatility indicates fear, not greed.
Uses implied volatility when available (e.g., GVZ for gold), otherwise falls back to 60-day realized volatility.
Fallback: 60-day Realized Volatility
Scoring: Inverted percentile (same as Component C). Higher volatility = lower score = more fear.
Uses CFTC Commitment of Traders data to measure managed money net positions.
Scoring: Percentile over 5 years × 100. More net long positions indicate more greed. Updated weekly, carried forward daily.
Tracks changes in ETF holdings (GLD for gold, SLV for silver, etc.) as a proxy for investor demand.
Scoring: Percentile × 100. Positive flows (increasing holdings) indicate greed; outflows indicate fear.
Measures relative performance against a reference asset (typically gold or S&P 500).
Silver: Silver / Gold ratio momentum
Copper: Copper / Gold ratio momentum
Platinum & Palladium: Ratio vs Gold or Copper
Scoring: Percentile × 100. Outperformance indicates greed for that specific metal.
Composite Metals Index
The composite index is a weighted average of all five metal indices:
Statistical Methods
Percentile Calculation
All percentile-based scores use a 3-year rolling window (minimum). This provides enough historical context while remaining responsive to recent market changes.
Winsorization
Raw values are winsorized at the 1st and 99th percentiles to reduce the impact of extreme outliers while preserving the overall distribution.
Score Clamping
All final scores are clamped to the range [0, 100] to ensure consistency and interpretability.
Data Freshness & Error Handling
Daily Updates
Indices are recalculated daily at 6:00 PM New York time, after market close.
Stale Components
If a component cannot be calculated (e.g., missing data), it is marked as "stale" and assigned a neutral score of 50.
Degraded Indices
If 2 or more components are stale, the entire index is marked as "degraded" to alert users that the reading may be less reliable.