[
  {
    "candidate_id": "candidate_2026-06-30T07-45-00Z_long_liquidity_sweep_reversal",
    "timestamp": "2026-06-30T07:45:00Z",
    "decision": "rejected",
    "reason": "Price is extended after a massive bullish M30 run (3942 to 4034). No clear HTF pullback to a discount PD array or deep liquidity sweep at 07:45.",
    "htf_context": "H1/M30 massive bullish recovery from 3942 to 4034.",
    "m30_structure": "Bullish momentum, extended, no discount pullback.",
    "m15_m5_execution": "M5 shows minor consolidation around 4030, but entry here is chasing price.",
    "entry": null,
    "stop": null,
    "target": null,
    "r": null,
    "promoted_to_journal": false
  },
  {
    "candidate_id": "candidate_2026-06-30T08-30-00Z_short_liquidity_sweep_reversal",
    "timestamp": "2026-06-30T08:30:00Z",
    "decision": "needs_more_context",
    "reason": "Valid M30 liquidity sweep of 4034.86 (peaked at 4037.665) followed by bearish close. Need more detailed M1/M5 analysis for exact MSS and FVG entry.",
    "htf_context": "H1/M30 swept previous high 4034.86 and rejected.",
    "m30_structure": "Bearish rejection after sweeping local high.",
    "m15_m5_execution": "M5 shows immediate drop after 08:30. Requires M1 for precise entry validation.",
    "entry": null,
    "stop": null,
    "target": null,
    "r": null,
    "promoted_to_journal": false
  },
  {
    "candidate_id": "candidate_2026-06-30T11-15-00Z_short_liquidity_sweep_reversal",
    "timestamp": "2026-06-30T11:15:00Z",
    "decision": "rejected",
    "reason": "Premature entry. Price sweeps 4034.325 high later at 11:45 (reaching 4037.43) before the real drop. 11:15 entry would face drawdown or stop out.",
    "htf_context": "H1 consolidating near local highs around 4030-4037.",
    "m30_structure": "Choppy price action, sweeping highs before dropping.",
    "m15_m5_execution": "Entering at 11:15 is before the final liquidity sweep at 11:45.",
    "entry": null,
    "stop": null,
    "target": null,
    "r": null,
    "promoted_to_journal": false
  }
]