- subject_area: Copper futures (HG)
- target_market_code: copper
- ticker: copper
- regime_state: tightening
- beliefs_count: 2
- top_risk_flag: narrative_whipsaw_risk (medium)
- generated_at: 2026-04-19T16:00:00Z
- sentiment_word: Bullish
- 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 |
Copper futures have an upward bias over the next 6–24h, supported by a broad, fresh demand-led narrative (grid/EV/infrastructure/energy-transition) and recurring tightness/imbalance framing. |
66 |
up |
accelerating |
6h |
false |
38 |
| copper |
B-copper-002 |
Downside reversals are less supported by current evidence, but reversal risk can rise quickly if fresh policy/trade headlines cluster and shift the demand narrative within a short window. |
34 |
down |
fading |
24h |
false |
38 |
{
"workflow_6B_CIS_output": {
"snapshot_id": "cis-20260419-copper-001",
"timestamp_utc": "2026-04-19T16:00:00Z",
"primary_asset_focus": {
"name": "Copper futures (HG)",
"market_code": "copper"
},
"headline_sentiment_word": "Bullish",
"headline_conviction_score_0_100": 74,
"headline_fragility_score_0_100": 38,
"headline_authority_confirmation_score_0_100": 56,
"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": "Copper futures have an upward bias over the next 6\u201324h, supported by a broad, fresh demand-led narrative (grid/EV/infrastructure/energy-transition) and recurring tightness/imbalance framing.",
"probability_pct": 66,
"direction": "up",
"velocity": "accelerating",
"horizon": "6h",
"drivers": [
"energy_transition_demand",
"electric grid modernisation / power infrastructure buildout",
"EV/infrastructure buildout sentiment",
"supply-demand imbalance / tightness framing",
"China policy / macro-growth narrative spillover"
],
"contradicted_by": [
"single-source / thin signals implying policy drag on renewable deployment (demand-risk)",
"trade-policy headline risk (uncertain timing/implementation)"
],
"directional_confidence_score_0_100": 78,
"authority_confirmation_score_0_100": 56,
"authority_confirmation_band": "medium"
},
{
"belief_id": "B-copper-002",
"market": "copper",
"claim": "Downside reversals are less supported by current evidence, but reversal risk can rise quickly if fresh policy/trade headlines cluster and shift the demand narrative within a short window.",
"probability_pct": 34,
"direction": "down",
"velocity": "fading",
"horizon": "24h",
"drivers": [
"trade_policy uncertainty",
"regulatory/political shocks impacting energy-transition spend",
"macro-risk / risk-off spillover (not yet dominant in admitted signals)"
],
"contradicted_by": [
"broad multi-source pro-demand narrative remains dominant and recently refreshed",
"lack of admitted fresh, multi-source bearish copper-specific evidence"
],
"directional_confidence_score_0_100": 32,
"authority_confirmation_score_0_100": 44,
"authority_confirmation_band": "low"
}
],
"market_state_table": [
{
"market": "copper",
"directional_state": "bullish",
"momentum_state": "strengthening",
"reversal_risk": "medium",
"state_change": "new_bullish",
"directional_mass_score_0_100": 80,
"conviction_score_0_100": 74,
"authority_confirmation_score_0_100": 56,
"authority_confirmation_band": "medium",
"freshness_confidence": "high",
"catalyst_type": "fresh_directional",
"stale_suppression_applied": false,
"thesis_kill_switch": false,
"late_breaking_alert": false,
"fragility_score_0_100": 38,
"supporting_belief_ids": [
"B-copper-001"
],
"source_tier_counts": {
"A": 26,
"B": 7,
"C": 4,
"D": 210,
"U": 0
},
"freshness_mix": {
"fresh_evidence_dominant": true,
"fresh_0_6h": "moderate",
"fresh_6_24h": "high",
"stale_overhang_gt_72h": "present_but_secondary"
}
}
],
"risk_flags": [
{
"flag": "narrative_whipsaw_risk",
"level": "medium",
"why": "Demand narrative is broad and strengthening, but policy/trade headlines can pivot sentiment quickly despite currently thin, non-clustered counterevidence."
},
{
"flag": "stale_context_overhang",
"level": "low",
"why": "Several supporting themes span >7d; however, they are being refreshed by new mentions, so stale suppression was not applied."
},
{
"flag": "data_concentration_in_some_lanes",
"level": "low",
"why": "Some VIP/risk items are single-source; they are treated as watch-only and not used to drive main direction."
}
],
"candidate_actions": [
{
"market": "copper",
"confidence": "high",
"action": "watch_long_bias",
"trigger_condition": "Maintain net directional_score_signed >= +25 with contradiction_ratio <= 0.20 over the next 6h bucket sequence."
},
{
"market": "copper",
"confidence": "medium",
"action": "reversal_watch",
"trigger_condition": "Two or more independent fresh bearish copper-demand or macro-risk records appear within <=2h AND contradiction_ratio rises by ~0.10+ versus prior cycle."
},
{
"market": "copper",
"confidence": "medium",
"action": "volatility_watch",
"trigger_condition": "contradiction_ratio >= 0.25 OR rapid directional_score_signed swing of 25+ points within 3 buckets."
},
{
"market": "copper",
"confidence": "low",
"action": "hard_de_risk_watch",
"trigger_condition": "thesis_kill_switch becomes true due to late-breaking invalidation (official hard invalidator or 2+ independent opposing records <=2h)."
}
],
"paper_trade_signal_pack": {
"bullish_markets": [
"copper"
],
"bearish_markets": [],
"neutral_mixed_markets": [],
"high_reversal_risk_markets": []
},
"signal_timeseries": {
"resolution": "1h",
"lookback_hours": 24,
"bucket_timezone": "UTC",
"buckets": [
{
"bucket_start_utc": "2026-04-18T16:00:00Z",
"bucket_end_utc": "2026-04-18T17:00:00Z",
"directional_score_signed": 22,
"bullish_pressure_score": 61,
"bearish_pressure_score": 39,
"net_sentiment_score": 22,
"velocity_score": 0,
"acceleration_score": 0,
"contradiction_ratio": 0.12,
"fresh_evidence_count": 1,
"stale_evidence_count": 1,
"conviction_score_0_100": 55,
"fragility_score_0_100": 55,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-18T17:00:00Z",
"bucket_end_utc": "2026-04-18T18:00:00Z",
"directional_score_signed": 24,
"bullish_pressure_score": 62,
"bearish_pressure_score": 38,
"net_sentiment_score": 24,
"velocity_score": 2,
"acceleration_score": 2,
"contradiction_ratio": 0.12,
"fresh_evidence_count": 1,
"stale_evidence_count": 1,
"conviction_score_0_100": 56,
"fragility_score_0_100": 54,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-18T18:00:00Z",
"bucket_end_utc": "2026-04-18T19:00:00Z",
"directional_score_signed": 25,
"bullish_pressure_score": 63,
"bearish_pressure_score": 38,
"net_sentiment_score": 25,
"velocity_score": 1,
"acceleration_score": -1,
"contradiction_ratio": 0.11,
"fresh_evidence_count": 1,
"stale_evidence_count": 1,
"conviction_score_0_100": 57,
"fragility_score_0_100": 53,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-18T19:00:00Z",
"bucket_end_utc": "2026-04-18T20:00:00Z",
"directional_score_signed": 26,
"bullish_pressure_score": 63,
"bearish_pressure_score": 37,
"net_sentiment_score": 26,
"velocity_score": 1,
"acceleration_score": 0,
"contradiction_ratio": 0.11,
"fresh_evidence_count": 1,
"stale_evidence_count": 1,
"conviction_score_0_100": 58,
"fragility_score_0_100": 52,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-18T20:00:00Z",
"bucket_end_utc": "2026-04-18T21:00:00Z",
"directional_score_signed": 26,
"bullish_pressure_score": 64,
"bearish_pressure_score": 38,
"net_sentiment_score": 26,
"velocity_score": 0,
"acceleration_score": -1,
"contradiction_ratio": 0.11,
"fresh_evidence_count": 1,
"stale_evidence_count": 1,
"conviction_score_0_100": 58,
"fragility_score_0_100": 52,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-18T21:00:00Z",
"bucket_end_utc": "2026-04-18T22:00:00Z",
"directional_score_signed": 28,
"bullish_pressure_score": 65,
"bearish_pressure_score": 37,
"net_sentiment_score": 28,
"velocity_score": 2,
"acceleration_score": 2,
"contradiction_ratio": 0.1,
"fresh_evidence_count": 2,
"stale_evidence_count": 1,
"conviction_score_0_100": 59,
"fragility_score_0_100": 51,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-18T22:00:00Z",
"bucket_end_utc": "2026-04-18T23:00:00Z",
"directional_score_signed": 30,
"bullish_pressure_score": 66,
"bearish_pressure_score": 36,
"net_sentiment_score": 30,
"velocity_score": 2,
"acceleration_score": 0,
"contradiction_ratio": 0.1,
"fresh_evidence_count": 2,
"stale_evidence_count": 1,
"conviction_score_0_100": 60,
"fragility_score_0_100": 50,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-18T23:00:00Z",
"bucket_end_utc": "2026-04-19T00:00:00Z",
"directional_score_signed": 32,
"bullish_pressure_score": 67,
"bearish_pressure_score": 35,
"net_sentiment_score": 32,
"velocity_score": 2,
"acceleration_score": 0,
"contradiction_ratio": 0.1,
"fresh_evidence_count": 2,
"stale_evidence_count": 1,
"conviction_score_0_100": 61,
"fragility_score_0_100": 49,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T00:00:00Z",
"bucket_end_utc": "2026-04-19T01:00:00Z",
"directional_score_signed": 34,
"bullish_pressure_score": 68,
"bearish_pressure_score": 34,
"net_sentiment_score": 34,
"velocity_score": 2,
"acceleration_score": 0,
"contradiction_ratio": 0.09,
"fresh_evidence_count": 3,
"stale_evidence_count": 1,
"conviction_score_0_100": 62,
"fragility_score_0_100": 48,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T01:00:00Z",
"bucket_end_utc": "2026-04-19T02:00:00Z",
"directional_score_signed": 35,
"bullish_pressure_score": 69,
"bearish_pressure_score": 34,
"net_sentiment_score": 35,
"velocity_score": 1,
"acceleration_score": -1,
"contradiction_ratio": 0.09,
"fresh_evidence_count": 3,
"stale_evidence_count": 1,
"conviction_score_0_100": 63,
"fragility_score_0_100": 47,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T02:00:00Z",
"bucket_end_utc": "2026-04-19T03:00:00Z",
"directional_score_signed": 36,
"bullish_pressure_score": 69,
"bearish_pressure_score": 33,
"net_sentiment_score": 36,
"velocity_score": 1,
"acceleration_score": 0,
"contradiction_ratio": 0.09,
"fresh_evidence_count": 3,
"stale_evidence_count": 1,
"conviction_score_0_100": 64,
"fragility_score_0_100": 46,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T03:00:00Z",
"bucket_end_utc": "2026-04-19T04:00:00Z",
"directional_score_signed": 38,
"bullish_pressure_score": 70,
"bearish_pressure_score": 32,
"net_sentiment_score": 38,
"velocity_score": 2,
"acceleration_score": 1,
"contradiction_ratio": 0.09,
"fresh_evidence_count": 4,
"stale_evidence_count": 1,
"conviction_score_0_100": 65,
"fragility_score_0_100": 45,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T04:00:00Z",
"bucket_end_utc": "2026-04-19T05:00:00Z",
"directional_score_signed": 40,
"bullish_pressure_score": 71,
"bearish_pressure_score": 31,
"net_sentiment_score": 40,
"velocity_score": 2,
"acceleration_score": 0,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 4,
"stale_evidence_count": 1,
"conviction_score_0_100": 66,
"fragility_score_0_100": 44,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T05:00:00Z",
"bucket_end_utc": "2026-04-19T06:00:00Z",
"directional_score_signed": 42,
"bullish_pressure_score": 72,
"bearish_pressure_score": 30,
"net_sentiment_score": 42,
"velocity_score": 2,
"acceleration_score": 0,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 4,
"stale_evidence_count": 0,
"conviction_score_0_100": 67,
"fragility_score_0_100": 43,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T06:00:00Z",
"bucket_end_utc": "2026-04-19T07:00:00Z",
"directional_score_signed": 45,
"bullish_pressure_score": 73,
"bearish_pressure_score": 28,
"net_sentiment_score": 45,
"velocity_score": 3,
"acceleration_score": 1,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 4,
"stale_evidence_count": 0,
"conviction_score_0_100": 68,
"fragility_score_0_100": 42,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T07:00:00Z",
"bucket_end_utc": "2026-04-19T08:00:00Z",
"directional_score_signed": 47,
"bullish_pressure_score": 74,
"bearish_pressure_score": 27,
"net_sentiment_score": 47,
"velocity_score": 2,
"acceleration_score": -1,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 4,
"stale_evidence_count": 0,
"conviction_score_0_100": 69,
"fragility_score_0_100": 41,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T08:00:00Z",
"bucket_end_utc": "2026-04-19T09:00:00Z",
"directional_score_signed": 49,
"bullish_pressure_score": 75,
"bearish_pressure_score": 26,
"net_sentiment_score": 49,
"velocity_score": 2,
"acceleration_score": 0,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 3,
"stale_evidence_count": 0,
"conviction_score_0_100": 70,
"fragility_score_0_100": 40,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T09:00:00Z",
"bucket_end_utc": "2026-04-19T10:00:00Z",
"directional_score_signed": 51,
"bullish_pressure_score": 76,
"bearish_pressure_score": 25,
"net_sentiment_score": 51,
"velocity_score": 2,
"acceleration_score": 0,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 3,
"stale_evidence_count": 0,
"conviction_score_0_100": 71,
"fragility_score_0_100": 39,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T10:00:00Z",
"bucket_end_utc": "2026-04-19T11:00:00Z",
"directional_score_signed": 53,
"bullish_pressure_score": 77,
"bearish_pressure_score": 24,
"net_sentiment_score": 53,
"velocity_score": 2,
"acceleration_score": 0,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 3,
"stale_evidence_count": 0,
"conviction_score_0_100": 72,
"fragility_score_0_100": 39,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T11:00:00Z",
"bucket_end_utc": "2026-04-19T12:00:00Z",
"directional_score_signed": 54,
"bullish_pressure_score": 77,
"bearish_pressure_score": 23,
"net_sentiment_score": 54,
"velocity_score": 1,
"acceleration_score": -1,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 3,
"stale_evidence_count": 0,
"conviction_score_0_100": 72,
"fragility_score_0_100": 38,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T12:00:00Z",
"bucket_end_utc": "2026-04-19T13:00:00Z",
"directional_score_signed": 55,
"bullish_pressure_score": 78,
"bearish_pressure_score": 23,
"net_sentiment_score": 55,
"velocity_score": 1,
"acceleration_score": 0,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 3,
"stale_evidence_count": 0,
"conviction_score_0_100": 73,
"fragility_score_0_100": 38,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T13:00:00Z",
"bucket_end_utc": "2026-04-19T14:00:00Z",
"directional_score_signed": 56,
"bullish_pressure_score": 78,
"bearish_pressure_score": 22,
"net_sentiment_score": 56,
"velocity_score": 1,
"acceleration_score": 0,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 3,
"stale_evidence_count": 0,
"conviction_score_0_100": 73,
"fragility_score_0_100": 38,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T14:00:00Z",
"bucket_end_utc": "2026-04-19T15:00:00Z",
"directional_score_signed": 56,
"bullish_pressure_score": 79,
"bearish_pressure_score": 23,
"net_sentiment_score": 56,
"velocity_score": 0,
"acceleration_score": -1,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 4,
"stale_evidence_count": 0,
"conviction_score_0_100": 74,
"fragility_score_0_100": 38,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-04-19T15:00:00Z",
"bucket_end_utc": "2026-04-19T16:00:00Z",
"directional_score_signed": 59,
"bullish_pressure_score": 80,
"bearish_pressure_score": 21,
"net_sentiment_score": 59,
"velocity_score": 3,
"acceleration_score": 3,
"contradiction_ratio": 0.08,
"fresh_evidence_count": 4,
"stale_evidence_count": 0,
"conviction_score_0_100": 74,
"fragility_score_0_100": 38,
"dominant_state": "bullish"
}
]
},
"recent_half_hour_overlay": {
"enabled": false,
"resolution": "30m",
"lookback_hours": 6,
"buckets": []
},
"summary": {
"timeseries_peak_bullish": 59,
"timeseries_peak_bearish": 0,
"latest_inflection_direction": "up",
"latest_inflection_strength": 3,
"signal_regime": "strengthening_bullish"
}
},
"diagnostics": {
"conviction_policy_used": "mass_consensus",
"trends_seen": 11,
"trends_admitted": 6,
"cross_domain_merges": 2,
"stale_suppression_count": 0,
"reversal_flags_count": 1,
"late_breaking_alerts_count": 0,
"kill_switch_markets_count": 0,
"strong_mass_low_authority_cycles": 1,
"timeseries_bucket_count": 24,
"timeseries_overlay_bucket_count": 0,
"target_market_custom": false,
"target_market_unresolved": false,
"input_gate_degraded": false,
"notes": [
"Target market resolved explicitly to 'copper' from flight_plan.",
"No admitted explicit contradictory trend set; reversal_risk set to medium primarily due to policy/trade headline sensitivity rather than observed opposing mass.",
"Prior state not provided; state_change defaulted to 'new_bullish' for first-run state initialisation."
]
},
"completion_state": "ready_for_workflow_8B"
}