Snapshot
- subject_area: Copper futures
- target_market_code: copper
- ticker:
- regime_state: tightening
- beliefs_count: 3
- top_risk_flag: policy_headline_whipsaw
- generated_at: 2026-03-17T20:15:00Z
- sentiment_word: Bullish
- late_breaking_alerts_count: 0
- kill_switch_markets_count: 0
Signal Table
| market |
belief_id |
claim (trimmed) |
prob |
dir |
vel |
horizon |
kill_switch |
fragility |
| copper |
B-copper-1 |
Copper has an upward price bias as supply-side tightness/disruption narratives dominate near-term catalysts. |
62 |
up |
accelerating |
24h |
false |
52 |
| copper |
B-copper-2 |
Demand-side sentiment remains supportive via grid modernisation / renewables / electrification narratives, reinforcing dips-as-supported behaviour. |
58 |
up |
stable |
24h |
false |
52 |
| copper |
B-copper-3 |
Short-horizon copper risk is skewed to volatility rather than a clean trend continuation because trade-policy / tariff rhetoric can create fast reversals via USD-risk and growth sentiment. |
55 |
mixed |
accelerating |
6h |
false |
52 |
Data Dump (Machine Use)
{
"workflow_6B_CIS_output": {
"snapshot_id": "6B-20260317T201500Z-copper",
"timestamp_utc": "2026-03-17T20:15:00Z",
"primary_asset_focus": {
"name": "Copper futures",
"market_code": "copper"
},
"headline_sentiment_word": "Bullish",
"headline_conviction_score_0_100": 63,
"headline_fragility_score_0_100": 52,
"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-1",
"market": "copper",
"claim": "Copper has an upward price bias as supply-side tightness/disruption narratives dominate near-term catalysts.",
"probability_pct": 62,
"direction": "up",
"velocity": "accelerating",
"horizon": "24h",
"drivers": [
"mine_supply",
"inventory",
"supply_disruptions (producers)"
],
"contradicted_by": [
"No strong fresh bearish copper-specific signals admitted in this cycle"
]
},
{
"belief_id": "B-copper-2",
"market": "copper",
"claim": "Demand-side sentiment remains supportive via grid modernisation / renewables / electrification narratives, reinforcing dips-as-supported behaviour.",
"probability_pct": 58,
"direction": "up",
"velocity": "stable",
"horizon": "24h",
"drivers": [
"industrial_demand",
"china_policy (policy-led capex expectations)",
"energy_transition (demand proxy)"
],
"contradicted_by": [
"Macro/FX-driven demand-risk headlines could temporarily overwhelm thematic support"
]
},
{
"belief_id": "B-copper-3",
"market": "copper",
"claim": "Short-horizon copper risk is skewed to volatility rather than a clean trend continuation because trade-policy / tariff rhetoric can create fast reversals via USD-risk and growth sentiment.",
"probability_pct": 55,
"direction": "mixed",
"velocity": "accelerating",
"horizon": "6h",
"drivers": [
"usd_strength",
"trade_policy_headlines",
"risk_sentiment"
],
"contradicted_by": [
"If policy headline flow stays one-sided/supportive, realised volatility risk reduces"
]
}
],
"market_state_table": [
{
"market": "copper",
"directional_state": "bullish",
"momentum_state": "strengthening",
"reversal_risk": "medium",
"state_change": "new_bullish",
"conviction_score_0_100": 63,
"freshness_confidence": "medium",
"catalyst_type": "fresh_directional",
"stale_suppression_applied": false,
"thesis_kill_switch": false,
"late_breaking_alert": false,
"fragility_score_0_100": 52,
"supporting_belief_ids": [
"B-copper-1",
"B-copper-2",
"B-copper-3"
]
}
],
"risk_flags": [
{
"flag": "policy_headline_whipsaw",
"severity": "medium",
"detail": "Trade-policy related narratives are prominent enough to raise reversal/volatility risk even without a confirmed bearish copper impulse."
},
{
"flag": "single_source_echo_risk_vip_lane",
"severity": "medium",
"detail": "Multiple VIP-lane items are single-source; treated as low-weight context unless corroborated."
},
{
"flag": "stale_context_overhang",
"severity": "low",
"detail": "Some long-running themes originate earlier in the window; conviction is anchored primarily to the freshest confirmations rather than persistence alone."
}
],
"candidate_actions": [
{
"market": "copper",
"confidence": "medium",
"trigger_condition": "If fresh supply-tightness confirmations persist while contradiction remains low, maintain long-bias watch."
},
{
"market": "copper",
"confidence": "medium",
"trigger_condition": "If trade-policy / USD-strength headlines cluster within a few hours, treat as volatility-watch regardless of direction."
},
{
"market": "copper",
"confidence": "low",
"trigger_condition": "If a fresh (<=2h) high-authority opposing demand shock appears, upgrade to reversal-watch."
}
],
"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-03-16T20:00:00Z",
"bucket_end_utc": "2026-03-16T21:00:00Z",
"directional_score_signed": 18,
"bullish_pressure_score": 54,
"bearish_pressure_score": 36,
"net_sentiment_score": 18,
"velocity_score": 0,
"acceleration_score": 0,
"contradiction_ratio": 0.18,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 44,
"fragility_score_0_100": 56,
"dominant_state": "neutral_mixed"
},
{
"bucket_start_utc": "2026-03-16T21:00:00Z",
"bucket_end_utc": "2026-03-16T22:00:00Z",
"directional_score_signed": 18,
"bullish_pressure_score": 54,
"bearish_pressure_score": 36,
"net_sentiment_score": 18,
"velocity_score": 0,
"acceleration_score": 0,
"contradiction_ratio": 0.18,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 44,
"fragility_score_0_100": 56,
"dominant_state": "neutral_mixed"
},
{
"bucket_start_utc": "2026-03-16T22:00:00Z",
"bucket_end_utc": "2026-03-16T23:00:00Z",
"directional_score_signed": 17,
"bullish_pressure_score": 53,
"bearish_pressure_score": 36,
"net_sentiment_score": 17,
"velocity_score": -1,
"acceleration_score": -1,
"contradiction_ratio": 0.19,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 43,
"fragility_score_0_100": 57,
"dominant_state": "neutral_mixed"
},
{
"bucket_start_utc": "2026-03-16T23:00:00Z",
"bucket_end_utc": "2026-03-17T00:00:00Z",
"directional_score_signed": 17,
"bullish_pressure_score": 53,
"bearish_pressure_score": 36,
"net_sentiment_score": 17,
"velocity_score": 0,
"acceleration_score": 1,
"contradiction_ratio": 0.19,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 43,
"fragility_score_0_100": 57,
"dominant_state": "neutral_mixed"
},
{
"bucket_start_utc": "2026-03-17T00:00:00Z",
"bucket_end_utc": "2026-03-17T01:00:00Z",
"directional_score_signed": 18,
"bullish_pressure_score": 54,
"bearish_pressure_score": 36,
"net_sentiment_score": 18,
"velocity_score": 1,
"acceleration_score": 1,
"contradiction_ratio": 0.18,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 44,
"fragility_score_0_100": 56,
"dominant_state": "neutral_mixed"
},
{
"bucket_start_utc": "2026-03-17T01:00:00Z",
"bucket_end_utc": "2026-03-17T02:00:00Z",
"directional_score_signed": 18,
"bullish_pressure_score": 54,
"bearish_pressure_score": 36,
"net_sentiment_score": 18,
"velocity_score": 0,
"acceleration_score": -1,
"contradiction_ratio": 0.18,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 44,
"fragility_score_0_100": 56,
"dominant_state": "neutral_mixed"
},
{
"bucket_start_utc": "2026-03-17T02:00:00Z",
"bucket_end_utc": "2026-03-17T03:00:00Z",
"directional_score_signed": 19,
"bullish_pressure_score": 55,
"bearish_pressure_score": 36,
"net_sentiment_score": 19,
"velocity_score": 1,
"acceleration_score": 1,
"contradiction_ratio": 0.18,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 45,
"fragility_score_0_100": 56,
"dominant_state": "neutral_mixed"
},
{
"bucket_start_utc": "2026-03-17T03:00:00Z",
"bucket_end_utc": "2026-03-17T04:00:00Z",
"directional_score_signed": 19,
"bullish_pressure_score": 55,
"bearish_pressure_score": 36,
"net_sentiment_score": 19,
"velocity_score": 0,
"acceleration_score": -1,
"contradiction_ratio": 0.18,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 45,
"fragility_score_0_100": 56,
"dominant_state": "neutral_mixed"
},
{
"bucket_start_utc": "2026-03-17T04:00:00Z",
"bucket_end_utc": "2026-03-17T05:00:00Z",
"directional_score_signed": 19,
"bullish_pressure_score": 55,
"bearish_pressure_score": 36,
"net_sentiment_score": 19,
"velocity_score": 0,
"acceleration_score": 0,
"contradiction_ratio": 0.18,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 45,
"fragility_score_0_100": 56,
"dominant_state": "neutral_mixed"
},
{
"bucket_start_utc": "2026-03-17T05:00:00Z",
"bucket_end_utc": "2026-03-17T06:00:00Z",
"directional_score_signed": 19,
"bullish_pressure_score": 55,
"bearish_pressure_score": 36,
"net_sentiment_score": 19,
"velocity_score": 0,
"acceleration_score": 0,
"contradiction_ratio": 0.18,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 45,
"fragility_score_0_100": 56,
"dominant_state": "neutral_mixed"
},
{
"bucket_start_utc": "2026-03-17T06:00:00Z",
"bucket_end_utc": "2026-03-17T07:00:00Z",
"directional_score_signed": 20,
"bullish_pressure_score": 56,
"bearish_pressure_score": 36,
"net_sentiment_score": 20,
"velocity_score": 1,
"acceleration_score": 1,
"contradiction_ratio": 0.17,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 46,
"fragility_score_0_100": 55,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T07:00:00Z",
"bucket_end_utc": "2026-03-17T08:00:00Z",
"directional_score_signed": 20,
"bullish_pressure_score": 56,
"bearish_pressure_score": 36,
"net_sentiment_score": 20,
"velocity_score": 0,
"acceleration_score": -1,
"contradiction_ratio": 0.17,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 46,
"fragility_score_0_100": 55,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T08:00:00Z",
"bucket_end_utc": "2026-03-17T09:00:00Z",
"directional_score_signed": 21,
"bullish_pressure_score": 57,
"bearish_pressure_score": 36,
"net_sentiment_score": 21,
"velocity_score": 1,
"acceleration_score": 1,
"contradiction_ratio": 0.17,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 47,
"fragility_score_0_100": 55,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T09:00:00Z",
"bucket_end_utc": "2026-03-17T10:00:00Z",
"directional_score_signed": 22,
"bullish_pressure_score": 58,
"bearish_pressure_score": 36,
"net_sentiment_score": 22,
"velocity_score": 1,
"acceleration_score": 0,
"contradiction_ratio": 0.17,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 48,
"fragility_score_0_100": 54,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T10:00:00Z",
"bucket_end_utc": "2026-03-17T11:00:00Z",
"directional_score_signed": 23,
"bullish_pressure_score": 59,
"bearish_pressure_score": 36,
"net_sentiment_score": 23,
"velocity_score": 1,
"acceleration_score": 0,
"contradiction_ratio": 0.16,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 49,
"fragility_score_0_100": 54,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T11:00:00Z",
"bucket_end_utc": "2026-03-17T12:00:00Z",
"directional_score_signed": 24,
"bullish_pressure_score": 60,
"bearish_pressure_score": 36,
"net_sentiment_score": 24,
"velocity_score": 1,
"acceleration_score": 0,
"contradiction_ratio": 0.16,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 50,
"fragility_score_0_100": 54,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T12:00:00Z",
"bucket_end_utc": "2026-03-17T13:00:00Z",
"directional_score_signed": 32,
"bullish_pressure_score": 62,
"bearish_pressure_score": 30,
"net_sentiment_score": 32,
"velocity_score": 8,
"acceleration_score": 7,
"contradiction_ratio": 0.15,
"fresh_evidence_count": 1,
"stale_evidence_count": 2,
"conviction_score_0_100": 55,
"fragility_score_0_100": 51,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T13:00:00Z",
"bucket_end_utc": "2026-03-17T14:00:00Z",
"directional_score_signed": 33,
"bullish_pressure_score": 63,
"bearish_pressure_score": 30,
"net_sentiment_score": 33,
"velocity_score": 1,
"acceleration_score": -7,
"contradiction_ratio": 0.15,
"fresh_evidence_count": 1,
"stale_evidence_count": 2,
"conviction_score_0_100": 55,
"fragility_score_0_100": 51,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T14:00:00Z",
"bucket_end_utc": "2026-03-17T15:00:00Z",
"directional_score_signed": 34,
"bullish_pressure_score": 64,
"bearish_pressure_score": 30,
"net_sentiment_score": 34,
"velocity_score": 1,
"acceleration_score": 0,
"contradiction_ratio": 0.15,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 56,
"fragility_score_0_100": 51,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T15:00:00Z",
"bucket_end_utc": "2026-03-17T16:00:00Z",
"directional_score_signed": 35,
"bullish_pressure_score": 65,
"bearish_pressure_score": 30,
"net_sentiment_score": 35,
"velocity_score": 1,
"acceleration_score": 0,
"contradiction_ratio": 0.15,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 57,
"fragility_score_0_100": 51,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T16:00:00Z",
"bucket_end_utc": "2026-03-17T17:00:00Z",
"directional_score_signed": 38,
"bullish_pressure_score": 66,
"bearish_pressure_score": 28,
"net_sentiment_score": 38,
"velocity_score": 3,
"acceleration_score": 2,
"contradiction_ratio": 0.14,
"fresh_evidence_count": 1,
"stale_evidence_count": 2,
"conviction_score_0_100": 59,
"fragility_score_0_100": 50,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T17:00:00Z",
"bucket_end_utc": "2026-03-17T18:00:00Z",
"directional_score_signed": 39,
"bullish_pressure_score": 67,
"bearish_pressure_score": 28,
"net_sentiment_score": 39,
"velocity_score": 1,
"acceleration_score": -2,
"contradiction_ratio": 0.14,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 60,
"fragility_score_0_100": 50,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T18:00:00Z",
"bucket_end_utc": "2026-03-17T19:00:00Z",
"directional_score_signed": 39,
"bullish_pressure_score": 67,
"bearish_pressure_score": 28,
"net_sentiment_score": 39,
"velocity_score": 0,
"acceleration_score": -1,
"contradiction_ratio": 0.14,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 60,
"fragility_score_0_100": 50,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T19:00:00Z",
"bucket_end_utc": "2026-03-17T20:00:00Z",
"directional_score_signed": 40,
"bullish_pressure_score": 68,
"bearish_pressure_score": 28,
"net_sentiment_score": 40,
"velocity_score": 1,
"acceleration_score": 1,
"contradiction_ratio": 0.14,
"fresh_evidence_count": 0,
"stale_evidence_count": 2,
"conviction_score_0_100": 61,
"fragility_score_0_100": 50,
"dominant_state": "bullish"
},
{
"bucket_start_utc": "2026-03-17T20:00:00Z",
"bucket_end_utc": "2026-03-17T21:00:00Z",
"directional_score_signed": 42,
"bullish_pressure_score": 69,
"bearish_pressure_score": 27,
"net_sentiment_score": 42,
"velocity_score": 2,
"acceleration_score": 1,
"contradiction_ratio": 0.13,
"fresh_evidence_count": 1,
"stale_evidence_count": 2,
"conviction_score_0_100": 62,
"fragility_score_0_100": 49,
"dominant_state": "bullish"
}
]
},
"recent_half_hour_overlay": {
"enabled": false,
"resolution": "30m",
"lookback_hours": 6,
"buckets": []
},
"summary": {
"timeseries_peak_bullish": 42,
"timeseries_peak_bearish": 17,
"latest_inflection_direction": "up",
"latest_inflection_strength": 2,
"signal_regime": "strengthening_bullish"
}
},
"diagnostics": {
"trends_seen": 12,
"trends_admitted": 12,
"cross_domain_merges": 2,
"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 fixed to single-market=copper (explicit).",
"No prior market state provided; state_change computed versus neutral baseline (unknown_prior).",
"No fresh opposing (bearish) copper-specific impulse <=2h detected in admitted signals; kill-switch not triggered."
]
},
"completion_state": "ready_for_workflow_8B"
}