• subject_area: Copper futures
  • target_market_code: copper
  • ticker: null
  • regime_state: tightening
  • beliefs_count: 3
  • top_risk_flag: policy_headline_whipsaw_risk (medium)
  • generated_at: 2026-03-21T15:00:00Z
  • sentiment_word: Reversal-Risk
  • late_breaking_alerts_count: 0
  • kill_switch_markets_count: 0
market belief_id claim prob dir vel horizon kill_switch fragility
copper B-copper-001 Near-term narrative flow remains net supportive for copper (energy transition / grid modernisation / EV adoption themes dominating recent mentions). 64 up accelerating 24h false 57
copper B-copper-002 Supply-chain/producer-linked story volume is supportive (major miners / Chile-linked supply context) but not cleanly directional without explicit disruption confirmation. 57 mixed stable 24h false 57
copper B-copper-003 Policy/trade narrative sensitivity keeps reversal risk elevated (headline risk can flip sentiment quickly even while the underlying demand narrative is positive). 55 mixed accelerating 6h false 57
{
 "workflow_6B_CIS_output": {
 "snapshot_id": "6B-copper-20260321T150000Z",
 "timestamp_utc": "2026-03-21T15:00:00Z",
 "primary_asset_focus": {
 "name": "Copper futures",
 "market_code": "copper"
 },
 "headline_sentiment_word": "Bullish",
 "headline_conviction_score_0_100": 58,
 "headline_fragility_score_0_100": 57,
 "commodity_registry": [
 "crude_oil",
 "gold",
 "natural_gas",
 "copper",
 "silver",
 "wheat",
 "corn",
 "uranium",
 "lithium",
 "coffee"
 ],
 "target_market_code": "copper",
 "target_resolution_source": "explicit",
 "scope_mode": "single_market",
 "analyzed_markets": [
 "copper"
 ],
 "regime_state": "tightening",
 "beliefs": [
 {
 "belief_id": "B-copper-001",
 "market": "copper",
 "claim": "Near-term narrative flow remains net supportive for copper (energy transition / grid modernisation / EV adoption themes dominating recent mentions).",
 "probability_pct": 64,
 "direction": "up",
 "velocity": "accelerating",
 "horizon": "24h",
 "drivers": [
 "industrial_demand",
 "china_policy"
 ],
 "contradicted_by": [
 "B-copper-003"
 ]
 },
 {
 "belief_id": "B-copper-002",
 "market": "copper",
 "claim": "Supply-chain/producer-linked story volume is supportive (major miners / Chile-linked supply context) but not cleanly directional without explicit disruption confirmation.",
 "probability_pct": 57,
 "direction": "mixed",
 "velocity": "stable",
 "horizon": "24h",
 "drivers": [
 "mine_supply",
 "inventory"
 ],
 "contradicted_by": []
 },
 {
 "belief_id": "B-copper-003",
 "market": "copper",
 "claim": "Policy/trade narrative sensitivity keeps reversal risk elevated (headline risk can flip sentiment quickly even while the underlying demand narrative is positive).",
 "probability_pct": 55,
 "direction": "mixed",
 "velocity": "accelerating",
 "horizon": "6h",
 "drivers": [
 "usd_strength",
 "china_policy"
 ],
 "contradicted_by": []
 }
 ],
 "market_state_table": [
 {
 "market": "copper",
 "directional_state": "bullish",
 "momentum_state": "strengthening",
 "reversal_risk": "medium",
 "state_change": "new_bullish",
 "conviction_score_0_100": 58,
 "freshness_confidence": "medium",
 "catalyst_type": "fresh_directional",
 "stale_suppression_applied": false,
 "thesis_kill_switch": false,
 "late_breaking_alert": false,
 "fragility_score_0_100": 57,
 "supporting_belief_ids": [
 "B-copper-001",
 "B-copper-002",
 "B-copper-003"
 ]
 }
 ],
 "risk_flags": [
 {
 "flag": "policy_headline_whipsaw_risk",
 "severity": "medium",
 "details": "Trade/industrial-policy narratives are prominent; sentiment can reverse quickly on new official headlines."
 },
 {
 "flag": "authority_mix_noise_risk",
 "severity": "medium",
 "details": "Evidence bundles show meaningful low-authority share across multiple trends; conviction capped accordingly."
 },
 {
 "flag": "data_sparsity_intra_day_shape",
 "severity": "low",
 "details": "Timeseries buckets are derived from trend-level timestamps (not per-record event streams), so intra-hour precision is limited."
 }
 ],
 "candidate_actions": [
 {
 "market": "copper",
 "confidence": "medium",
 "trigger_condition": "If fresh supportive signals persist for the next 6h without a contradiction spike, maintain watch_long_bias."
 },
 {
 "market": "copper",
 "confidence": "medium",
 "trigger_condition": "If a high-authority opposing policy headline lands and contradiction rises materially, switch to reversal_watch."
 },
 {
 "market": "copper",
 "confidence": "medium",
 "trigger_condition": "If mixed signals persist (flat directional score with rising fragility), stay in volatility_watch."
 }
 ],
 "paper_trade_signal_pack": {
 "bullish_markets": [
 "copper"
 ],
 "bearish_markets": [],
 "neutral_mixed_markets": [],
 "high_reversal_risk_markets": [
 "copper"
 ]
 },
 "signal_timeseries": {
 "resolution": "1h",
 "lookback_hours": 24,
 "bucket_timezone": "UTC",
 "buckets": [
 {
 "bucket_start_utc": "2026-03-20T15:00:00Z",
 "bucket_end_utc": "2026-03-20T16:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-20T16:00:00Z",
 "bucket_end_utc": "2026-03-20T17:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-20T17:00:00Z",
 "bucket_end_utc": "2026-03-20T18:00:00Z",
 "directional_score_signed": 22,
 "bullish_pressure_score": 30,
 "bearish_pressure_score": 8,
 "net_sentiment_score": 22,
 "velocity_score": 22,
 "acceleration_score": 22,
 "contradiction_ratio": 0.18,
 "fresh_evidence_count": 3,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 60,
 "fragility_score_0_100": 58,
 "dominant_state": "bullish"
 },
 {
 "bucket_start_utc": "2026-03-20T18:00:00Z",
 "bucket_end_utc": "2026-03-20T19:00:00Z",
 "directional_score_signed": 18,
 "bullish_pressure_score": 24,
 "bearish_pressure_score": 6,
 "net_sentiment_score": 18,
 "velocity_score": -4,
 "acceleration_score": -26,
 "contradiction_ratio": 0.16,
 "fresh_evidence_count": 1,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 50,
 "fragility_score_0_100": 62,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-20T19:00:00Z",
 "bucket_end_utc": "2026-03-20T20:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": -18,
 "acceleration_score": -14,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-20T20:00:00Z",
 "bucket_end_utc": "2026-03-20T21:00:00Z",
 "directional_score_signed": 16,
 "bullish_pressure_score": 22,
 "bearish_pressure_score": 6,
 "net_sentiment_score": 16,
 "velocity_score": 16,
 "acceleration_score": 34,
 "contradiction_ratio": 0.15,
 "fresh_evidence_count": 1,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 48,
 "fragility_score_0_100": 63,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-20T21:00:00Z",
 "bucket_end_utc": "2026-03-20T22:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": -16,
 "acceleration_score": -32,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-20T22:00:00Z",
 "bucket_end_utc": "2026-03-20T23:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 16,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-20T23:00:00Z",
 "bucket_end_utc": "2026-03-21T00:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T00:00:00Z",
 "bucket_end_utc": "2026-03-21T01:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T01:00:00Z",
 "bucket_end_utc": "2026-03-21T02:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T02:00:00Z",
 "bucket_end_utc": "2026-03-21T03:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T03:00:00Z",
 "bucket_end_utc": "2026-03-21T04:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T04:00:00Z",
 "bucket_end_utc": "2026-03-21T05:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T05:00:00Z",
 "bucket_end_utc": "2026-03-21T06:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T06:00:00Z",
 "bucket_end_utc": "2026-03-21T07:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T07:00:00Z",
 "bucket_end_utc": "2026-03-21T08:00:00Z",
 "directional_score_signed": 24,
 "bullish_pressure_score": 32,
 "bearish_pressure_score": 8,
 "net_sentiment_score": 24,
 "velocity_score": 24,
 "acceleration_score": 24,
 "contradiction_ratio": 0.17,
 "fresh_evidence_count": 2,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 58,
 "fragility_score_0_100": 59,
 "dominant_state": "bullish"
 },
 {
 "bucket_start_utc": "2026-03-21T08:00:00Z",
 "bucket_end_utc": "2026-03-21T09:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": -24,
 "acceleration_score": -48,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T09:00:00Z",
 "bucket_end_utc": "2026-03-21T10:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 24,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T10:00:00Z",
 "bucket_end_utc": "2026-03-21T11:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T11:00:00Z",
 "bucket_end_utc": "2026-03-21T12:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T12:00:00Z",
 "bucket_end_utc": "2026-03-21T13:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T13:00:00Z",
 "bucket_end_utc": "2026-03-21T14:00:00Z",
 "directional_score_signed": 0,
 "bullish_pressure_score": 0,
 "bearish_pressure_score": 0,
 "net_sentiment_score": 0,
 "velocity_score": 0,
 "acceleration_score": 0,
 "contradiction_ratio": 0.1,
 "fresh_evidence_count": 0,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 30,
 "fragility_score_0_100": 75,
 "dominant_state": "neutral_mixed"
 },
 {
 "bucket_start_utc": "2026-03-21T14:00:00Z",
 "bucket_end_utc": "2026-03-21T15:00:00Z",
 "directional_score_signed": 28,
 "bullish_pressure_score": 36,
 "bearish_pressure_score": 8,
 "net_sentiment_score": 28,
 "velocity_score": 28,
 "acceleration_score": 28,
 "contradiction_ratio": 0.16,
 "fresh_evidence_count": 1,
 "stale_evidence_count": 0,
 "conviction_score_0_100": 52,
 "fragility_score_0_100": 60,
 "dominant_state": "bullish"
 }
 ]
 },
 "recent_half_hour_overlay": {
 "enabled": false,
 "resolution": "30m",
 "lookback_hours": 6,
 "buckets": []
 },
 "summary": {
 "timeseries_peak_bullish": 28,
 "timeseries_peak_bearish": 0,
 "latest_inflection_direction": "up",
 "latest_inflection_strength": 28,
 "signal_regime": "strengthening_bullish"
 },
 "diagnostics": {
 "trends_seen": 12,
 "trends_admitted": 12,
 "cross_domain_merges": 3,
 "stale_suppression_count": 0,
 "reversal_flags_count": 1,
 "late_breaking_alerts_count": 0,
 "kill_switch_markets_count": 0,
 "timeseries_bucket_count": 24,
 "timeseries_overlay_bucket_count": 0,
 "target_market_custom": false,
 "target_market_unresolved": false,
 "input_gate_degraded": false,
 "notes": [
 "Scope locked to single-market: copper (explicit).",
 "No explicit counter-directional trends provided; reversal risk set to medium primarily on policy sensitivity rather than observed contradiction flips.",
 "Timeseries uses trend-level newest-timestamp proxies to place evidence into hourly buckets."
 ]
 },
 "completion_state": "ready_for_workflow_8B"
 }
}